# bun-demincer Bun 可执行文件 JavaScript 还原工具

> 从 Bun 编译的独立可执行文件中恢复可读 JavaScript 的 Node.js 流程。它提取内嵌的模块图和资源，把打包代码拆成每个模块一个文件，用指纹库标记 npm 第三方代码，再借助 wakaru、依据导出映射恢复名称的保格式重命名以及可选的 Gemini 命名建议进行反混淆。之后通过依赖图聚类、手工或借助 LLM 的聚类命名，以及跨版本迁移已有成果，来整理和更新输出。

- 类型：工具
- 目标：应用 · 二进制
- 类别：JavaScript 与 Electron 工具
- 关联：基础工具
- 来源复核于：2026-10-20
- 收录于：2026-11-02
- 原始资源：<https://github.com/vicnaum/bun-demincer>
- 一手来源：<https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/README.md>
- 目录页面：<https://awesomerea.org/zh/resources/bun-demincer/>
- 记录 JSON：<https://awesomerea.org/resources/bun-demincer/record.json>
- 英文版：[English](https://awesomerea.org/resources/bun-demincer/index.md)

## 使用条件与局限

- 所审阅的 master 提交（2026-03-06）是仓库的第九个提交，距 2026-03-03 的初始发布提交仅三天；没有标签或发布版本。需要 Node.js 18+ 及 package.json 中的 npm 依赖，其中 node-canvas 用于生成聚类 PNG；只有运行提取出的代码时才需要 Bun。README 称 Bun 将代码存放在 Mach-O 的 __BUN 节、追加在 ELF 末尾的数据或 PE 的 .bun 节中；extract.mjs 会解析 Mach-O 节头，否则直接搜索 Bun 的结尾标记。
- 输入是 Bun 编译可执行文件；仓库不含任何目标二进制或恢复出的代码，.gitignore 也排除了流程输出。data/vendor-fingerprints-1000.json（26 MB）收录 1,668 个 npm 包中 23,746 个文件的属性名与字符串字面量指纹，可从本地 node_modules 重建。README 称第 1–4 步全自动，而聚类命名需要手工完成或借助 LLM。
- ai-rename.mjs 和 ai-rename-scoped.mjs 会使用 GEMINI_API_KEY 把模块源码发送到 Google Gemini API（默认模型 gemini-3-flash-preview），所得名称只是模型建议。README 的回装步骤调用一个标明位于使用者项目中的 build.mjs，本仓库并不包含它。
- 所审阅的文件树中没有测试或 CI。README 声明 MIT，但仓库没有许可证文件，package.json 也没有 license 字段。九个提交中有四个带有 Claude Opus 4.6 的共同作者标记。

## 一手来源

1. <https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/README.md>
2. <https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/package.json>
3. <https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/.env.example>
4. <https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/.gitignore>
5. <https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/docs/BUN.md>
6. <https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/src/extract.mjs>
7. <https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/src/match-vendors.mjs>
8. <https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/src/ai-rename.mjs>
9. <https://github.com/vicnaum/bun-demincer/blob/7cfe9254bca0ce7428a5574d7da8d4d8e51f511c/src/cluster-graph.mjs>
10. <https://github.com/vicnaum/bun-demincer/commit/4ff57a9fff40b2a509b32cfd93d76a22fd37933a>

## 同分区更多条目：应用

- [dex-oracle Dalvik 反混淆工具](https://awesomerea.org/zh/resources/dex-oracle/index.md) · 工具
- [arkdecompiler 鸿蒙 NEXT 反编译器](https://awesomerea.org/zh/resources/arkdecompiler/index.md) · 工具
- [JNIAnalyzer Ghidra 扩展](https://awesomerea.org/zh/resources/jnianalyzer/index.md) · 工具
- [Android Reverse 设备端逆向套件](https://awesomerea.org/zh/resources/ultrasina-android-reverse/index.md) · 工具
- [jsc-decompile-mozjs-34 SpiderMonkey 字节码反编译器](https://awesomerea.org/zh/resources/jsc-decompile-mozjs-34/index.md) · 工具
- [Andromeda Android 应用交互式逆向工具](https://awesomerea.org/zh/resources/andromeda/index.md) · 工具

## 关于此条目

说明已依据一手来源复核。
原创说明采用 MIT 许可；外部项目、论文与素材保留各自的权利和许可。
