Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
hexvero — 二进制或应用包的第一印象:静态、免执行分析并附证据。CLI、15 工具 MCP 服务器和本地 Web UI,仅需 Node。 | Kitploit
工具/GitHubGitHub/maximilianfeix/hexvero
Android安全静态分析漏洞分析代码分析移动应用渗透测试逆向工程信息收集恶意软件分析数字取证实用工具与框架二进制分析AI 安全
3561天前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
GitHubmaximilianfeix/hexvero

hexvero

二进制或应用包的第一印象:静态、免执行分析并附证据。CLI、15 工具 MCP 服务器和本地 Web UI,仅需 Node。

查看仓库网站
hexvero – 对二进制文件或应用包的首次审视。仅凭 Node 即可获得带证据的静态事实。

CI npm Node License

English · Deutsch · Español · Français · Português (Brasil) · Русский · 中文 · 日本語 · 한국어

试用 · 使用场景 · 安装 · 它能读取什么 · CLI · Web UI · 面向 AI 智能体 · 引擎 · 限制 · 与 REA 对比 · 工作原理 · 贡献 · 常见问题


面向开发者和 AI 智能体的快速、本地、有证据支撑的软件首次审视。

hexvero 读取可执行文件、Electron 应用、APK、归档文件、数据库和网络抓包,而无需运行它们。它会告诉你软件包含什么、暴露了什么、每条事实是从哪里读取的、有多确定,以及它无法确定什么。一个 CLI、一个面向编码智能体的 MCP 服务器、一个本地 Web UI。任何数据都不会离开你的机器。

hexvero 在终端中分析一个 Electron 应用:带有文件和行号的发现、某个通道的 IPC 调用点,以及两次构建之间发生变化的设置

试用

npx hexvero analyze ./MyApp.app/Contents/Resources/app.asar

Node.js 22.12 或更高版本即可满足需求。在空的 npm 缓存下,首次结果只需一条命令,在笔记本电脑上大约九秒钟,包括下载时间。在 examples/ 中的小型 Electron 应用上进行实际运行:

$ hexvero analyze examples/notesdesk-1.4.0.asar
Summary
  Electron ASAR: 4 JavaScript modules, 6 IPC channels

Findings
  ○ nodeIntegration: true in a BrowserWindow  @ main.js:14
      contextIsolation is on for the same window, so page scripts do not get require(). Node integration keeps the renderer out of the Chromium sandbox.
  ○ sandbox: false in a BrowserWindow  @ main.js:15
      The renderer process runs without the Chromium sandbox.
  ● 6 IPC channels  @ main.js:25
      app:quit, notes:list, notes:save, settings:get, settings:set, shell:open (collections ipcChannels, ipc)
  ● 6 members exposed to pages as window.notesdesk  @ preload.js:4
      getSetting, setSetting, listNotes, saveNote, quit, openInShell (collection contextBridge)
  ○ 2 network endpoints read from the code  @ renderer/app.bundle.js:11
      ${…}/notes/sync, https://telemetry.notesdesk.example/collect (collection endpoints)
  ● 1 storage key read from the code  @ renderer/app.bundle.js:10
      notesdesk.token (collection storage)
  … (preload script, list of collections)

Next
  Which IPC channels can a page reach, and who handles them?
    hexvero collection examples/notesdesk-1.4.0.asar ipcChannels
  What does the preload script expose to web content?
    hexvero collection examples/notesdesk-1.4.0.asar contextBridge
  … (two more)

实心点表示从文件中读取到的事实,空心点表示从模式推断出的结论;@ main.js:14 表示读取位置。设置按原样报告,绝不按假定的 Electron 默认值报告。${…} 标记地址中在运行时计算的部分。windows 集合将每个窗口的 nodeIntegration、contextIsolation 和 sandbox 并排列出,取值为 true、false、computed 或 not written,并说明它们共同导致的后果;若某个值依赖于 package.json 中该版本的 Electron 默认值,则标记为 default on / default off。相关规则及其来源见 docs/electron-findings.md。只有当所有 IPC 形式的调用都能被追踪到时,IPC 发现才是一个实心点;否则,限制部分会列出无法追踪的调用及其文件和行号。

人们用它做什么

1. 理解一个不熟悉的应用程序。 你下载了一个二进制文件、一个 Electron 应用或一个 APK。hexvero 会说明它是什么、暴露了什么以及证据在哪里,并建议接下来该看什么。对于原生程序,它会列出值得关注的加固措施和导入项:

