盗号木马初步分析,有不懂的,求大神解释下
本帖最后由 Ssking 于 2015-5-12 20:12 编辑0048BF9E 55 push ebp
0048BF9F 8BEC mov ebp,esp
0048BFA1 B9 05000000 mov ecx,0x5
0048BFA6 6A 00 push 0x0
0048BFA8 6A 00 push 0x0
0048BFAA 49 dec ecx
0048BFAB^ 75 F9 jnz Xtaskman3.0048BFA6
0048BFAD 51 push ecx
0048BFAE 53 push ebx
0048BFAF 56 push esi
0048BFB0 57 push edi
0048BFB1 B8 6EBB4800 mov eax,taskman3.0048BB6E
0048BFB6 E8 2FABF7FF call taskman3.00406AEA
0048BFBB 33C0 xor eax,eax
0048BFBD 55 push ebp
0048BFBE 68 08C34800 push taskman3.0048C308
0048BFC3 64:FF30 push dword ptr fs:
0048BFC6 64:8920 mov dword ptr fs:,esp
这个就是这个木马的OEP,典型的,但是脱壳以后IAT修复对我来说不会~
所以直接在OEP往下走分析不脱壳了
直接飞到OEP(0048BF9E)开始单步分析
每一段都会单独分析
单步走,会入一个CALL然后进入系统领空,然后返回程序
---------------------------------------------------------------------------------------------
0048BFCE 8D55 E8 lea edx,dword ptr ss:
0048BFD1 33C0 xor eax,eax
0048BFD3 E8 666BF7FF call taskman3.00402B3E
0048BFD8 8B45 E8 mov eax,dword ptr ss:
0048BFDB 8D55 EC lea edx,dword ptr ss:
0048BFDE E8 FBD7F7FF call taskman3.004097DE
0048BFE3 8B55 EC mov edx,dword ptr ss:
0048BFE6 B8 E81F4900 mov eax,taskman3.00491FE8
0048BFEB E8 A289F7FF call taskman3.00404992
0048BFF0 C605 F01F4900 0>mov byte ptr ds:,0x0
0048BFF7 A1 E81F4900 mov eax,dword ptr ds:
0048BFFC E8 FD8DF7FF call taskman3.00404DFE
0048C001 50 push eax
0048C002 68 1AC34800 push taskman3.0048C31A ; ASCII "IEXPlore.exe"
0048C007 E8 16B1F7FF call taskman3.00407122 ; jmp 到 kernel32.lstrcmpiA
0048C00C 85C0 test eax,eax
---------------------------------------------------------------------------------------------
开始分析上面的代码
0048BFD8 8B45 E8 mov eax,dword ptr ss:
堆栈 ss:=00BB2694, (ASCII "C:\Documents and Settings\Administrator\桌面\52破解\taskman32.exe")
eax=0012FFA8
这应该是开始获取当前位置
0048BFE3 8B55 EC mov edx,dword ptr ss:
堆栈 ss:=00BB26EC, (ASCII "taskman32.exe")
edx=00000000
创建进程,进程名为taskman32.exe
0048C001 50 push eax
eax=00BB26EC, (ASCII "taskman32.exe")
开始创建
0048C002 这个地方创建一个进程名字:IEXPlore.exe也就是说病毒进程就是这个,手杀的时候注意
-----------------------------------------------------------------------------------------------
0048C00E 0F94C0 sete al
0048C011 84C0 test al,al
0048C013 74 11 je Xtaskman3.0048C026
0048C015 C605 E41F4900 0>mov byte ptr ds:,0x0
0048C01C E8 1DFBFFFF call taskman3.0048BB3E
0048C021 E9 C7020000 jmp taskman3.0048C2ED
0048C026 A1 28F44800 mov eax,dword ptr ds:
0048C02B 8B00 mov eax,dword ptr ds:
0048C02D E8 CC8DF7FF call taskman3.00404DFE
0048C032 50 push eax
0048C033 8D55 E4 lea edx,dword ptr ss:
0048C036 33C0 xor eax,eax
0048C038 E8 016BF7FF call taskman3.00402B3E
0048C03D 8B45 E4 mov eax,dword ptr ss:
0048C040 E8 B98DF7FF call taskman3.00404DFE
0048C045 50 push eax
0048C046 E8 D7B0F7FF call taskman3.00407122 ; jmp 到 kernel32.lstrcmpiA
0048C04B 85C0 test eax,eax
0048C04D 0F84 47020000 je taskman3.0048C29A
0048C053 68 2CC34800 push taskman3.0048C32C ; ASCII "J0929aMUTEX"
0048C058 6A FF push -0x1
0048C05A 6A 00 push 0x0
----------------------------------------------------------------------------------------------
0048C02B 8B00 mov eax,dword ptr ds:
ds:=00BB2648, (ASCII "C:\WINDOWS\system32\taskman32.exe")
eax=00491EFC (taskman3.00491EFC)
在系统目录开始创建文件
0048C032 50 push eax
eax=00BB2648, (ASCII "C:\WINDOWS\system32\taskman32.exe")
运行之
0048C036 33C0 xor eax,eax
清空EAX寄存器,我感觉开始下一步的猥琐行径!
0048C03D 8B45 E4 mov eax,dword ptr ss:
堆栈 ss:=00BB2708, (ASCII "C:\Documents and Settings\Administrator\桌面\25、抓“马”记\taskman32.exe")
eax=0012FFA4
0048C04B 85C0 test eax,eax
此处感觉是验证文件名
0048C32C=taskman3.0048C32C (ASCII "J0929aMUTEX")
这个是什么鬼?随机码?
在往下走,我是看不到什么东西了
------------------------------------------------------------------------------------------------
0048C0AB 33C0 xor eax,eax
0048C0AD 55 push ebp
0048C0AE 68 98C14800 push taskman3.0048C198
0048C0B3 64:FF30 push dword ptr fs:
0048C0B6 64:8920 mov dword ptr fs:,esp
0048C0B9 8D55 D8 lea edx,dword ptr ss:
0048C0BC 33C0 xor eax,eax
0048C0BE E8 7B6AF7FF call taskman3.00402B3E
0048C0C3 8B45 D8 mov eax,dword ptr ss:
0048C0C6 8D55 DC lea edx,dword ptr ss:
0048C0C9 E8 48D7F7FF call taskman3.00409816
0048C0CE 8B45 DC mov eax,dword ptr ss:
0048C0D1 BA 42C34800 mov edx,taskman3.0048C342 ; ASCII ".NEW"
0048C0D6 E8 E3CBF7FF call taskman3.00408CBE
0048C0DB 85C0 test eax,eax
0048C0DD 75 13 jnz Xtaskman3.0048C0F2
0048C0DF C605 F01F4900 0>mov byte ptr ds:,0x1
0048C0E6 B8 B80B0000 mov eax,0xBB8
0048C0EB E8 1296FFFF call taskman3.00485702
0048C0F0 EB 0C jmp Xtaskman3.0048C0FE
0048C0F2 C605 F01F4900 0>mov byte ptr ds:,0x0
------------------------------------------------------------------------------------------------
0048C0B9 8D55 D8 lea edx,dword ptr ss:
堆栈地址=0012FF98
edx=00BB3D9C, (ASCII "C:\WINDOWS\system32\")
获取了系统根目录
0048C0BC 33C0 xor eax,eax
EAX清零,注意,上面是把信息存到EDX,下一步应该是开始操作EAX了
0048C342=taskman3.0048C342 (ASCII ".NEW")
edx=00000000
这两段我不明白
往下走就看不到了,直接关掉程序,开始运行系统目录下的那个程序,自此开始控制电脑
应该是把自身复制到系统目录然后关闭自身运行系统目录下的程序迷惑人,也让一些小白难操作(比如说我,我就没兴趣跟下去了)
样本不发了,你懂的,很简单的一个灰鸽子,我只是分析下初步行动~
对了0048C342=taskman3.0048C342 (ASCII ".NEW")
edx=00000000这段命令求解!
那个地方其实应该就是木马正常的操作,运行后,木马把自己复制到一个隐藏的固定位置并启动,然后把运行的当前文件给删除,防止被发现。
Hmily大神的解释,大家如果线下测试这个地方不懂可以 回看这句话!
链接:http://pan.baidu.com/s/1eQH8jxo 密码:2kjl--样本地址
最终你还是发了样本链接哈~ 2314902431 发表于 2015-4-27 09:53
最终你还是发了样本链接哈~
那又怎样? 沙发沙发、。。。 小白表示看不懂,改天有空请教一下 那个地方其实应该就是木马正常的操作,运行后,木马把自己复制到一个隐藏的固定位置并启动,然后把运行的当前文件给删除,防止被发现。 链接都失效了,NEW不清楚 Hmily 发表于 2015-5-12 18:25
那个地方其实应该就是木马正常的操作,运行后,木马把自己复制到一个隐藏的固定位置并启动,然后把运行的当 ...
哦哦哦,谢谢H大解释,我这还没搞明白。新手,我编辑一下把你的话加进去哈 蚯蚓翔龙 发表于 2015-5-12 18:41
链接都失效了,NEW不清楚
抱歉哈,应该是百度给关掉了,木马,,应该是和谐了,抱歉就直接看看这段代码把。 Ssking 发表于 2015-5-12 20:13
抱歉哈,应该是百度给关掉了,木马,,应该是和谐了,抱歉就直接看看这段代码把。
加密压缩一直是经常做的手法,加密了压缩包还能和谐我真佩服百度,代码看不懂了,只能猜的
页:
[1]