LoardPe與Import REC X64dbg腳本 脫殼 Upx

LoardPe與Import REC X64dbg腳本 脫殼 Upx

將要學習到的內容

  • x64脫殼腳本的編寫
  • LoarPe 與Import 工具的使用

一丶X64dbg調試器與腳本

1.1 起因

在逛論壇的時候,發現別人發的CrackMe帶有UPX壓縮,直接進行脫殼. 使用EPS定律即可.

但是 x64Dbg下沒有脫殼腳本,為什麼使用脫殼腳本.原因是腳本方便.不用做重複動作.

正因為沒有脫殼腳本呢.所以進行脫殼腳本的編寫.

其實x64Dbg腳本特別簡單.直接去官網去看就行.

https://help.x64dbg.com/en/latest/commands/index.html

腳本就是模擬人的手工操作.

例如你在調試程序的時候, 單步步過(F8) 那麼腳本的命令就是sti 你如果是步進(F7) 那麼腳本的命令就是

sto, 例如你通過x64Dbg界面下硬件斷點. 那麼腳本命令就是(bph) 具體參數可以查一下命令手冊.

1.2 腳本的調試

寫腳本簡單,主要是腳本的調試.而且OllyDbg也有腳本.其實都是一樣的.只不過命令有些許不同而已.

具體的看一下差異化即可.

Tab 在腳本窗口加載腳本之後,Tab建則是單步執行腳本.也就是一條命令一條命令的執行

Space(空格鍵) Space則是直接運行起來你的腳本

1.3 Upx脫殼腳本

下面的腳本就是寫的一個Upx脫殼腳本.注意Upx版本不同,有通用的Upx腳本,我的只是為了學習,臨時針對我分析的CrackMe寫的一個Upx脫殼腳本.

腳本如下:

bphc                        //清除所有硬件斷點  sti                         //執行一次F8(步過)  bph esp,r,1                 //對當前Esp棧頂下 硬件讀取斷點,設置一個位元組 r代表讀取  erun                        //執行一次F9也就是運行起來,erun就是中間出異常了交給調試器執行  find eip,e9,1000            //利用Find功能在EIP位置尋找 jmp,搜索的內存大小為1000  bphc    bph $result                 //搜尋的結果會放到 $result變量中  erun                        //執行  bphc  sto 2                       //執行一下F7  cmt eip,"Current Eip is Oep Please Dump Entry" //在EIP位置填寫注釋  ret

其實這段腳本主要的功能就是 模擬ESP定律執行的步驟, 下好硬件斷點,然後執行,之後之後會在斷點位置斷下,然後在尋找JMP,找到之後在對此位置下硬件斷點.繼續執行,繼續斷下,斷下後然後進入就是OEP了.

二丶LoardPe 內存Dump與Import Rec導入表修復工具

2.1 腳本執行到OEP

如上圖所示,腳本執行之後會在OEP位置,我加了段提示就是告訴你要Dump內存了.

x64也有相關插件直接dump+修復的工具.我沒配置.索性使用這種方法.(loardpe + import rec)

可以得出以下信息 OEP VA = 00401500

ImageBase = 00400000 (這個不貼圖了,是這個)

以上信息一會會用到.

2.2 LoardPe Dump內存

此時x64Dbg在OEP位置,不要關閉x64,打開LoardPe 以管理員運行,不然可能搜索不到你的進程

完整轉存內存到文件即可. 此時這個文件無法正常運行,需要我們修復一下.

2.3 Import Rec 進行修復

總共四個步驟

ps:以管理員運行 Import Rec

  • 1.選擇你的進程,也就是x64Dbg 掛起的那個進程
  • 2.OEP位置, 這個就用到我們上面的信息了. OEP這裡是RVA 我們上邊得出OEP VA = 00401500 imageBase = 00400000

RVA = VA – ImageBase = 1500

所以這裡我們填寫1500即可. 注意,x64Dbg此時的EIP必須也是OEP位置.如果不是在你LoardPe的時候dump的內存就是錯誤的 且修復可能不成功

  • 3.Get Imports 獲取導入表 填寫好上面信息之後點擊獲取導入表即可.可以獲取相關導入表
    1. Fix Dump 獲取導入表之後,針對我們剛剛LoardPe dump下的內存文件進行修復. 修復好之後就可以正常啟動了

工具以及樣本: https://www.lanzous.com/iaymihg