首页 > 系统相关 >Windows下使用VSCode搭建IDA Python脚本开发环境

Windows下使用VSCode搭建IDA Python脚本开发环境

时间:2022-11-21 16:26:03浏览次数:77  
标签:脚本 插件 Python VSCode python Windows IDA

由于本人是VSCode的重度沉迷用户,需要写代码时总会想起这个软件,因此选择在VSCode中搭建IDA Python的开发环境

本文适用的环境如下:

1.操作系统 windows

2.Python3

3.IDA Pro 7.7(7.5以上应该都行)

4.VSCode 1.73.1 更新于2022.11.09(这个版本不影响,能用的VSCode都可以)

 

在IDA中安装IDA Python的插件

插件仓库的地址:https://github.com/ioncodes/idacode

从仓库中将所有文件都下载下来

1.将下载文件中的ida里面的内容(不是ida这个文件夹)全部放到本地IDA的Plugins文件夹下,例如D:\tools\IDA Pro7.7.7\plugins,注意路径中不要包含中文,否则可能出现奇怪的玄学bug。

2.修改上述文件中的idacode_utils/settings.py,将里面PYTHON设置为本地机器所使用的解释器路径,如果找不到路径,可以通过以下python代码打印出来

import sys
print(sys.executable)

此外,还可以使用windows + r,在打开的运行窗口中输入cmd后按回车打开命令行,输入where python即可

3.安装所需要的依赖

python -m pip install --user debugpy tornado

4.重启IDA,随意打开一个二进制文件,点击左上角的edit->plugins->IDA Code,查看下方的交互窗口,提示[IDACode] Listening on 127.0.0.1:7065,说明安装成功。

 

在IDA中使用IDA Python

IDA Python安装完成后,可以使用IDA提供的界面使用IDA Python,有三种方式:

1.主界面下方的窗口

在最下方的输入栏中输入python的代码按回车即可运行,这种方式适用于简单测试,不适合写代码量较多的脚本。

2.IDA 左上角 file->Script Command

可以在这里编写脚本,点击run即可在Output窗口观察到输出,运行前记得在左下角Scripting language选框中选择Python

3.IDA 左上角file->Script file

这里可以导入写好的外部脚本运行。

 

在VSCode中开发IDA Python

1.安装IDA Code插件

在VSCode左侧点击插件按钮,或者按ctrl+shift+x呼出插件框,搜索IDACode插件点击安装

2.配置IDA Python自动补全

在VSCode 的settings(以json方式编辑)中添加本地IDA Python的库。ctrl+shift+p打开搜索框,输入open user settings(json)打开设置,在里面添加两行代码

"python.autoComplete.extraPaths": [
        "D:\\tools\\IDA Pro7.7.7\\python\\3"
     ],
     "python.analysis.extraPaths": [
        "D:\\tools\\IDA Pro7.7.7\\python\\3"
   ],

这里的路径是你的IDA中的路径,务必找到IDA文件夹下的python\\3,此时在vscode中编辑ida python的代码,就可以根据库中有的类和函数选择补全

3.连接vscode和ida

ctrl+shift+p打开搜索框,输入IDA,能够搜索到四个选项:Execute script in IDA; Connect to IDA;Attach a debugger to IDA;Connect and attach a debugger to IDA

它们分别是用于执行当前脚本,连接vscode到ida,连接调试器到ida

首先选择Connect to IDA,在此之前,需要在IDA Pro中的plugins里点击IDA Code,让IDA进入等待连接的状态

然后编写脚本,编写完成后,点击Execute script in IDA,此时就可以在IDA 的Output窗口中看到输出了

4.IDA code 保存时执行设置

如果你的VSCode设置了自动保存,那么建议在IDACode的配置中关闭Execute On Save,否则你每对脚本进行一次修改,修改后的脚本就会被执行,右下角还会有成功发送到IDA的提示框(我亚雷,真的很烦)

以上,完成在VSCode中开发IDA Pyhon的环境配置。

 

调试IDA Python脚本

上述步骤完成后,可以在开发好的脚本中打断点,方式为在需要断下的语句前面加一行breakpoint(),程序在调试时会断在该行的下一行处。使用python自带的代码左端的小红点打断点无效,目前没找到解决方式。

然后ctrl+shift+p,依次选择Attach a debugger to IDA和Execute script in IDA进入调试模式,之后的步骤和在IDA中调试相同。

 

标签:脚本,插件,Python,VSCode,python,Windows,IDA
From: https://www.cnblogs.com/level5uiharu/p/16911765.html

相关文章

  • WinUI(WindowsAppSDK)使用LiteDB做个女演员图鉴
    为什么选择LiteDB之前做uwp的时候有做过一个植物图鉴,当时图片使用的是在线图片,所以图片很多也并没有什么体验上的差别,但是直到有一天别人的网站挂掉了,图片访问不到了,当时......
  • python3 请求webSocket实例
    网上搜了好久,没看到python写的webSocketClient这里贴个示例供大家参考,测过了asyncdefwebSocketClient(self,url,sendData,headers,breakTag):"""......
  • Python3.10 的开发环境的搭建
    安装下载Python3.10或者其他版本:DownloadPython|Python.org如果Windows操作系统下载,默认是下载64位操作系统的exe安装包:python-3.10.0-amd64.exe双击安装......
  • frp代理windows远程桌面
    前言参考地址:​​https://geomatlab.com/frp-windows-rdp/​​正文备忘远程的电脑在登录时会输入用户名和密码,这个用户名有可能不是被远程电脑上显示的用户名,我们需要在被远......
  • 【Python】字典dict_相同key,不同value的添加方法
     dict.setdefault(key,[]).append(value) #coding:utf-8fromloguruimportloggeraslogsclassdemo:defrun(self):new_dict={}#......
  • python-错误和异常-主动抛
    1.抛异常有时,程序需要主动抛出异常,因为某些情况下,你需要反馈消息给更上层的调用者,告诉它有一些异常情况发生,而你抛出异常的地方,没有能力处理它,因此需要向上抛出异常。这......
  • 使用Windows Openssl 生成RSA公钥私钥
    一,下载安装windows平台openssl密钥生成工具,执行安装目录bin下的"openssl.exe",执行后弹出命令窗口如下二,生成私钥输入"genrsa-outrsa_private_key.pem1024",回车,命令......
  • Python常用命令最全合集
    文章目录一、Python环境配置命令二、Python常用命令三、pip管理工具命令四、发布包到pypi(官网)命令Mac电脑自带python2.x版本,终端输入python-V//查看当前......
  • Python面向对象
    背景:为什么要学类1.当我们写了很多用例,我们需要组织用例以及测试执行获取测试报告,需要用到标准库unittest(其实就是一个库里面的类);2.自动化常用的driver.find_ele......
  • Python GDAL/OGR常用样例代码
    目录安装案例矢量转栅格栅格转矢量(多边形)矢量叠加矢量擦除缓冲区分析(以点为例)视域分析安装推荐使用conda安装pythongdal环境,先查询gdal可用版本,再指定版本号,按需安装对......