黑鷹基地破解提高班脫殼總結課

2021-10-21 19:18:18 字數 4486 閱讀 4520

1、 自校驗

bpx createfilea

bpx getfilesize

bpx setfilepointer

bpx exitprocess

bpx rtcfilelen

方法:開雙od,乙個開啟加殼程式,乙個開啟脫殼修復後的程式,比較進行。

2、 脫殼

2.1 armadillo

阻止偵錯程式)

雙程序)

3.enable import table elimination (輸入表亂序)

4.enable strategic code splicing(遠位址跳)

⑴ 修改 virtualalloc 返回位址,使其把挪移的**放到無用的殼區段;

⑵ dump後補上那個包含挪移**的殼申請的記憶體段;

5.enable nanomites processing (通常所謂的cc)

6.enable memory-patching protections(記憶體校驗)

使用到得輔助工具:

armlnline 0.96 final

armadillo find protected 1.3

需要記錄的

1、 程式入口頭兩個位元組

2、 oep入口頭兩個位元組

3、 chlid pid

4、 oep address

5、 iat table

總步驟分為

1、 go to oep

2、 get tat table

3、 copy iat

4、 paste iat

5、 fix import table elimination / code splicing

6、 dump

7、 fix dump

8、 fix nanomites processing

xp sp1 上基本上是getmodulehandlea+5 , xp sp2 是getmodulehandlea+9 ,目的只有乙個就是斷在getmodulehandlea處的第乙個je跳轉上

2.2、acprotect

不使用importrec脫殼

總的來說歸納為:兩斷點,五修改,兩記錄,兩糾正

在 .idata/.data段下記憶體寫入斷點,到達and dword ptr ds:

[esi+c],0處開始進行五修改,同時記錄好輸入表的rva,在.text段下記憶體訪問/f2斷點,到達oep(有stolen code另算),記錄好oep位址,最後loadpe脫殼,糾正oep,糾正import table

2.3、asprotect

1. emulate standard system functions (易)

2. advanced import protection (中)

3. stonlen oep (脫asprotect難點就在這,體力+毅力+技巧+時間)

4. sdk (脫asprotect難點就在這,體力+毅力+技巧+時間)

5. 初始化表與庫函式 (delphi 程式)(易)

手動甚為麻煩

我們借助指令碼來完成前面2步

需要注意的是:

1. 指令碼執行完成後,如果在kernel32函式範圍內有個別分散的函式沒有修復---------getprocaddress

2. 如果不在kernel32函式範圍內並且集中有2個以上包括2個集中函式沒有修復,那就是需要修復sdk。

總的步驟:

1. 利用指令碼處理iat,到達stolen oep』start

2. 脫殼修復抓取

3. 分析stolen區段(stolen code[10]、vm[2]、route check[1])

4. 補區段

5. 修復route check

6. 部分程式還有自校驗(如果不能執行的話)

7. 若軟體使用的是asp註冊機制,則patch註冊名

2.4、dll脫殼

方法步驟和exe脫殼基本無異,唯一不同的是需要處理重定位

1、 重定位基址

一般情況下,都會有乙個處理重定位基址的magic jump,處理了magic jump之後,後面就不需要我們手動糾正基址了,如果沒有處理magic jump,那麼就需要手動糾正基址為到達oep後dll當前的基址。

另外,關於dll脫殼的重定位基址的magic jump怎麼去找?

一是通過前人經驗積累,二是自己重新探索!

2、 重定位基址

exp:upx

ctrl+s:

xchg ah,al

rol eax,10

xchg ah,al

add eax,esi

exp:aspack

ctrl+s

sub ecx,8

shr ecx,1

exp:armadillo

bp gettickcount

ctrl+s:

push eax

xchg cx,cx

pop eax

str3、 快速修復dll的重定位表

基本可以概括為:一執行,一關閉,一單步,dump&fix,利用petools的重定位修復外掛程式修復

2.5、e語言的問題

目前e語言分兩個版本,第一版peid查殼是e language *(現在比較少了),第二版peid查殼是microsoft visual c++ 6.0 [overlay]。問題就在第二版上,由於入口特徵基本和vc++6.

0一摸一樣,所以,peid才會以為他是microsrft visual c++ 6.0[overlay]。通常有兩種方法判別:

