Ubuntu+Wine+IDA7.6+激活插件
聲明:文章中涉及的程序(方法)可能帶有攻擊性,僅供安全研究與教學之用,讀者將其信息做其他用途,由用戶承擔全部法律及連帶責任,文章作者不承擔任何法律及連帶責任。 |
背景介紹:
因某些研究所需,需要在Ubuntu下使用IDA7.6和相關插件,于是做個記錄,當然,如果你在Windows下使用,本篇文章可以直接略過了。
環境如下:
Ubuntu 20.04
Wine 5.0
IDA Pro 7.6
安裝所需:
1、安裝Wine:
apt-cache policy wine //查看Wine版本sudo apt-get install wine //安裝Wine
2、安裝IDA:
將Windows版本的IDA 7.6解壓至/opt/目錄,然后測試一下用Wine打開它:
wine /opt/IDA\ Pro\ 7.6/ida.exe
一切正常:

3、安裝Python:
因為IDA7.5以上使用的是Python3.x,因此需要安裝Python3,這里選擇下載非安裝包版:
wget https://www.python.org/ftp/python/3.10.2/python-3.10.2-embed-amd64.zip
這里要注意的是,Wine的路徑與Windows路徑的對應:
Ubuntu下的路徑: /home/用戶名/.wine/drive_c/Program Files/Python3/
對應Wine下的路徑是:C:\Program Files\Python3
OK, 弄明白了這個路徑對應,我們將Python3解壓到Wine的對應目錄,還需要設置一下Wine下的PATH環境變量。
環境變量:
運行:
wine regedit
找到:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Session Manager\Environment
在PATH最后,添加Python3環境(記得用分號分割路徑 ):

配置完成環境變量后,新開一個命令行, 執行:
wine python.exe
OK,配置成功:

接著我們重新打開IDA看看,會發現插件錯誤提示:

很明顯,需要安裝Python第三方庫。
安裝pip:
首先下載pip安裝腳本:
wget https://bootstrap.pypa.io/get-pip.py
然后執行:
wine python.exe get-pip.py
安裝完成之后, 我們回到Python3目錄下, 發現多了一個叫Lib的文件夾,可以看到pip已經安裝在了 Libs\site-packages 這個目錄下面了:

但是此時如果直接使用pip還是會提示找不到pip, 這是因為我們還要設置環境變量,讓python找到pip模塊。
在Python3目錄下我們可以找到一個名為python310._pth的文件,打開并編輯該文件,將site-packages路徑寫入:

注意:這個路徑填寫的是相對路徑,即相對于python.exe的路徑
保存退出后,再次執行:
wine python.exe -m pip --version
pip安裝成功:

接下來使用pip安裝所需庫模塊(以yara為例):
wine python.exe pip install yara
安裝完成后,再次打開IDA看看,繼續報錯:

找不到libyara.dll文件,在Python3目錄下找一下這個文件在什么位置,直接手動將C:\Program Files\Python3\Lib\site-packages\Program Files\Python3\DLLs\libyara.dll移動到Python3/DLLs/下,再次打開IDA查看:

OK,一切順利,然后就是安裝相應的插件了,
插件安裝:
以keypatch插件為例:
首先下載keypatch:
git clone https://github.com/keystone-engine/keypatch.git
安裝依賴:
wine python.exe -m pip install keystone-enginewine python.exe -m pip install six
將keypatch.py拷貝至/opt/IDA\ Pro\ 7.6/plugins/目錄下:
cp keypatch.py /opt/IDA\ Pro\ 7.6/plugins/
重新打開IDA并反編譯一個so文件,搞定:
