危险漫步博客
新鲜的“黑客思维”就是从全新的角度看待黑客技术,从更高的层面去思考;专注于黑客精神及技术交流分享的独立博客。
文章2307 浏览21469627

初窥ASP木马的解密

不知不觉暑假已经过去快一个月了,回想起来,几乎从放假起就一直宅在家里很少出去,所以正好利用了这段时间,自己到危险漫步的博客上学了一些东西,因此在这里就跟大家分享一下我对ASP木马的解密心得。说到ASP木马,大家可能都会想到Webshell,而谈及Webshell的概念大家都会知道,一个好的Webshell为了起到免杀和防止别人修改版权,一般都会对程序进行加密。经常在群里听见有人喊:“谁有加密的大马,丢个出来”类似的话语,所以今天,我就和大家说说怎么解密一个ASP的网页木马,让每位读者都可以解密不求人。

一、了解加密的基本方法

要学会解密ASP木马,首先就要了解它常用的加密方式。一般来说,asp木马的加密主要经过两个步骤:“编写自定义函数加密”和“用微软的脚本加密工具来加密”,使用“微软的脚本加密工具来加密”一般是最后一步,经过此步骤处理以后的ASP木马就不能再进行加密了。所以,我们要解密一个ASP本马的话,首先就要先对本马的微软加密部分进行解密,接下来再对自定义函数加密的部分进行解密。

二、对加密的脚本进行解密

1、微软脚本解密

当我们用记事本打开一个ASP木马后,发现是一堆乱码。这时候我们就应该想到这款木马就应该是被微软加密后的内容了,接下来再看开头的代码‘%@ LANGUAGE=.Encode%,这句代码的意思就是告诉服务器接下来的内容是用微软的脚本加密过的,因此服务器在执行下面代码的时候会自动去用“微软加密”对应的解密方式来对其解密,最后运行。那么我们要怎么来对其解密呢?这里我给大家提供几种方法:

(1)在线解密网站。但经过我的测试,网页解密容易解密不完全,所以建议大家使用下面的方法即工具来解密。

(2)使用工具来解密,这里我向大家推荐Saipusoft出品的asp脚本解密工具。

使用方法非常简单,我们直接把待解密的ASP木马文件往软件界面上拖动,那么软件就会自动对该ASP文件进行解密并提示解密完成。当然我们还可以根据实际情况,来选择目录,配合“包含子目录”选项,就可以对某个目录或者其子目录下的全部asp文件进行批量解密了好了,微软的加密已经被我们解了,现在来看自定义函数的解密。

2、对自定义函数进行解密

说到自定义函数加密,其原理就是通过一段函数来实现对代码字符的移位插入等加密操作,使其看起来无法辨认源代码,达到加密的目的。那么加密后代码要怎么去运行呢?这就需要用到解密函数,ASP文件运行的时候,会调用解密函数对加密的字符串进行解密,然后再用Execute函数来执行解密后的字符串。所以,在一个被自定义函数加密的ASP文件中,其解密函数是已经写好存在的,运行ASP文件的时候服务器直接调用写好的解密函数来进行解密,如果没有解密函数,那么服务器就无法识别被你自定义加密t密文,也就执行不了加密的内容了。因为加密后的字符串解密后还是字符串,而且需要用ExeCute来执行,所以这个函数的功能就是执行字符串的内容。因此一般情况下,我们只要在ASP文件中搜索Execute,就能找到自定义加密的内容了。通过搜索找到了如下语句:ExeCuTe(ShiSanFun(ShiSan》.刚才说到Execute是执行字符串的函数,所以括号里的内容就是解密后的字符串,这里足一个函数,由此我们就可以猜到ShiSanFunZjtl;是解密函数了,这个解密函数的参数ShiSaⅡ中的内容就是加密后的内容了!我们顺着这句代码往上看,便可见到一段代码。那么如何来进行解密呢?这里给大家提供两种方法:

(1) response.Wfitej出解密,使用这种方法,直接把Execute函数替换成r。sponse.write,利用responseX象的write力-法,可以向当前浏龉器输出信息。大家把代码中的Execute替换为response.write,之后将修改后的文件放到ASP的环境中运行,看到了在浏览器中被输出解密后的内容,大家把内容复制下来,粘贴在源文件中相应的位置即可,最后解密的函数已经没用,直接删除掉就可以。

(2)工具解密,通过上文观察解密函数,可以发现“该种加密方式”就是加密ASP木马普遍使用到的十三加密,针对这种加密方式的解密工具wJ上也出现了一些。这里我以金刀客写的一款十三解密工具为例,给大家演示工具解密。

点击清空按钮,把文本框里的内容清空,然后把加密后的密文复制到文本框中。点击“解密”按钮。

两种方法都很简单,当然也还有更多的方法,有兴趣讨论的朋友可以联系我们。

相关推荐