首页
社区
课程
招聘
利用 ChatGPT 进行自动化分析的IDA插件 - WPeChatGPT
发表于: 2023-2-28 16:46 30471

利用 ChatGPT 进行自动化分析的IDA插件 - WPeChatGPT

2023-2-28 16:46
30471

Github 链接https://github.com/WPeace-HcH/WPeChatGPT
  通过 ChatGPT(插件 v1.x 版本使用的是 OpenAI 基于GPT训练的 text-davinci-003,v2.0 版本开始改用与 ChatGPT 相同的 gpt-3.5-turbo 模型)实现对函数的自动化分析及其他功能。
  函数分析的效果如下:

登陆 OpenAI 的官方网站:https://openai.com,右上角点击 Log in(这里就默认大家已经有 OpenAI 的账号了哈,如果没有的话自行在网上搜索注册教程吧);
然后点击个人头像就可以查看自己的 API-key 信息:

如果未创建过 API-key,则进入后点击 Create new secret key 即可创建。
PS:当前最新 OpenAI 的主页中没有了 Log in 按钮,大家可以点击开始进入相关页面:

2023-03-03更新

漏洞分析效果如下:

2023-03-06更新
  改用 OpenAI 最新的 gpt-3.5-turbo (ChatGPT) 模型:

2023-03-07更新
  已解决反馈的 API 无法正常连接或时常超时的问题,下载最新版本即可。(具体参考 Readme 中 "关于 OpenAI-API 报错" 一节)

v2.1 版本当前包含的功能如下:

 
 
 
  • 分析函数的使用环境、预期目的、函数功能。
  • 重命名函数的变量。
  • 尝试用 python3 对函数进行还原,此功能主要是针对较小块的函数(如一个异或解密函数)。
  • 在当前函数中查找是否存在漏洞。
  • 尝试用 python 对漏洞函数生成对应的 EXP。
  1. 运行命令行安装openai的运行库:"pip install -r ./requirements.txt"。
  2. 下载脚本 WPeChatGPT.py 后,将自己 ChatGPT 的 API-key 填入脚本中的变量 openai.api_key
  3. 将 WPeChatGPT.py 复制到 IDA 的 plugins 文件夹中,重启 IDA 即可。

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

