AutoIt腳本程式的反編譯
Autoit可執行程式由Autoit腳本編寫(.au3)而後經過Aut2exe.exe編譯轉換成為可執行程式。
編譯時預設編譯出32位的程式,可以選擇編譯成x64位程式,老版本Aut2exe.exe還可以提供對腳本進行加密保護。
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiI2EzX4xSZz91ZsAzNfRHLGZkRGZkRfJ3bs92YsUTMfVmepNHL1RTaMF3VyVTcpxUNNVWW2E3VyVTQClGVF5UMR9Fd4VGdsATNfd3bkFGazxycykFaKdkYzZUbapXNXlleSdVY2pESa9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLhRGM2IzYhhDZ2YzNhFGZhNmM4QDOzIWZ4ATMjdTYygzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
編譯後的exe可以被exe2aut.exe反編譯得到原始腳本。
但是有一個問題是exe2aut.exe隻能反編譯出32位版本的Autoit exe程式,無法反編譯x64位的。
看到360的文章說“64位的AUTOIT編譯後生成的exe将加密後的腳本隐藏在資源節中,将資源節内的腳本提取後首先利用舊版本的AutoItSC.bin将64位腳本轉化生成32位exe,最後通過exe2aut進行反編譯。”
文章連結:https://mp.weixin.qq.com/s/T-6yiw_wrXlKWoiHbdp-hA
然後我就試了試,就是先把x64位中像加密腳本的部分提取出來儲存成*.au3檔案,然後使用Aut2exe.exe編譯成為x86可執行程式,最後使用exe2aut.exe反編譯得到原始腳本,結果發現反編譯出來的腳本不是那麼完美。
資源中疑似加密的腳本:
但是反編譯結果不那麼完美,可以看到一些内容沒有反編譯成功。
由于不知道“舊版本的AutoItSC.bin”是什麼,是以試了很多次也沒有成功,最後突然發現了一個寶貝Autoit64to32.exe,在一位東風破的部落格裡發現的,可以将x64位的AutoIt程式轉換成32位的,然後再反編譯轉換後得到的32位程式就可以了。
然後我試了試能完美解決這個問題。
東風破部落格工具位址:http://dongfengpo.cc/blog/2016/06/10.html(有免費百度雲)
工具下載下傳位址:https://download.csdn.net/download/weixin_44156885/21615438(收C币)