TA的每日心情 | 慵懒 2018-6-6 15:51 |
---|
签到天数: 2 天 [LV.1]初来乍到
|
一、入口,好像一压缩壳啊,可惜ESP就挂了^_^
005B3D5A > 9C pushfd
005B3D5B 60 pushad
005B3D5C E8 33000000 call fuke.005B3D94
005B3D61 5D pop ebp
005B3D62 B8 73060150 mov eax,50010673
005B3D67 2D 6C060150 sub eax,5001066C
005B3D6C 2BE8 sub ebp,eax
005B3D6E 8DB5 EEFEFFFF lea esi,dword ptr ss:[ebp-112]
005B3D74 8B06 mov eax,dword ptr ds:[esi]
005B3D76 83F8 00 cmp eax,0
二、F9运行,程序提示“找不到指定的加密锁”F12暂停,ALT+k
调用堆栈 ,项目 14
地址=0012FF04
堆栈=0109213D
函数例程 / 参数=? USER32.MessageBoxA
调用来自=01092137
框架=0012FF00
双击就来到事件调用处了.这里只是断尾而已
01092115 33F6 xor esi,esi
01092117 56 push esi
01092118 6A 01 push 1
0109211A FF35 2DB90901 push dword ptr ds:[109B92D]
01092120 FF15 058B0901 call dword ptr ds:[1098B05] ; kernel32.ReleaseSemaphore
01092126 FF35 2DB90901 push dword ptr ds:[109B92D]
0109212C FF15 518B0901 call dword ptr ds:[1098B51] ; kernel32.CloseHandle
01092132 6A 30 push 30
01092134 57 push edi
01092135 53 push ebx
01092136 56 push esi
01092137 FF15 298C0901 call dword ptr ds:[1098C29] ; USER32.MessageBoxA (是这里)
我们来此段首
01092017 55 push ebp ;硬件执行断点
01092018 8BEC mov ebp,esp
0109201A 83EC 48 sub esp,48
0109201D 53 push ebx
0109201E 56 push esi
0109201F 57 push edi
01092020 68 71AB0901 push 109AB71 ; ASCII "xxsim_nsyt"
01092025 6A 01 push 1
01092027 6A 01 push 1
01092029 6A 00 push 0
0109202B FF15 FD8A0901 call dword ptr ds:[1098AFD] ; kernel32.CreateSemaphoreA
三、重载程序F9运行断下后ALT+K 双击调用处代码来到
005B3EAD 05 90FB0000 add eax,0FB90
005B3EB2 FFD0 call eax
005B3EB4 58 pop eax
005B3EB5 50 push eax
005B3EB6 05 72150000 add eax,1572
005B3EBB FFD0 call eax ; 此处调用,再此下好断,重载程序,再运行断下
.
.
.
010920A3 ^\7C F6 jl short 0109209B
010920A5 8365 08 00 and dword ptr ss:[ebp+8],0
010920A9 68 29B80901 push 109B829
010920AE FF75 08 push dword ptr ss:[ebp+8]
010920B1 E8 EF020000 call 010923A5
010920B6 85C0 test eax,eax
010920B8 75 4F jnz short 01092109 ;此跳转不让其实现(一跳就没了)
.
.
.
010920FD E8 E3010000 call 010922E5
01092102 85C0 test eax,eax
01092104 74 3E je short 01092144 ;此跳转让其实现(不跳玩完)
01092106 8B7D F8 mov edi,dword ptr ss:[ebp-8]
01092109 FF45 08 inc dword ptr ss:[ebp+8]
0109210C 817D 08 FF000000 cmp dword ptr ss:[ebp+8],0FF
01092113 ^ 7C 94 jl short 010920A9
01092115 33F6 xor esi,esi
.
.
.
005B3ECD 05 A7160000 add eax,16A7
005B3ED2 57 push edi
005B3ED3 FFD0 call eax ; F7进
.
.
.
01092239 395F 30 cmp dword ptr ds:[edi+30],ebx
0109223C 74 19 je short 01092257 ;此跳转让其实现
0109223E 8D45 F4 lea eax,dword ptr ss:[ebp-C]
01092241 83C7 40 add edi,40
01092244 50 push eax
01092245 53 push ebx
01092246 57 push edi
01092247 68 801F0901 push 1091F80
0109224C 53 push ebx
.
.
.
机器开始卡起来了,可能是我机器差些吧。。。。
005B3F0A /74 1C je short fuke.005B3F28
005B3F0C |0306 add eax,dword ptr ds:[esi]
005B3F0E |56 push esi
005B3F0F |51 push ecx
005B3F10 |50 push eax
005B3F11 |53 push ebx
005B3F12 |57 push edi
005B3F13 |53 push ebx
005B3F14 |51 push ecx
005B3F15 |57 push edi
005B3F16 |57 push edi
005B3F17 |68 00000000 push 0
005B3F1C |FFD0 call eax
005B3F1E |5F pop edi
005B3F1F |5B pop ebx
005B3F20 |58 pop eax
005B3F21 |59 pop ecx
005B3F22 |5E pop esi
005B3F23 |83C6 04 add esi,4
005B3F26 ^|EB DF jmp short fuke.005B3F07 因我下了断的原因,此处我回跳了一次,je跳转实现
005B3F28 \61 popad
005B3F29 8BDF mov ebx,edi
005B3F2B 833F 00 cmp dword ptr ds:[edi],0
.
.
.
慢慢走吧。。。一路向下,回跳不让实现
.
.
.
005B40AB 83C3 0C add ebx,0C
005B40AE ^ E2 E1 loopd short fuke.005B4091
005B40B0 61 popad
005B40B1 9D popfd
005B40B2 - E9 05EEE4FF jmp fuke.00402EBC ;到站了
.
.
.
00402EB4 - FF25 D0114000 jmp dword ptr ds:[4011D0] ; MSVBVM60.ThunRTMain
00402EBA 0000 add byte ptr ds:[eax],al
00402EBC 68 A0F64200 push fuke.0042F6A0 ;终点站到了
00402EC1 E8 EEFFFFFF call fuke.00402EB4 ; jmp 到
00402EC6 0000 add byte ptr ds:[eax],al
00402EC8 0000 add byte ptr ds:[eax],al
00402ECA 0000 add byte ptr ds:[eax],al
00402ECC 3000 xor byte ptr ds:[eax],al
00402ECE 0000 add byte ptr ds:[eax],al
00402ED0 48 dec eax
00402ED1 0000 add byte ptr ds:[eax],al
DUMP&REC....Game over
[ 本帖最后由 glts 于 2007-7-8 02:23 编辑 ] |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有账号?加入我们
x
|