1、 搜尋字串,e語言程式會用到兩個庫(krnln.fnr,krnln.fne)

2、 oep一般是3831

所以,加了殼的e語言程式,脫殼後是需要處理附加資料的。

2.6、關於upx+armadillo雙層殼

由於加殼壓縮需要顧及到相容性問題,稍有設定不好,加殼程式無法執行!

在壓縮殼裡面upx殼的相容性是最好之一,所以,一般雙層殼裡面的那一層有很多是使用upx。

關於upx+armadillo,第一步,我們依然通過armadillo常規方法處理magic jump,

輸入表處理好之後,一般有2種方法到達oep。

1、 通過armadillo常規到達oep的方法到達oep,當然這個oep只是裡面一層upx的入口,接下來就用esp定律

2、 忽悠區段法,直接在upx0(第2區段-------00401000)下斷,執行即可,就會停在oep附近(此時是在upx0區段,或者單步走,或者找popad->f4)

經驗:1、 在處理magic jump的時候,這一類armadillo,基本是getmodulehandlea中斷一次便是返回時機

2、 最後修復的時候,iat一定是全部有效(在rva和size準確的前提下),為什麼?(課後思考)

2.7、一些其他的相關經驗

2.7.1、經驗斷點

bp virtualalloc

bp virtualprotect

bp virtualfree

2.7.2 peid相關

手動修改pe頭

手動修改入口(一般稱為入口加花)

手動修改區段值

2.7.3、vfp&exenc

vfp 程式的專用加殼軟體

mov dword ptr fs:[0],esp

int3

noppop dword ptr fs:[0]

add esp 4

peid顯示:aspack 2.x(without poly)->alexey solodovrrkov

2.7.4、winupack

一般od載入後,會提示「錯誤的或者未知的32位執行程式」,

然後,就中斷在系統ntdll模組的retn上,呈現出退出狀。

解決方法:

1、 換用英文od(不是所有的英文od都可以)

2、 事先使用upack_fixer修復pe頭(不是所有的在加殼狀態下可以修復的)

2.7.5、molebox打包了的程式

先esp,再四次bp virtualprotect,返回nop掉8901,到達oep,iat全部有效

2.7.6、telock

在包含欄內,無注釋的那乙個區段f2,shift+f9中斷後,ctrl+b:0a f6 89 54,修改下面的je為jmp(magic jump),iat即可全部有效。否則,事後需要開啟加殼軟體,使用等級3和外掛程式修復。

2.7.7、軟體diy

需要使用到以下資源工具

exescope,pe exporer,reshacker, restorator xn resource editor

其中對於delphi和bcb的程式pe explorer和resscope最為適合

當然,也會用到od,uestudio,ultraedit,winhex,hex workshop

對於,只是查詢等無實際操作的建議使用小巧的hedit,方便快截

2.7.8、跟蹤加密指標

1.記憶體訪問/寫入

2.硬體訪問/寫入

以及他們的區別?

校長提高班培訓總結

我與20xx年9月21日至20xx年12月11日期間參加市教育局組織的第十次校長提高班培訓,先將相關培訓情況總結如下 一 培訓班級情況簡介 1 本次培訓班共44人參訓,其中xx2人,xx區4人,中方縣4人,xx縣3人,xx市2人,xx縣3人,麻陽縣3人,辰溪縣9人,漵浦縣6人,沅陵縣4人,通道縣1人...

鋼筋2019提高班總結

首先,無論您是一名使用者還是工作在第一線的現場人員,感謝您長久以來對廣聯達鋼筋產品的關注和支援,我們產品中凝聚的是所有廣聯達人 所有使用者的智慧型和汗水,正是您一如既往的支援推動著我們的產品不斷改進 不斷完善,衷心感謝!今後,我們依然會竭盡所能將最好的產品呈現在每一位關心 使用廣聯達鋼筋產品的使用者...

教師脫產提高班個人學習總結

能參加第二期脫產提高班是我的榮幸,第一已經結束,現在我來談談學習 一 學習認真貫徹黨的教育方針,忠誠人民的教育事業,努力學習教育理論。端正學習態度加強師德修養,嚴謹治學,以身作則,嚴明,樹立為人師表,做一名合格教師。二 學習收穫 一 集中 8個周 集中培訓內容 硬筆 普通話 計算機基礎應用 小學 小...