fsg脫殼可採用:
1,超好用的esp定律法
2,單步跳轉法
不過這兩個方法值得注意的是,fsg殼比upx殼的oep更加的隱蔽。可能看不到大的跳轉,會把跳轉位址隱藏在暫存器單元中如ebx,esp等
oep的查詢並不難,主要是修復,和查詢iat
*iat*
importaddresstableaddress
匯入位址表的位址
因為importrec自動查詢的iat不完全,所以需要手動查詢
rva起始位址和大小有誤可通過以下方法查詢
找到乙個call命令(右鍵follow in dump-memory
address),通過rec判斷是否為描述中的調
用位址,如
果是,就跳到該位址(在命令列中輸入d+adress)手動拖
動查詢iat的rec位址
找到初始位址,和末位址。(上方value全為0;下方value為0)
初始位址需要減去基位址 才是rva的起始位址
好幾天了,一直沒有成功。我打算不在耽擱下去。一直出現的問
題就是顯示無效的,匯入函式表內沒有乙個是有效的
ximo脫殼4 手脫FSG殼
基礎脫殼教程4 手脫fsg殼 fsg 2.0 bart xt 重點為修復 手動 查詢iat 一 單步跟蹤法 單步跟蹤就是和之前一樣的套路,直接單步向下,遇到向上跳轉直接用f4跳過就可以了,主要是在單步的時候注意一些跳轉,可能跳轉到的地方就是程式的oep 也有可能跳轉到oep的指令會被略過,所以要仔細...
upx脫殼學習筆記
目前我所知upx脫殼的三種方法 1,單步跟蹤法 發現往回跳的都給我按f2 breakpoint,如果遇見連續多jump就在最後個jump後設定斷點,不停的找啊找,要有耐心 2,esp定律法 首先先step over f8 pushad壓棧,同時會發現esp發生改變,再使用command命令輸入hh ...
NSpack脫殼學習筆記
1,esp定律法 開頭pushfd 然後將32位標誌暫存器eflags壓入堆疊 和pushad 將所有的32位通用暫存器壓入堆疊 發現esp發生了突變,這樣就可以使用esp定律法,發現到了popfd 標誌暫存器出棧 發現乙個大跨度的jmp 難道又和upx一樣嗎,這脫殼還真乙個德行啊,當然啦,他們都是...