偶然间发现,有套程序传到服务器上,程序报错了:
Active Server Pages 错误 'ASP 0129'
在服务器上找不到脚本语言 'VBScript.encode'
/config.asp,行 5
按道理程序在本地调试过的,没有问题,于是找到了网站根目录下的config文件,看向第5行,居然是一些乱码!噢,原来是加密过的,程序作者为了版权,有一段加密过的内容。
于是找了找VBScript.encode 是个什么东西!
VBScript.Encode 这个组件经常被用来加密一些ASP的木马后门以达到免杀效果,还有一些程序的作者也会在ASP中使用加密以达到保护版权的目的,但是 VBScript.Encode的加密功能非常弱,很容易被人还原出源代码,而在asp后门免杀领域,它又被用的最多,那么我们自然很容易想到可以通过禁用VBScript.Encode这个组件来实现是加密脚本失效的目的,从而可以使很多免杀的asp木马毫无用武之地。
禁用VBScript.Encode的方法(使用IIS做为WEB服务器和虚拟主机的用户):
运行regedit打开注册表编辑器,展开至:
HKEY_CLASSES_ROOT\VBScript.Encode
按右键-权限-去除users组读取权限或者是加入虚拟主机用户组的拒绝权限均可
或者是直接删除VBScript.Encode这个注册表项也可,
修改好注册表后,重启IIS,然后打开加密后的文件便会提示:在服务器上找不到脚本语言 'vBScRipt.EncOdE'。
现在知道是什么原因了,那就选择绕一点的路吧,百度vbscript.encode 解密,到处都是阿,随便挑一个用用。