行业解决方案查看所有行业解决方案
IDA 用于解决软件行业的关键问题。
发布时间:2023-05-18 17: 29: 01
IDA Pro作为世界范围内最流行的逆向工程工具,广受欢迎的原因除了IDA Pro本身强大的功能外,还因为IDA支持第三方插件,可以实现很多意想不到的功能,进一步提升工作效率。今天要为大家推荐的IDA插件,正是结合了当下最火爆的AI工具ChatGPT,实现自动化分析代码的超能力!
不得不吐槽,IDA虽然非常强大,但很多时候我们反编译出来的代码,可读性很差,函数名、参数名、变量名会被用a1,a2,v1,v2等代替,需要进一步去研究。
目前有2款插件可以实现自动化分析的功能,并用注释告诉你这段代码所承载的功能。我们先来看第一款,第二款实际上是基于它做了改进,并优化了对中文的支持,推荐大家优先考虑第二款。
插件的名字叫做Gepetto,和知名的动画故事匹诺曹里的,创作匹诺曹的老人Geppetto就差了一个字母。Gepetto是一个Python脚本,它使用OpenAI的ChatGPT来为IDA Pro反编译的函数提供进一步分析。安装它,只需将脚本放入IDA插件文件夹($IDAUSR/plugins)。
因为是基于Python,还需要保证你的IDA安装了相关的Python包,如39版本解释器。当插件被正确安装后,我们就能从IDA的伪代码窗口,右键菜单中调用它了,如下图所示:
忘了说,因为是使用ChatGPT的API接口进行分析,所以你还需要编辑脚本并添加你自己的API密钥。请注意,ChatGPT查询不是免费的(虽然不是很贵),这里就不做详细展开。
下载Gepetto插件请访问:github.com/JusticeRage/Gepetto
这款插件的作者是来自看雪论坛的WPeace大佬,根据大佬的介绍,WPeChatGPT是通过ChatGPT(插件 v1.x 版本使用的是 OpenAI 基于GPT训练的 text-davinci-003,v2.0 版本开始改用与 ChatGPT 相同的 gpt-3.5-turbo 模型)实现对函数的自动化分析及其他功能。
函数分析的效果如下:
我们能看到,它的效果和第一款是非常相似的,但是又有进一步的优化,比如增加查找函数中二进制漏洞的功能,还有自动生成对应EXP的功能。
同样的,我们需要先安装,并替换自己的ChatGPT API-key到插件的配置文档里,大概的步骤供参考:
以上就是今天我们的IDA插件推荐的全部内容,主要是两款利用了大火的ChatGPT技术,实现对代码的自动化分析并给出参考结果的Gepetto和WPeChatGPT,它们可以极大的提升逆向工程中代码分析的效率,推荐各位进行安装尝试。
下载WPeChatGPT插件请点击【下载完整资料】按钮↓↓↓
展开阅读全文
︾
读者也喜欢这些内容:
IDA怎么修改字符串内容?IDA修改后怎么保存?
在软件开发和逆向工程领域,IDA Pro是一种极其强悍的工具,广泛用于程序剖析、调试和修改。它不仅支持多种处理器架构,还提供了大量的作用,以适应高档讲解的必须。本文将围绕ida怎么修改字符串内容,ida修改后怎么保存这一主题,详细描述怎样在IDA中更改字符串内容,及其修改后的存放方式。此外,我们还将探讨IDA转变的应用场景,帮助读者更深入地了解IDA的实际应用价值。...
阅读全文 >
汽车逆向工程是什么?使用IDA进行汽车逆向工程教程
汽车工业正面临着史无前例的技术创新,其中,车辆逆向工程作为一种新兴技术,正成为该行业的热点话题。结合IDA(Interactive Disassembler)该前沿逆向工程工具,车辆逆向工程的应用范围和深度不断发展。文中旨在深入分析汽车逆向工程是什么?使用IDA进行汽车逆向工程教程,分析IDA在车辆系统中的运用,为汽车行业的技术人员及发烧友提供有价值的参考信息。...
阅读全文 >
IDA打开目标so全是sub_ IDA怎么调试到对应的代码?
使用IDA分析Android或iOS平台的应用时,常会遇到“打开目标so文件全是sub_”的情况,这对于初学者和经验不足的分析师来说是一个挑战。本文旨在详细讲述如何在IDA中有效处理这一问题,解析调试到对应代码的方法...
阅读全文 >
IDA反编译以后如何转成源码?IDA反编译修改后重新编译
在软件开发和安全分析领域,IDA(Interactive Disassembler)作为一款强大的逆向工程工具,常被用于软件的反编译过程。反编译是指将编译后的程序还原为更易于理解的源码形式,这一过程在软件分析和调试中至关重要。...
阅读全文 >