Callisto:一款基于人工智能实现的二进制代码漏洞分析工具

admin 2024年1月11日10:33:48评论20 views字数 1203阅读4分0秒阅读模式

Callisto:一款基于人工智能实现的二进制代码漏洞分析工具

 关于Callisto 

Callisto是一款基于人工智能实现的二进制代码漏洞分析工具,该工具的主要目的是通过自动化方式反编译研究人员输入的二进制代码文件,并通过输出的伪代码进行迭代分析,以查找C伪代码中潜在的安全漏洞。

该工具使用了Ghidra的Headless反编译器来驱动二进制代码文件的反编译和分析部分,伪代码的分析最早是由Semgrep SAST工具实现的,但现在迁移到了GPT-3.5-Turbo,以验证Semgrep的发现或识别其他潜在的安全漏洞。

该工具可以帮助广大研究人员分析二进制代码文件或识别0 day漏洞,通过分析,我们可以识别出二进制代码文件中的特定区域或易受攻击的组件,然后通过动态测试来对发现进行验证和利用。

 工具要求 

1、如果你想要使用GPT-3.5-Turbo功能的话,你必须要在OpenAI网站上创建一个API令牌,并将其存储到项目目录下的config.txt文件中;

2、Ghidra;

3、Semgrep:pip install semgrep;

4、requirements.txt中指定的其他依赖组件;

5、确保你Ghidra目录的正确路径在config.txt文件中进行了配置;

工具安装 

由于该工具基于Python开发,因此我们首先需要在本地设备上安装并配置好Python环境。接下来,广大研究人员可以使用下列命令将该项目源码克隆至本地:

git clone https://github.com/JetP1ane/Callisto.git

然后切换到项目目录中,使用pip工具和项目提供的requirements.txt安装该

工具所需的其他依赖组件:

cd Callistopip install -r requirements.txt

 工具使用 

我们可以直接使用下列命令运行Callisto:

python callisto.py -b <path_to_binary> -ai -o <path_to_output_file>

参数解析

-ai(可选):启动OpenAI GPT-3.5-Turbo分析 功能,你需要先在config.txt配置文件中填写有效的OpenAI API密钥;

-o(可选):指定存储输出结果的文件路径;

-all:该参数将控制工具通过OpenAI分析功能执行工具所有的功能,并忽略Semgrep的扫描结果,该参数需要结合-ai参数一起使用;

使用样例

python callisto.py -b vulnProgram.exe -ai -o results.txtpython callisto.py -b vulnProgram.exe -ai -all -o results.txt

 工具运行截图 

Callisto:一款基于人工智能实现的二进制代码漏洞分析工具

工具使用演示 

Callisto:一款基于人工智能实现的二进制代码漏洞分析工具

 项目地址 

Callisto:https://github.com/JetP1ane/Callisto

原文始发于微信公众号(FreeBuf):Callisto:一款基于人工智能实现的二进制代码漏洞分析工具

 

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年1月11日10:33:48
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Callisto:一款基于人工智能实现的二进制代码漏洞分析工具http://cn-sec.com/archives/2218215.html

发表评论

匿名网友 填写信息