Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Sekiryu — Ghidra 无头模式的综合工具包 | Kitploit
工具/GitHubGitHub/20urc3/sekiryu
静态分析漏洞分析代码分析逆向工程二进制分析AI 辅助逆向Archived
GitHub20urc3/sekiryu

Sekiryu

Ghidra 无头模式的综合工具包

查看仓库
362221年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
网站

这个项目非常有趣,也是我第一个"大"项目!现在已有更好、更智能、更强的解决方案:https://github.com/LaurieWired/GhidraMCP

再见,太空牛仔

Sekiryu v0.0.2

本 Ghidra 工具包是一套全面的工具集,旨在简化和自动化与以无头模式运行 Ghidra 相关的各种任务。该工具包提供了大量脚本,既可在 Ghidra 内部执行,也可与 Ghidra 并行执行,使用户能够执行诸如漏洞挖掘、使用 ChatGPT 进行伪代码注释以及生成带有数据可视化的分析报告等任务。它允许用户加载和保存自己的脚本,并与脚本内置的 API 进行交互。

主要特性

  • 无头模式自动化:该工具包使用户能够无缝启动并以无头模式运行 Ghidra,从而实现代码分析任务的自动化批量处理。

  • 脚本仓库/管理:工具包包含一个预建脚本仓库,可在 Ghidra 内执行。这些脚本涵盖多种功能,使用户能够执行多样化的分析和操作任务。它允许用户加载和保存自己的脚本,为特定分析需求提供灵活性和定制选项。用户可以轻松管理和组织脚本集。

  • 灵活的输入选项:用户可利用该工具包分析单个文件或包含多个文件的整个文件夹。这种灵活性使得对小规模和大规模代码库都能进行高效分析。

可用脚本

  • 基于模式识别的漏洞挖掘:利用工具包中的脚本识别所分析代码库中的潜在漏洞。这有助于安全研究人员和开发者发现安全弱点并主动修复。
  • 基于 SemGrep 的漏洞挖掘:感谢安全研究员 0xdea 及其创建的规则集,我们可以使用简单规则和 SemGrep 检测 C/C++ 伪代码中的漏洞(其 GitHub:https://github.com/0xdea/semgrep-rules)
  • 自动生成伪代码:在 Ghidra 的无头模式下自动生成伪代码。此功能有助于在无需人工干预的情况下理解和记录代码逻辑。
  • 使用 ChatGPT 进行伪代码注释:通过利用 ChatGPT 为伪代码片段生成类似人类的注释,提高代码库的可读性和理解性。此功能有助于记录和解释代码逻辑。
  • 报告与数据可视化:生成包含可视化的综合报告,以有效总结和呈现分析结果。该工具包提供数据可视化能力,有助于识别代码库中的模式、依赖关系和异常。

前提条件

使用此项目之前,请确保已安装以下软件:

  • Ghidra:您可以从美国国家安全局的 GitHub 仓库 @ https://github.com/NationalSecurityAgency/ghidra 下载 Ghidra。
  • Java:确保已安装 Java 开发工具包(JDK)17 或更高版本。您可以从 OpenJDK 网站 @ https://openjdk.org/projects/jdk/17/ 下载。
  • BinExport(可选):按照说明安装 Ghidra 扩展 https://github.com/google/binexport
  • SemGrep(可选):按照 https://semgrep.dev/docs/getting-started/ 的详细说明操作。

安装

  • 安装上述前提条件。
  • 直接从 Github 下载 Sekiryu 版本,或使用:pip install sekiryu。

用法

要使用此脚本,您只需针对一个二进制文件运行它,并带上您想执行的选项。

  • sekiryu [-F FILE][OPTIONS]

请注意,使用 Ghidra(或其他任何产品)进行二进制分析是一个相对 缓慢 的过程。因此,根据主机性能,二进制分析可能需要几分钟时间。 如果您对非常大的应用程序或大量二进制文件运行 Sekiryu,请准备好 等待。

演示

  • 请访问 www.bushido-sec.com 查看演示。

API

root@kitploit:~
"server.py" 的基本设计是允许脚本之间以及脚本与主机系统之间通过 Ghidra 进行交互。
用户可以轻松开发自己的脚本,将其加载并保存到脚本文件夹中,并使用 API 的已知函数与 Ghidra 进行交互。

要使用它,用户必须在其脚本中导入 xmlrpc,并像这样调用函数:proxy.send_data

函数

  • send_data() - 允许用户向服务器发送数据("data" 是字典类型)。
  • recv_data() - 允许用户从服务器接收数据("data" 是字典类型)。
  • request_GPT() - 允许用户通过 ChatGPT API 发送字符串数据。

使用您自己的脚本

脚本保存在 /modules/scripts/ 文件夹中,您只需将脚本复制到那里即可。 在 ghidra_pilot.py 文件中,您可以找到以下负责运行无头 Ghidra 脚本的函数:

root@kitploit:~
def exec_headless(file, script):
	"""
	执行 ghidra 的无头分析
	"""
	path = ghidra_path + 'analyzeHeadless'
	# 设置变量
	tmp_folder = "/tmp/out"
	os.mkdir(tmp_folder)
	cmd = ' ' + tmp_folder + ' TMP_DIR -import'+ ' '+ file + ' '+ "-postscript "+ script +" -deleteProject"	

	# 使用指定文件和脚本运行 ghidra
	try:	
		p = subprocess.run([str(path + cmd)], shell=True, capture_output=True)
		os.rmdir(tmp_folder)

	except KeyError as e:
		print(e)
		os.rmdir(tmp_folder)

用法非常简单,您可以创建自己的脚本,然后在 ghidra_pilot.py 中添加一个函数,例如:

root@kitploit:~
def yourfunction(file):
	try:
		# 设置脚本
		script = "modules/scripts/your_script.py"
	
		# 在新线程中启动 exec_headless 函数
		thread = threading.Thread(target=exec_headless, args=(file, script))
		thread.start()
		thread.join()
	except Exception as e:
		print(str(e))

文件 cli.py 负责命令行界面,并允许您像这样添加参数和关联命令:

root@kitploit:~
analysis_parser.add_argument('[-ShortCMD]', '[--LongCMD]', help="您的帮助信息", action="store_true")

贡献

  • 脚本/脚本/脚脚本本:该工具被设计为一个工具包,允许用户轻松保存和运行自己的脚本。显然,如果您能以任何形式的脚本做出贡献(任何有趣的内容都会获得批准!)。
  • 优化:任何形式的优化都受欢迎,并且几乎会自动被批准并在每次发布中部署。一些不错的方向包括:改进并行任务处理、代码清理和整体改进。
  • 恶意软件分析:这是一个我不熟悉的重大领域。任何愿意贡献的恶意软件分析师都可以提出建议、脚本,甚至直接提交代码到项目中。
  • 报告:我不是数据可视化工程师,如果有人愿意改进/贡献这一部分,那将非常好。

警告

root@kitploit:~
xmlrpc.server 模块对于恶意构造的数据不安全。如果您需要解析不受信任或未经身份验证的数据,请参阅 XML 漏洞。

有关 Bushido Security 的更多信息,请访问我们的网站:https://www.bushido-sec.com/。

下载工具