yunusgungor/electron-reverse-engineering-skill

GitHub: yunusgungor/electron-reverse-engineering-skill

一套经过验证的 Electron 桌面应用逆向工程方法论与工具链集合,覆盖 ASAR 操控、源码反混淆、运行时注入、完整性绕过等完整流程。

Stars: 0 | Forks: 0

# 🔬 Electron 逆向工程技能 **基于 Electron 的桌面应用程序通过逆向工程进行检查、自定义和更新的全面且经过验证的方法集合。** [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](LICENSE) [![GitHub stars](https://img.shields.io/github/stars/yunusgungor/electron-reverse-engineering-skill)](https://github.com/yunusgungor/electron-reverse-engineering-skill/stargazers) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](CONTRIBUTING.md) ## 🎯 它的作用是什么? 此技能逐步涵盖了理解、自定义和获取闭源 Electron 应用程序灵感所需的**所有技术**: | 目的 | 操作内容 | |------|------------| | **源码审查** | 解包 ASAR 存档,反混淆已压缩/混淆的代码,发现 API endpoint | | **自定义** | 关闭遥测,移除 auto-update,修改 UI,激活 premium feature | | **获取灵感** | 检查竞品/类似应用的代码结构、API 架构和安全层 | | **安全审计** | 检测可疑网络连接、硬编码的 secret 和数据泄露 | | **Patch** | 绕过许可证检查,patch native module wrapper | ## 📚 目录 | # | 章节 | 描述 | |:-:|-------|----------| | 1 | [何时使用](skill/SKILL.md#1-ne-zaman-kullan%C4%B1l%C4%B1r) | 在什么情况下使用哪种技术 | | 2 | [ASAR 操作](skill/SKILL.md#2-asar-manip%C3%BClasyonu-temel-ad%C4%B1m) | 查找、提取和重新打包 ASAR | | 3 | [ASAR 完整性绕过](skill/SKILL.md#3-asar-integrity-baypas-3-kan%C4%B1tlanm%C4%B1%C5%9F-y%C3%B6ntem) | 3 种绕过方法 + V8 snapshot | | 4 | [Runtime 注入](skill/SKILL.md#4-runtime-injection-%C3%A7al%C4%B1%C5%9Fma-an%C4%B1nda-kod-enjeksiyonu) | 通过 4 种方法在运行时注入代码 | | 5 | [源码反混淆](skill/SKILL.md#5-kaynak-kod-deobfuscation-6-seviyeli-pipeline) | 6 级 pipeline (source map → V8 bytecode) | | 6 | [DevTools 与 Remote Debugging](skill/SKILL.md#6-devtools--remote-debugging) | Debug 端口,双层 proxy,API 发现 | | 7 | [Electron Fuses](skill/SKILL.md#7-electron-fuses-savunma-katman%C4%B1) | Fuse 检查,十六进制编辑绕过 | | 8 | [代码注入向量](skill/SKILL.md#8-kod-enjeksiyon-vekt%C3%B6rleri) | RUN_AS_NODE, NODE_OPTIONS, --inspect 绕过 | | 9 | [实战自定义场景](skill/SKILL.md#9-pratik-%C3%B6zelle%C5%9Ftirme-senaryolar%C4%B1) | 5 个真实场景 | | 10 | [案例研究](skill/SKILL.md#10-vaka-%C3%A7al%C4%B1%C5%9Fmalar%C4%B1-ger%C3%A7ek-d%C3%BCnyada-kan%C4%B1tlanm%C4%B1%C5%9F) | 5 个真实世界案例研究 | | 11 | [工具对比矩阵](skill/SKILL.md#11-tool-kar%C5%9F%C4%B1la%C5%9Ft%C4%B1rma-matrisi) | 15+ 款工具基于指标的对比 | | 12 | [快速决策表](skill/SKILL.md#12-h%C4%B1zl%C4%B1-karar-tablosu) | ASAR 中有什么 → 使用什么工具 → 成功率 | | 13 | [优化的 Pipeline](skill/SKILL.md#13-optimize-edilmi%C5%9F-pipeline-kan%C4%B1tlanm%C4%B1%C5%9F-ak%C4%B1%C5%9F) | 6 阶段验证流程 | | 14 | [格式检测助手](skill/SKILL.md#14-format-tespit-yard%C4%B1mc%C4%B1s%C4%B1) | 识别 9 种不同的 Electron 格式 | | 15 | [工作环境](skill/SKILL.md#15-%C3%A7al%C4%B1%C5%9Fma-ortam%C4%B1) | 所需工具,安装说明 | | 16 | [常见陷阱](skill/SKILL.md#16-yayg%C4%B1n-tuzaklar-ve-%C3%A7%C3%B6z%C3%BCmleri) | 10 个陷阱及其解决方案 | | 17 | [验证检查清单](skill/SKILL.md#17-do%C4%9Frulama-kontrol-listesi) | 10 项检查清单 | | 18 | [资源](skill/SKILL.md#18-kaynaklar-ve-referans-ara%C3%A7lar) | GitHub 仓库,学术出版物,博客文章 | ## 🚀 快速开始 ``` # 首先 extract ASAR npx @electron/asar extract app.asar ./src # 检查是否存在 Source map find ./src -name "*.js.map" # 使用 webcrack 进行 deobfuscate npm install -g webcrack webcrack src/main.js -o decoded/ # 进行修改 → repack asar pack decoded/ app.asar ``` 详细步骤请见:[`skill/SKILL.md`](skill/SKILL.md) ## 📊 学术参考 此技能中的方法已通过以下学术研究验证: | 研究 | 会议 | 链接 | |---------|-----------|------| | **JsDeObsBench** | CCS 2025 | [arxiv.org/abs/2506.20170](https://arxiv.org/abs/2506.20170) | | **JSimplifier** | NDSS 2026 | [arxiv.org/abs/2512.14070](https://arxiv.org/abs/2512.14070) | | **CVE-2025-55305** | Trail of Bits | [blog.trailofbits.com](https://blog.trailofbits.com/2025/09/03/) | Benchmark 详情:[`skill/references/benchmark-data.md`](skill/references/benchmark-data.md) ## 🛠️ 所需工具 ``` # 基本 npm install -g @electron/asar @electron/fuses source-map prettier # Deobfuscation npm install -g webcrack humanify # Python 工具 pip install electron-inject asar-tools restringer # API 发现 # jsluice: https://github.com/BishopFox/jsluice # Rust (可选) cargo install electron-injector ``` ## 🧠 真实世界案例研究 | 应用 | 操作内容 | 教训 | |----------|------------|------| | **Sononym** | 绕过 30 天评估期 → JS wrapper patch | 不要因为有 native module 就害怕 | | **Bruno API** | 可疑网络连接分析 → API endpoint 发现 | jsluice + DNS + proxy = 三大法宝 | | **draw.io** | 跨平台 asset 提取 | `7z` 可以解压任何格式 | | **Signal** | SQLite 明文消息窃取 | ASAR 篡改不会被发现 | | **Figma** | DMG 中的 shell binary → 真实代码是独立的 | 注意两阶段分发 | ## ⚖️ 法律声明 本技能**仅用于教育和研究目的**。未经授权修改他人软件、违反许可或进行恶意使用可能是违法的。请始终在您自己的软件或您有权限检查的软件上进行操作。 ## 📝 许可证 MIT License — 详情请参阅 [LICENSE](LICENSE) 文件。 ## 👤 作者 **Yunus Güngör** — [github.com/yunusgungor](https://github.com/yunusgungor) *本技能是基于广泛的网络研究、学术基准测试(JsDeObsBench/CCS 2025、JSimplifier/NDSS 2026)以及真实世界案例研究(fasterthanli.me、danaepp.com、jonmest、Ahmad Z.)编制而成的。*
标签:API提取, ASAR解包, Chromium, DNS 解析, Electron, GNU通用公共许可证, MITM代理, Node.js, Telemetry Bypass, Update Bypass, URL提取, 二进制分析, 云安全运维, 云资产清单, 动态注入, 反编译, 可视化界面, 完整性绕过, 服务器监控, 桌面应用安全, 源码去混淆, 白盒分析, 软件破解, 运行时注入, 逆向工具, 逆向工程