下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上重建輸入表-脫殼基礎(chǔ)知識入門2007年10月12日 星期五 21:31在脫殼中輸入表處理是很關(guān)鍵的一個(gè)環(huán)節(jié),因此要求脫殼者對PE格式中的輸入表概念非常清楚。在磁盤文件中,PE文件的輸入表結(jié)構(gòu)如下圖所示:PE文件運(yùn)行時(shí),Windows系統(tǒng)加載器首先搜索OriginalFirstThunk,如果存在,裝載程序迭代搜索數(shù)組中的每個(gè)指針,找到每個(gè)IMAGE_IMPORT_BY_NAME結(jié)構(gòu)所指向的輸入函數(shù)的地址,然后用函數(shù)入口地址來替代由FirstThunk指向的 IMAGE_THUNK_DATA 數(shù)組里的元素值(即用真實(shí)的函數(shù)地址填充到IAT里)。因當(dāng)PE文件裝載內(nèi)存后準(zhǔn)備
2、執(zhí)行時(shí),上圖己轉(zhuǎn)換成這種情況了:此時(shí)輸入表中其它部分就不重要了,程序依靠IAT提供的函數(shù)地址就可正常運(yùn)行(圖8.2 紅圈部分)。如果程序加殼了,那殼自己模仿Windows裝載器的工作來填充IAT中相關(guān)的數(shù)據(jù),此時(shí)內(nèi)存中就一張IAT表,輸入表的其他部分是不存的(當(dāng)然不是絕對的,也有不少殼,如Aspack等,內(nèi)存中會出現(xiàn)完整的輸入表結(jié)構(gòu)),如圖 輸入表重建就是根據(jù)圖8.3這張IAT恢復(fù)整個(gè)輸入表的結(jié)構(gòu)(即圖8.1這個(gè)結(jié)構(gòu)),ImpREC這款工具就是這個(gè)功能。 一些壓縮殼,填充IAT過程中沒做什么手腳,用ImpREC工具可以直接重建輸入表。而一些殼為了防止輸入表被
3、還原,就在IAT上大作文章,此時(shí)殼填充IAT里的不是實(shí)際的API地址,而是填充殼中用來HOOK-API的外殼代碼的地址。這樣殼中的代碼一旦完成了加載工作,在進(jìn)入原程序的代碼之后,仍然能夠間接地獲得程序的控制權(quán)。 因?yàn)槌绦蚩偸切枰c系統(tǒng)打交道,與系統(tǒng)交道的途徑是API,而API的地址已經(jīng)替換成了殼的HOOK-API的地址,那程序每一次與系統(tǒng)打交道,都會讓殼的代碼獲得一次控制權(quán),這樣殼可以進(jìn)行反跟蹤繼續(xù)保護(hù)軟件,同時(shí)也可完成某些特殊的任務(wù)。所以重建輸入表的關(guān)鍵是獲得沒的IAT ,一般的做法是跟蹤加殼程序?qū)AT處理過程,修改相關(guān)指令,不讓外殼IAT。 UPX、A
4、SPack等加殼保護(hù)的殼沒IAT,而ASProtect、tElock等保護(hù)的殼都對IAT進(jìn)行了處理。這篇先來簡單的,即UPX殼。用OD打開上面的notepad.upx.exe實(shí)例,運(yùn)行到OEP。(實(shí)際跟蹤過程中,不一定要到OEP,只要外殼處理完IAT就可)然后如下操作:1) 運(yùn)行ImportREC,在下拉列表框中選擇notepad.upx.exe進(jìn)程,如圖:上面己得知notepad.upx.exe的OEP地址是4010CC,則在左下角OEP處填入OEP的RVA值,這里填上10CC。點(diǎn)擊“IAT AutoSearch”按鈕,讓其自動檢測IAT偏移和大小,如出現(xiàn)下圖表示ImportREC自己找到I
5、AT的地址與大小了,即IAT地址:E0,大小248。如果ImportREC沒找到IAT偏移,則必須手工填入IAT偏移和大?。↖AT偏移手動獲得以后再講述)。3) 點(diǎn)擊“Get Import”按鈕,讓其分析IAT結(jié)構(gòu)得到基本信息,如下圖所示:)如發(fā)現(xiàn)某個(gè)DLL顯示"valid :NO" ,按"Show Invalids"按鈕將分析所有的無效信息,在Imported Function Found欄中點(diǎn)擊鼠標(biāo)右鍵,選擇"Trace Level1 (Disasm)",再按"Show Invalids"按鈕。如果成功,可以看
6、到所有的DLL都為"valid:YES"字樣; 5)再次刷新"Show Invalids"按鈕查看結(jié)果,如仍有無效的地址,繼續(xù)手動用右鍵的Level 2或3修復(fù);6)如還是出錯(cuò),可以利用"Invalidate function(s)"、"Delete thunk(s)"、編輯Import表(雙擊函數(shù))等功能手動修復(fù)。7)開始修復(fù)已脫殼的程序。選擇Add new section (缺省是選上的) 來為Dump出來的文件加一個(gè)Section(雖然文件比較大,但避免了許多不必要的麻煩) 。8)單擊"Fix Dump"按鈕,并選擇剛在前面己Dump出來的文件。如修復(fù)的文件名是"Dump.exe",它將創(chuàng)建一個(gè)"Dump_.exe",此外OEP也被修正。 經(jīng)過這些步驟,這個(gè)UPX殼己成功脫掉。此時(shí)再用PEID查一下脫殼后的程序dumped_.exe,會顯示是“
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 雙11聯(lián)動營銷-借力者強(qiáng)借勢者智借智者王
- 貴金屬礦選礦廠運(yùn)營與管理考核試卷
- 項(xiàng)目定位的標(biāo)準(zhǔn)化思考路徑
- 中國質(zhì)量協(xié)會注冊六西格瑪黑帶考試樣題-2014版
- 七年級下學(xué)期期中考試模擬試卷01-七年級道德與法治下冊(統(tǒng)編版)(解析版)
- 易查云全球智能貿(mào)易信息查詢平臺商業(yè)計(jì)劃書
- 醬油食醋的設(shè)備選型與生產(chǎn)線布局考核試卷
- 2024年全球消費(fèi)者洞察報(bào)告
- 啞鈴軸舉重用商業(yè)發(fā)展計(jì)劃書
- 入耳式耳機(jī)相關(guān)項(xiàng)目建議書
- 伽瑪萊士說明書
- 中國傳統(tǒng)文化-點(diǎn)茶課件-高中主題班會
- 8.2《小二黑結(jié)婚》課件37張-統(tǒng)編版高中語文選擇性必修中冊
- DB32-T 3916-2020建筑地基基礎(chǔ)檢測規(guī)程-(高清現(xiàn)行)
- 菜鳥裹裹業(yè)務(wù)知識考試題庫與答案
- 高邊坡施工危險(xiǎn)源辨識及分析
- 股票操盤委托代理合同
- 轉(zhuǎn)體實(shí)施專項(xiàng)施工組織設(shè)計(jì)及對策
- 罪與罰的人性沖突——從《無人生還》看人性弱點(diǎn)分析研究應(yīng)用心理學(xué)專業(yè)
- 肺結(jié)核患者治療記錄卡(最新
- 易地扶貧搬遷問卷調(diào)查表通用版
評論
0/150
提交評論