最后于 2023-3-22 11:36 被WPeace编辑 ,原因:
收藏
免费 32
支持
分享
最新回复 (43)
雪    币: 2428
活跃值: (2597)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
太可怕了
2023-3-1 14:32
0
雪    币: 1957
活跃值: (3380)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
3
WPeChatGPT 已更新 v1.1 版本。: )
2023-3-2 16:34
1
雪    币: 50161
活跃值: (20625)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
4
当前热点,期待大家反馈
2023-3-2 17:47
2
雪    币: 1420
活跃值: (2281)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
5
试用了一下, 简单的函数的流程基本上 分析的大差不差,细节还是需要人工去扣的,对于大部分搞分析的来讲,减轻了部分工作,但是对于复杂函数,暂时还没有测试,希望有大佬能分析一波。
2023-3-2 18:04
1
雪    币: 2402
活跃值: (6808)
能力值: ( LV7,RANK:102 )
在线值:
发帖
回帖
粉丝
6
cheatPPT
2023-3-2 18:38
0
雪    币: 290
活跃值: (735)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
davinci-003 could not complete the request: Error communicating with OpenAI    这是怎么回事呢?  
2023-3-4 16:10
0
雪    币: 1957
活跃值: (3380)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
初学者有毅力 davinci-003 could not complete the request: Error communicating with OpenAI 这是怎么回事呢?
这几天服务器不稳定的问题,过一会儿尝试即可。
2023-3-6 09:43
1
雪    币: 102
活跃值: (2155)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
9
稍微长一点的函数提示太长了,分析不了,这东西如果能实现对各种加密算法(包括模改变异过的)精确打击就好了。
2023-3-6 10:20
2
雪    币: 4134
活跃值: (5847)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
10
这跟自己赋值粘贴下来到网页上翻译有啥区别
2023-3-6 10:41
0
雪    币: 248
活跃值: (3789)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
ChatGPT分析VMP应该都可以
2023-3-6 12:58
0
雪    币: 21702
活跃值: (5749)
能力值: ( LV12,RANK:460 )
在线值:
发帖
回帖
粉丝
12
分析了一个418行的函数:可惜可惜,这个函数太大了不能使用 ChatGPT-davinci-003 API 来分析。@WPeace   
2023-3-6 16:04
1
雪    币: 1957
活跃值: (3380)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
13
鬼手56 分析了一个418行的函数:可惜可惜,这个函数太大了不能使用 ChatGPT-davinci-003 API 来分析。@WPeace
OpenAI 的 API 有长度限制,所以过大的函数是没法分析的。
2023-3-6 16:18
1
雪    币: 1519
活跃值: (3414)
能力值: ( LV3,RANK:25 )
在线值:
发帖
回帖
粉丝
14
这个跟之前github上出的那几个ida chatgpt插件有什么不同吗
2023-3-6 19:18
0
雪    币: 1957
活跃值: (3380)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
15
Endali 这个跟之前github上出的那几个ida chatgpt插件有什么不同吗
基于Gepetto上改进及功能添加,暂时没用过其他的ida chatgpt插件。
2023-3-6 20:35
1
雪    币: 433
活跃值: (1930)
能力值: ( LV4,RANK:40 )
在线值:
发帖
回帖
粉丝
16
大人,时代变了
2023-3-7 00:09
0
雪    币: 71
活跃值: (1414)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
牛逼,以后发展到直接把文件丢进gpt里面就出结果了
2023-3-9 09:52
0
雪    币: 1935
活跃值: (4180)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
支持
2023-3-9 16:47
0
雪    币: 1231
活跃值: (1072)
能力值: ( LV7,RANK:155 )
在线值:
发帖
回帖
粉丝
19

后续改进建议的方向:
1. 针对大函数不能解析的问题,发现 code-davinci-002这个模型支持 8,001 tokens,  尝试实验效果。
2. 增减一键分析Sub_开头的所有函数,判断大于100字的函数才做分析,:多线程或多单线程慢慢解析(睡一觉起来,一个二进制文件的分析已经搞定了)

最后于 2023-3-10 11:13 被ylml编辑 ,原因:
2023-3-10 11:04
2
雪    币: 1957
活跃值: (3380)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
20
ylml 后续改进建议的方向:1. 针对大函数不能解析的问题,发现 code-davinci-002这个模型支持 8,001 tokens ...
感谢,对于两点建议:
1. code-davinci-002 模型的话不如现在 gpt-3.5-turbo 效果好,这边主要还是考虑解析效果为主。
2. 一键所有SUB函数是可以做的,但是这样会大量消耗 API,毕竟每个人只有18美金的额度。
2023-3-10 20:41
1
雪    币: 295
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
21
为何是py,能用c吗?
2023-3-12 03:28
0
雪    币: 26
活跃值: (1310)
能力值: ( LV3,RANK:26 )
在线值:
发帖
回帖
粉丝
22
借楼问问chatgpt怎么set pay method, 国内的银行卡好像被denied了啊
2023-3-12 20:34
0
雪    币: 313
能力值: ( LV1,RANK:0 )
在线值:
发帖
回帖
粉丝
23
逆向工程师要失业了
2023-3-14 17:02
0
雪    币: 516
活跃值: (1908)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
24
OpenAI 的官方网站:https://openai.com,右上角点击 Log in 现在官网没有这个了
2023-3-16 22:41
0
雪    币: 7581
活跃值: (2720)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
牛逼啊,很好用,迫切的功能需求,一键自动对.idb的全部函数分析解释,这样逆向工程就真全自动了
2023-3-21 02:07
0
游客
登录 | 注册 方可回帖
返回
//