破解教程之手脫UPX的DLL

BattleHeart發表於2019-05-11

手動脫UPXDLL
這裡我只是整理一下文件,方便大家學習,學習資料是黑鷹破解教程,我把裡面的一些我覺得有必要整理的東西,拿出來整理一下,大神請不要噴!下面來進行分析:
主要程式是:
破解教程之手脫UPX的DLL
主要分析的是這裡面的DLL檔案,也就是XY2Function.dll這個檔案,下面來用PEID載入看一下,看一下殼:
破解教程之手脫UPX的DLL
XY2Function.dll載入到OD中,這裡OD分析dll需要有另外一個程式來載入loaddll.exe程式;
破解教程之手脫UPX的DLL
接下來就單步走,這裡有一個技巧我們可以直接搜下面這個指令:
Xchg  ah,al
Rol   eax,10
Xchg  ah,al
Add   eax,esi
既然這樣我們就開始CTRL+B查詢第一段程式碼:
破解教程之手脫UPX的DLL
點選查詢按鈕,CTRL+L進行下一個查詢直到查到這段程式碼為止:
破解教程之手脫UPX的DLL
找到了這段程式碼之後接下來就是再mov  albyte ptr ds[edi]處下斷電,F9執行到這裡,然後記錄下edi的值,這個edi存放就是DLL重定位地址,edi-基址=RVA重定位;
破解教程之手脫UPX的DLL
這裡面edi的地址是edi=1009F418,我們檢視記憶體看一下基址是多少,
破解教程之手脫UPX的DLL
基址為10000000所以這個重定位的RVA就是9F418
接下來就是單步走到程式的OEP,單步走的原則就是遠Call F8,近Call F7;這樣我們就到達了OEPloadpe進行dump程式;
破解教程之手脫UPX的DLL
接下來就是Dump程式,這裡就不截圖了,主要是後面修復關鍵地方,將修復完成之後的程式載入到LOADPE中,進行重定位的修復
破解教程之手脫UPX的DLL
點選目錄進入到修改目錄中:
破解教程之手脫UPX的DLL
注意這裡修復完成後點選儲存->確定,之後出來還要點選儲存->確定這樣才算成功。後面就是用importREC進行修復。修復之後就可以執行了
程式我就不附加了,自己找一個UPX的DLL練手就好!!!

龐順龍最後編輯於:4年前

內容均為作者獨立觀點,不代表八零IT人立場,如涉及侵權,請及時告知。

相關文章