linux wine运行windows ida

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_29343201/article/details/72676372

前言

由于ctf比赛需要,必须得使用ida,然而我本机一直运行的都是manjaro linux。我基本上是使用linux代替windows的,如果缺少这么一个功能,自然代替就无从谈起了。

之前一直使用的都是虚拟机,然而最新的manjaro linux更新之后,virtualbox的guest addition应该是和xorg-server存在一些不可告人的错误,只要安装了guest addition就会导致我的windows黑屏,去virtualbox的论坛问了也没有什么结果,于是只能不安装guest addition,但是如果不安装的话,就没办法使用共享文件夹了,传文件就是一个困难(虽然最后临时的解决方法是主机搭一个ftp)。

最后想到了用wine来解决这个问题,于是用这个博客记录一下安装的过程

ida安装

ida安装没有什么好说的,我这边的是一个“绿色版0”,就是不用安装,直接用的那种,于是解压到一个你想要的文件夹,然后wine idaq.exe或者wine idaq64.exe就可以使用了,当然为了简化操作,我在/usr/bin中写了一个简单脚本大概就是:

#!/bin/sh
# file: ida
cd ~/ida
wine idaq.exe

这应该比较显然,没什么好说的,只是为了能够在命令行直接调用罢了。

ida-python

不过接下来问题就来了:
命令行中出现了

err:module:import_dll Loading library python27.dll (which is needed by L"Z:\\home\\anciety\\ida\\plugins\\python.plw") failed (error c000007b).

在ida左下角也能看到python.plw无法加载的提示。

看来还需要一个python27.dll,于是下载了一个python27.dll,但是第一次下的文件似乎有问题,放到根目录之后依然没用,第二次下载的才成功了。 成功的链接:
https://www.dllme.com/dll/download/14091/python27.dll

之后再启动,会出现IDAPython: importing "site" failed
解决方法就是需要设置一个环境变量,如果你之前和我一样,是在/usr/bin下写了一个脚本来启动ida的,那么解决方法比较简单,也不会影响linux,否则如果直接设置环境变量会影响linux的python运行。

脚本:

cd ~/ida
export PYTHONPATH=/usr/lib/python2.7 && wine idaq

ida64做相应的改变即可。

keypatch

keypatch是一个patch需要的工具,增强了在ida中的patch功能。

在wine中安装keypatch并不是太麻烦,因为wine是支持.msi文件的,所以直接安装即可,需要注意的是,似乎需要先安装一个windows下的python,因为我的安装比较神奇,所以我也只能记下大概的步骤。

首先下载python2.7 32位的msi进行安装,注意,必须是32位,直接安装即可,然后下载keystone的安装msi,可以从这里下载

之后安装keystone,目前我看到keystone的msi好像有个神奇的地方,安装的位置在C盘里有一坨,进去之后各种Python2.1 2.2等等等等都在里面,非常的恶心,不过不用管,反正不影响使用。

由于python2.7的msi的默认目录名是Python27,然而keystone的安装包又没办法改名字,安装在了Python2.7里,所以需要自己移动一下。

cd ~/.wine/drive_c/Python2.7/Lib/site-packages/
mv * ~/.wine/drive_c/Python27/Lib/site-packages/

之后就可以正常使用了。

展开阅读全文

没有更多推荐了,返回首页