一、sqlmap getshell
目标靶场sqlmap-getshell
1、SqlMap注入的基本流程
2、SqlMap - 命令操作
3、SqlMap - 系统操作
二、sqlmap 小技巧
sqlmap注入时:
1、判断可注入的参数
2、判断可以用那种SQL注入技术来注入
3、识别出哪种数据库
4、根据用户选择,读取哪些数据
sqlmap支持五种不同的注入模式:
1、基于布尔的盲注,即可以根据返回页面判断条件真假的注入
2、基于事件的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断
3、基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中
4、联合查询注入,可以使用union的情况下的注入
5、堆查询注入,可以同时执行多条语句的执行时的注入
sqlmap注入监测:
如果你想观察sqlmap对一个点是进行了怎样的尝试判断以及读取数据的,可以使用-v参数 共有7个等级,默认为1。
0、只显示python错误以及严重的信息
1、同时显示基本信息和警告信息(默认)
2、同时显示debug信息
3、同时显示注入的payload
4、同时显示HTTP请求
5、同时显示HTTP响应头
6、同时显示HTTP响应页面
注:如果你想看到sqlmap发送的测试payload最好的等级就是3
三、Burp + sqlmap 批量测试
BurpSuite导出log配合SQLMAP批量扫描注入点
sqlmap可以批量扫描包含有request的日志文件,而request日志文件可以通过burpsuite来获取,因此通过sqlmap结合burpsuite工具,可以更加高效的对应用程序是否存在SQL注入漏洞进行地毯式的扫描。
1、首先是burp设置记录log,文件名可以随便填
2、把记录的log文件放sqlmap目录下
3、sqlmap读log自动测试:
python sqlmap.py -l 文件名 --batch --smart
batch:自动选yes
smart:启发式快速判断,节约时间
4.最后能注入的url会保存到out文件夹下
注:log文件中如果有sqlmap无法读取的字符(ascii码之外的字符)会读取失败
1、配置burpsuite下记录所有的request记录,并保存在指定文件夹
2、执行命令:sqlmap.py -l burp.log --batch --smart 即可对burp.log中保存的所有request进行注入扫描
Batch:会自动选择yes
Smart:启发式快速判断,节约时间
windows版的sqlmap最后能注入的URL都会保存到C:\Users\Administrator\.sqlmap文件夹下
四、sqlmap + Burp
1、代理监听SqlMap测试语句
python sqlmap.py -u “http://59.63.79:8804/single.php?id=1” --proxy=http://127.0.0.1:8080
2、SqlMap快速测试Burp数据包
-r 参数,从文件中读取数据包
3、使用Burp插件跑sqlmap注入