手把手教你编写SQLMap的Tamper脚本过狗

哎... 2 02 2 年的时候啊,我在测试环境里弄那个狗安全狗WAF... 它防护挺强的,但对注释混淆这招没用。

就是加注释啊,像 /%/ 这种,MySQL 内联注释 /xxxxxxx/,那个 ! 后面跟着版本号的... 我记得啊,小于 5 05 5 3 的时候,! 后面啥都干,大于等于 5 05 5 3 就不行了。

当时我试了 and1 =1 ,被拦了,去掉空格绕过了... 但安全狗又学聪明了,咋表示空格呢?就用 /%/ 这种注释混淆... > //%/ 这种。

or 也是一样... 再后来发现,union select 这种,直接替换空格不行,我就又试又试,发现还是能绕过的... 我就选了个 //!%!// 这种垃圾字符。

获取当前数据库,正常语句是啥来着... () -> //!%!// 这种... 获取数据库中的表,正常语句是 select from information_schema... 我试了中间加 /%/ 替换空格,不管用...
后来我就想,是不是检测到 select+from+/!+information_schema 这种组合了?我就加换行试试,还是不行... 换行前加 /%/ 这种注释,//、--+ 都试了,只有 --+ 好用...
我就选 /%/,绕过了... 获取表字段,正常语句是啥来着... 我就绕过了... 成功。

然后我就写了个 Tamper 脚本... 下载 SQLMap,解压后找 [tamper] 文件夹,里面好多 Tamper 脚本... Tamper 脚本就像个加工车间,把 Payload 加工一下再发过去。

我就写了个 bypass 部分的 Tamper 脚本,实现自动化 SQL 注入... 测试时发现 sqlmap 默认语句里的 AS 关键字也被拦了,我就用相同方法替换了...
哎,就这些...

sqlmaptamper

嘿,聊聊我那点sqlmap的Tamper功能经验。
这玩意儿啊,说起来有点意思。
以前在测试的时候,碰到过WAF或者那些安全机制把注入的关键词给过滤了,这时候就挺头疼的。
后来发现了sqlmap的Tamper功能,简直是个救星。

Tamper功能就像是一个工具箱,里面有很多小工具,专门用来对付那些过滤。
比如说,你用space2 comment.py脚本,就能把空格变成注释符号,这样WAF就抓不住空格了。
再比如randomcase.py,它可以把关键词的大小写随机化,这样一来,WAF对大小写敏感的过滤就失效了。

我记得有一次,我在一个网站测试SQL注入,WAF把空格给过滤了,我就在命令里加了个--tamperspace2 comment,然后一试,嘿,居然绕过去了。
那时候还挺高兴的,感觉又学会了一招。

但是,这东西用起来得小心。
首先,你得先确定WAF具体过滤了哪些关键词,这样才能选对脚本。
有时候,可能得试好几个脚本,才能找到有效的绕过方法。
而且,不同的WAF过滤规则可能都不一样,所以这玩意儿得根据实际情况来定。

另外,虽然Tamper功能可以提高攻击成功率,但也可能增加风险。
比如,被WAF检测到,可能就会触发更严格的防御措施。
所以,用这东西的时候,得权衡利弊。

总的来说,sqlmap的Tamper功能确实挺有用,但是得合理使用。
记得,这玩意儿不是用来随意测试的,要遵守法律法规和道德规范,确保已经获得了相关授权和许可。
别把好事变成了坏事,对吧?

濡備綍浣跨敤SQLMap缁曡繃WAF

上周。
我那个朋友。
他试了SQLMap。
2 02 3 年3 月1 5 号。
他用的环境是Windows 1 0安装了Python 3 .9
他先用tamper工具。
具体是space2 morehash.py。
这个tamper。
他测试了WAF。
WAF是云flare的。
他发现这个tamper效果还行。

他输入命令是这样的。
./sqlmap.py -u http://test.com/index.php?id=1 -v3 -T mssql -R --tamper=space2 morehash.py
然后他看报错信息。
WAF过滤了%。
他换了个tamper。
是percentage.py。

他试了。
试了三次。
都不行。
他觉得可能是WAF太强了。
算了。
你看着办。

黑客军团SQL注入失败原因分析_黑客军团SQL注入问题排查与解决方案

SQL注入防不住,先看参数转换规则。
项目:某电商系统,时间:2 02 1 年。
用户输入转换成整数,‘or1 =1 –’直接成0,注入失效。

前端过滤严,后端编码转义。
案例:某社交平台,2 02 0年。
前端限制字符,后端默认转义,SQL注入失败。

误判类型难发现,WAF/IDS先拦截。
实例:某在线教育平台,2 01 9 年。
攻击者误判,WAF拦截,返回4 03 ,注入失败。

排查先看环境,分析注入点和错误。
项目:某金融网站,2 02 2 年。
确认MySQL,分析POST参数,解读错误信息。

绕过WAF要小心,观察响应头和错误页。
案例:某新闻网站,2 02 1 年。
查看HTTP头,发现Cloudflare,调整payload。

盲注效率低,时间延迟要考虑。
实例:某政府系统,2 02 0年。
使用SQLMap自动化,优化payload,提高效率。

防御原则记心间,参数化、最小权限、日志监控。
项目:某政府网站,2 01 8 年。
实施参数化查询,限制权限,部署WAF,防御有效。