手脫ASPack v2 12變形殼2

2022-09-15 09:30:15 字數 3026 閱讀 1272

1.peid載入

aspack v2.12
2.載入od,跟之前帖子的入口特徵相同,都是乙個pushad,但是請不要懷疑這是同乙個殼,絕對不是,pushad下一行esp定律下硬體斷點,然後shift+f9執行一次

0057e001 >  60              pushad                            ; //

程式入口點

0057e002 e8 03000000 call memcolla.0057e00a ; //

esp定律

0057e007 -e9 eb045d45 jmp 45b4e4f7

0057e00c

55push ebp

0057e00d

c3 retn

0057e00e e8

01000000 call memcolla.0057e014

3.esp落腳點,刪除硬體斷點繼續f8,注意,普通的aspack殼在注釋的地方會跳向oep,但是這個沒有

0057e3b0   /75

08 jnz short memcolla.0057e3ba ; //

程式落腳點

0057e3b2 |b8 01000000 mov eax,0x1

0057e3b7 |c2 0c00 retn 0xc

0057e3ba \

6800104000 push memcolla.00401000

0057e3bf c3 retn ;

//普通殼會在這裡跳向oep

0057e3c0 8b85 26040000 mov eax,dword ptr ss:[ebp+0x426

]0057e3c6 8d8d 3b040000 lea ecx,dword ptr ss:[ebp+0x43b]

4.步驟3的retn跳向的位置,到這裡繼續f8

00401000    87c0            xchg eax,eax                      ; //

跳轉的位置

00401002

fc cld

00401003 80ec 00 sub ah,0x0

00401006 83f1 00 xor ecx,0x0

00401009

90 nop

5.這是乙個近call,f7跟進,然後繼續f8就可以到達oep了,需要注意的是中間有幾個向上跳轉,記得在下一行f4

0057d40d    e8 12000000     call memcolla.0057d424            ; //

f70057d412 80ca 00 or dl,0x0

0057d415

50push eax

0057d416 9c pushfd

0057d417

58pop eax

0057d418 f6c4

01 test ah,0x1

0057d41b - 75 fe jnz short memcolla.0057d41b

6.找到關鍵跳,f8一下就可以到oep了

0057d5a3    61

popad

0057d5a4 ba f8085000 mov edx,memcolla.005008f8

0057d5a9 - ffe2 jmp edx ; //

指向oep的關鍵跳

0057d5ab 0000 add byte

ptr ds:[eax],al

0057d5ad

0000 add byte ptr ds:[eax],al

7.來到oep,可以脫殼了

005008f8    55              push ebp                          ; //

oep005008f9 8bec mov ebp,esp

005008fb 83c4 f0 add esp,-0x10

005008fe

53push ebx

005008ff

56push esi

00500900 b8 10045000 mov eax,memcolla.00500410

00500905 e8 665ff0ff call memcolla.00406870

0050090a 8b1d

08415000 mov ebx,dword ptr ds:[0x504108

]

00500910 8b35 9c415000 mov esi,dword ptr ds:[0x50419c]

8.執行,查殼

執行ok,查殼:borland delphi 4.0

手脫UPX殼方法介紹

方法1 單步跟蹤 f8單步跟蹤,向上不能讓他跳,有loopd迴圈也一樣 跳轉的下一行按f4 執行到選定位置,迴圈loopd在call下一句f4執行 只允許向下跳,如單步跟蹤call處程式執行,則需要過載程式,再call處f7跟進 近call f7,遠call f8 pushad 入棧 popad 出...

手脫64位UPX殼

背景 近期舍友不知道為啥忽然要漢化乙個gta的外掛程式,第一次聽說他要漢化,問了我一堆關於逆向的東西。由於外掛程式加了upx的殼 也是peid說的,我感覺是乙個很奇怪的殼 他搞不定於是發來給我。我平時也是逆向linux的elf檔案多一些,windows的而且還是64位的幾乎沒搞過,平時也沒脫過什麼殼...

ximo脫殼4 手脫FSG殼

基礎脫殼教程4 手脫fsg殼 fsg 2.0 bart xt 重點為修復 手動 查詢iat 一 單步跟蹤法 單步跟蹤就是和之前一樣的套路,直接單步向下,遇到向上跳轉直接用f4跳過就可以了,主要是在單步的時候注意一些跳轉,可能跳轉到的地方就是程式的oep 也有可能跳轉到oep的指令會被略過,所以要仔細...