记一次D盾绕过

admin 2022年2月19日22:12:45评论622 views字数 953阅读3分10秒阅读模式
记一次D盾绕过


作者:xxxx1342 

原文地址:https://www.freebuf.com/articles/web/319093.html


0x01


截获遇到一个网站,测试功能点http://xxx.com/news.php=3和news?=4-1页面相同,和4-2不同,判断存在注入,尝试注入,


可是有D盾



记一次D盾绕过

尝试用&&绕过,成功,这里注意要进行URL编码,因为&会被当作参数连接使用而不是普通字符


记一次D盾绕过

尝试substr()函数,被过滤了。

记一次D盾绕过


尝试使用right(left(target,1),1)套娃式方法,发现成功了


记一次D盾绕过



后面通过尝试发现后段过滤了"",无法进行字符比对,只能比对数字,没有想到好的绕过方法,干脆采用数字来进行后续,于是语句变成了这样 ascii(right(left(database(),1),1))=123,可是又被D盾挡了


记一次D盾绕过



0x02


后面通过各种尝试,发现一个特点,到目前的尝试中cid的参数值都有1开头


我尝试去掉1,直接用payload,发现可以绕过部分之前被过滤的东西,比如substr(),可是双引号还是没绕过


我猜测substr()是属于D盾的绕过(基于字符是否同时出现的匹配,因此在删除cid参数值后1 &&后可以绕过对substr()的防护),而"是后段代码的过滤,类似于replace()函数


记一次D盾绕过

记一次D盾绕过


于是后面采用ascii()进行,编写小脚本(“元旦快乐”在网站内容正常时出现过)

记一次D盾绕过

成功,由于没有授权,没有继续进行深入研究

0x03


平时也遇到过WAF,但总是草草略过,然后开始迷茫究竟怎么缩小和大佬之间的差距。

这次遇到D盾后尝试在网上找绕过方法,看到的都是老方法,什么%a0,%00,都已失效,本来准备放弃,但心中总有不甘心,眼前的这个站100%存在注入(虽然可能是低权限),但WAF绕不过去都是白瞎,于是我开始各种尝试,开始用mysql试验,最后幸运地成功绕过了,我也明白了最好的方法就是坚持 ,不要害怕失败。

最后,谨以此文给予与我一样仍在门边徘徊的人一丝丝信心。


声明:本公众号所分享内容仅用于网安爱好者之间的技术讨论,禁止用于违法途径,所有渗透都需获取授权!否则需自行承担,本公众号及原作者不承担相应的后

学习更多渗透技能!供靶场练习技能

记一次D盾绕过

扫码领黑客视频资料及工具

记一次D盾绕过

原文始发于微信公众号(渗透师老A):记一次D盾绕过

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年2月19日22:12:45
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   记一次D盾绕过https://cn-sec.com/archives/793583.html

发表评论

匿名网友 填写信息