还未安装SQLMap的,可以看这里:https://blog.csdn.net/weixin_45254208/article/details/104697014
1.sqlmap连接数据库
- 服务型数据库MySQL,Oracle
python sqlmap.py -d "mysql://用户名:密码@地址:端口/数据库名" -f --banner --dbs --users
-f 演示广泛的DBMS版本指纹
--dbs 枚举DBMS数据库
--users 枚举DBMS用户
-b,--banner 检索DBMS的banner信息
更多sqlmap命令请看https://www.cnblogs.com/insane-Mr-Li/p/11272188.html
- 文件型数据库SQLite
略……
2.sqlmap指定目标url
使用命令-u,--url
python sqlmap.py -u "http://127.0.0.1/sqli-labs-master/Less-1/?id=1" --banner
3.sqlmap读取不同文件类型进行SQL注入
- 从多行文本格式文件读取多个目标,对多个目标进行探测,参数是-m
首先在桌面创建一个target.txt文件,文件包含多个url,我在这里只写两个
然后就可以探测了
python sqlmap.py -m "文件路径" --banner
回车默认选择Y
第一个url探测完成后,按回车继续探测第二个url
- 将一个HTTP请求保存在文件中,使用参数-r
首先进入http://127.0.0.1/sqli-labs-master/Less-1/,F12之后进入Network,然后刷新一下,点击Less-1/
下翻找到Requeat Headers,然后点击view source
将下面的请求信息复制下来,还是保存在target.txt中(文本文件仅供测试,文件名随意)
将参数换成-r就行
python sqlmap.py -r "文件路径" --banner
结果出错,报错信息:does not contain a usable HTTP request(没有包含可用的HTTP请求),经过检查,发现是我的目标url没有参数,没跟数据库进行交互sqlmap就探测不了。
于是添加参数,重复之前的操作,将view source的内容保存到target.txt中
再次输入命令就探测成功了
- 从配置文件sqlmap.conf中读取目标探测,参数是-c
看过我安装教程的就知道我的sqlmap文件是放在python2下面的(废话),听说现在sqlmap不依赖python2了,有python3也是OK的,不过我没去探究
执行下面的命令,直接开始探测会报错
python sqlmap.py -c sqlmap.conf
需要打开文件,修改参数并保存之后才可以
修改之后试试看
ojbk