$ cc -O2 -o demo examples/native/demo-v2.c && hexvero analyze demo
Findings
  ● Imports functions that start other programs or a shell: system
      Read from the import table. Whether and with what input they are called is not established by static reading; a call graph (hexvero calls) shows who calls them. (collection imports)
  ● Hardening: PIE yes, stack canary no, ARC no, code signature yes, stripped yes

$ hexvero calls demo radare2 main --goal system      # with radare2, rizin or Ghidra installed
radare2 path main → sym.imp.system · found
main
  └ sym._run_tool
    └ sym.imp.system

2. 比较两个版本。 两个构建之间发生了什么变化,逐列表呈现,并以条目作为证据。仅发生位置移动的代码不会被报告为已更改。

$ hexvero compare examples/notesdesk-1.4.0.asar examples/notesdesk-1.5.0.asar webPreferences
webPreferences: 0 added, 0 removed, 2 changed, 2 unchanged · matched by file+windowName+key
  ~ main.js::win::nodeIntegration  value: true → false
  ~ main.js::win::sandbox  value: false → true

$ hexvero compare examples/notesdesk-1.4.0.asar examples/notesdesk-1.5.0.asar windows
windows: 0 added, 0 removed, 1 changed, 0 unchanged · matched by file+windowName
  ~ main.js::win  nodeIntegration: true → false, nodeIntegrationInEffect: "on" → "off", sandbox: false → true, sandboxInEffect: "off" → "on"

$ hexvero compare examples/notesdesk-1.4.0.asar examples/notesdesk-1.5.0.asar contextBridge
contextBridge: 1 added, 1 removed, 0 changed, 5 unchanged · matched by api+member
  + notesdesk::checkUpdate
  - notesdesk::openInShell

默认情况下不会忽略任何内容;仅在原生二进制文件中移动的代码会被计为 relocated。窗口通过其被赋值给的变量(win)进行匹配,因此添加一个窗口不会导致其他窗口错误配对。仅在一侧找到的项,只有在另一侧读取了该项所在文件时才会被标记为 added 或 removed;否则为 unknown(?)。

3. 让 AI 代理进行调查。 npx hexvero setup --apply 会将 MCP 服务器注册到它找到的编码代理(Claude Code、Codex、Cursor、VS Code 以及另外 14 个),而 npx hexvero setup --skill --apply 会安装一个技能,教授调查循环。然后代理打开一个目标,读取一个带有建议后续调用的小型初步答案,仅分页获取所需的列表,并为每个声明引用 file:line。目标内部的文本被视为数据,绝不视为指令;一个测试会在目标中植入此类文本以进行检查。参见 For AI agents。

为什么选择 hexvero

  • 它从不运行所读取的内容。 每种格式都由本仓库中的代码解析。引擎是可选的,并且只读取文件。
  • 证据与诚实。 发现结果分为 confirmed 或 inferred,并携带解析器记录的文件和行号。limitations 说明哪些内容被跳过、截断或无法读取。部分结果会明确说明它是部分的,精确到列表的每一页。
  • 经过测量,而非声称。 一个带有书面正确答案的语料库按每种发现类型衡量了找到、遗漏和错误报告的内容,包括在一个由无法访问 hexvero 的人编写的集合上。当结果变差时 CI 会失败。在那个未见过的集合上,hexvero 发现的 IPC 通道、设置、端点和存储键比 REA 6.4.0 更多,且错误报告远少,但仍遗漏很多;两者均展示在下方。
  • 为代理提供小型答案。 MCP 目录为 14 KB(3,300 个 token)。对语料库中留出应用进行完整的 Electron 调查大约花费 3,000 个 token;每个列表都是一页,有严格的字节预算,完整结果可按需写入文件(数据)。
  • 大型应用,读到结尾。 一个 JavaScript 应用每次读取 5,000 个文件;--continue 和 --all 读取其余部分,且不会重复读取任何内容。
  • 本地 UI,包含发现结果、虚拟化表格、十六进制查看器和模块图。仅限回环地址,支持键盘操作。

安装

需要 Node.js 22.12 或更新版本。读取 SQLite 数据库需要 Node.js 22.13 或 24 及更新版本;在 22.12 上其他一切正常,SQLite 文件会被拒绝并给出相应提示。

npm install -g hexvero        # the hexvero command
hexvero doctor                # checks Node, node:sqlite and optional engines

或者无需安装直接运行:npx hexvero <command>。

它能读取什么

此表中的所有内容仅靠 Node 即可工作。引擎在此基础上增加反汇编和反编译功能。

下载工具