Eval版ASP木马原理解析《来自剑客山庄》

说实话, 我没看明白,不过慢慢看咯(真的是ASP哦)。呵呵

先管理员防范WebShell的技术也有所提高,以前那种直接放上一个WebShell的时代离我们而去了,现在的WebShell越来越注重隐蔽性。WebShell的隐藏技术也发展得很快,从改变代码大小写  
到C/S模式,都是牛人们智慧的结晶。说到C/S模式,是不是让你想起ASP下那个"Execute Request("#")"一句话  
后门,呵呵,今天我也跟大家介绍一个ASP一句话后门,不过不是execute,而是另一个函数——eval。  
嗯,先来说说eval后门的原理和使用方法,不会的听仔细啦。偶们知道在asp里面有个execute函数专门用  
来执行asp代码,这个就类似于Javascript里面的eval函数。所以execute就可以拿来做成一  
句话后门:execute request("x")。不过,当POST的参数x为空时execute函数会出错,所以你得加一  
句容错语句才是。其实VBScript里面也有eval函数的,不知道能不能拿来用,嗯,看看它功能先:  

Eval函数   
计算一个表达式的值并返回结果。  

[result = ] Eval(expression)   
参数   
result   
可选项。 是一个变量,用于接受返回的结果。如果未指定结果,应考虑使用 Execute 语句代替。  

expression   
必选项。可以是包含任何有效VBScript表达式的字符串。  

小提示:   
在VBScript 中,x = y可以有两种解释。第一种方式是赋值语句,将y的值赋予x。第二种解释  
是测试x 和y是否相等。如果相等,result为True;否则result为False。Eval方法总是采用第  
二种解释,而Execute语句总是采用第一种。   
注意,参数expression"可以是包含任何有效VBScript表达式的字符串"。呵呵,那不就是暗示  
我们eval能执行任意代码嘛。不过看那个说明,eval总是把赋值语句解释成判断句,岂不是不能  
拿来赋值。呵呵,不要紧,如果我们拿eval来执行execute再由execute执行任意代码呢?  
呵呵,eval后门诞生了!   
同execute相比,eval有个好处就是当参数为空不会出错,所以迄今为止最短的ASP后门就是""。数数吧,  
是不是比以前的都短啊,呵呵。   
把eval函数插入到一正常的ASP文件,你的后门就留好了(如果能够把文件最后修改时间改回去就更好了)  
。现在可以执行任意代码了,当然,代码需要你用客户端POST上去。   
客户端用网页实现很是方便。海阳顶端有个eval客户端,好像是用session保存代码然后执行,不过我试了几  
次都不行,唉,还是自己写一个吧。   
我做的这个客户端与海阳的不同,是由各个功能分别构成,每个功能使用一个htm页面,对应一段代码,放在  
网页的隐藏域。参考了冰狐浪子那个微型ASP后门客户端的网页结构,感谢之。   
先前不是说了,我们得用eval执行execute再由execute执行代码。所以隐藏域的内容类  
似于"execute("response.write(""Hello , World !""):response.write(""   
"")"——注意在引号之中的引号得双写;而且execute中的字符可以使用回车换行也可以用冒  
号代替回车换行。   
这样子还不够,我们还要"斩头去尾"。斩头呢就是把我们的后门代码执行之前的数据清空,去  
尾呢就是把后门执行代码之后的数据清空,不能让其他无用数据影响我们看回显嘛。  
这个分别用response.clear和response.end来完成。Ok,经过一番斩头去尾,我们的隐藏  
域就成了:"resposne.clear:execute("response.write(""Hello, World!""):response.write(""   
""):response.end")"。   
这里顺便说一下,去年不是有牛人提出用#i nclude一图片的形式来隐藏后门,图片最后  
是一段asp代码。当时不是说这个方法执行代码之后会显示图片而没有回显吗,其实是有回显的  
,你把图片保存后用十六进制编辑软件打开,原来回显内容在图片末尾。呵呵,想到  
了吧,用response.clear就可以清除图片显示出回显啦。   
现在的任务就是找点ASP后门的代码改动改动再结合Javascript做成html文件就是了,有  
兴趣的朋友看代码,在此就不赘述咯。另外,execute函数也可以使用这个客户端的哦。   
这种后门的优点就是体积小,隐蔽性高,杀毒软件不能查杀,而且所有提交的数据  
都是POST方式,IIS日志不会记录;缺点是每次执行代码都会有大量数据传送,而且代码通过execute执行速度会慢些。   
这种执行代码还有一个好处就是可以把POST的代码加密,绕过IDS,呵呵,这个嘛以后再说咯 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值