AkashaCorporation/HikariSystem-HexCore

GitHub: AkashaCorporation/HikariSystem-HexCore

基于 VS Code 的专业逆向工程 IDE,集成多架构反汇编、Unicorn 模拟执行和 Helix MLIR 反编译器,支持无头批量分析。

Stars: 8 | Forks: 1

# HikariSystem HexCore

HikariSystem HexCore

一款专为恶意软件分析、逆向工程和二进制模拟打造的专业 IDE

功能特性 | 扩展 | 调试器 | 自动化流水线 | 安装说明 | 使用指南 | 许可协议

binary analysis · reverse engineering · malware analysis · CPU emulation · PE/ELF · CTF tools · disassembler · debugger

## 概述 HikariSystem HexCore 是一款基于 VS Code 构建的综合二进制分析 IDE。它为安全研究人员提供了一个统一的环境,用于恶意软件分析、逆向工程和威胁追踪——从静态分析到完整的 CPU 模拟。 **最新版本 (2026-03-11):** `v3.7.0-beta.1` "Helix MLIR Stability (Beta Part 1)" — 修复了 Helix MLIR 引擎中的严重崩溃问题:入口循环函数现已成功反编译,针对所有 IR 模式的调用约定恢复过程已无崩溃。详情请参阅 [CHANGELOG](CHANGELOG.md)。 **HexCore 的独特之处:** - 完整的 PE 和 ELF 模拟,支持 70+ API 钩子 (Windows + Linux) - 通过 N-API 提供原生 Capstone/Unicorn/LLVM MC/Remill/Helix 引擎(无需额外安装) - 反编译流水线:机器码 → LLVM IR → 伪 C 代码(通过 Helix MLIR 引擎) - 用于批量分析的无头自动化流水线 - 已针对真实世界中经过混淆的自定义 VM CTF 二进制文件进行测试和验证 ## 功能特性 - **反汇编** — 原生多架构反汇编器 (x86, x64, ARM, ARM64, MIPS, RISC-V) - **IR 提升** — 通过 Remill 引擎将机器码翻译为 LLVM IR - **反编译** — 通过 Helix MLIR 引擎将 LLVM IR 转换为伪 C 代码 (x86/x64,结构化控制流,置信度评分) - **Helix MLIR 反编译器** — 基于 C++23/MLIR 的流水线,包含 7 个分析阶段 (v0.5.0:入口循环函数无崩溃) - **模拟执行** — 通过 Unicorn Engine 进行 CPU 模拟,支持 PE 和 ELF 加载、API 钩子、stdin 模拟 - **汇编修补** — 基于 LLVM MC 后端的内联修补,支持 NOP 滑行指令,多架构支持 - **PE/ELF 分析** — 导入/导出解析、节分析、壳检测、PIE 支持 - **十六进制查看器** — 虚拟滚动、数据检查器、书签、结构模板 - **哈希计算器** — MD5, SHA-1, SHA-256, SHA-512,集成 VirusTotal - **字符串提取** — ASCII/UTF-16,自动分类,XOR 去混淆,堆栈字符串 - **熵分析** — 逐块熵计算,具备壳/加密检测功能 - **YARA 扫描** — 规则加载,匹配高亮,自定义规则 - **IOC 提取** — 感知二进制的 IOC 检测 (IPs, URLs, 域名, 管道, 钱包) - **Minidump 分析** — Windows 崩溃转储取证,包含线程/模块/内存解析 - **自动化** — 用于批量二进制分析的无头流水线系统 ## 扩展 ### 分析工具 | 扩展 | 版本 | 描述 | |-----------|---------|-------------| | **Debugger** | 2.1.0 | 基于 Unicorn Engine 的 PE/ELF 模拟,70+ API 钩子,IPC Smart Sync,stdin 模拟 | | **Disassembler** | 1.4.0 | 多架构反汇编器,支持内联 PE/ELF 解析、函数检测、字符串交叉引用、IR 提升 | | **Hex Viewer** | 1.2.1 | 专业的二进制文件查看器,支持虚拟滚动 | | **PE Analyzer** | 1.1.0 | 全面的 PE 可执行文件分析,支持无头模式 | | **Strings Extractor** | 1.2.0 | 内存高效的字符串提取,支持 XOR 去混淆和堆栈字符串检测 | | **Hash Calculator** | 1.1.0 | 快速文件哈希计算,集成 VirusTotal | | **Entropy Analyzer** | 1.1.0 | 流式熵分析,支持自适应块大小和模块化报告流水线 | | **File Type Detector** | 1.0.0 | 魔数签名检测 | | **Base64 Decoder** | 1.0.0 | 检测并解码 Base64 字符串 | | **YARA Scanner** | 2.1.0 | YARA 扫描,集成 DefenderYara,支持无头流水线 | | **IOC Extractor** | 1.1.0 | 感知二进制的 IOC 提取,具备降噪功能、SQLite 后端和威胁评估 | | **Minidump Parser** | 1.0.0 | Windows MDMP 取证,支持线程注入/RWX 检测和威胁启发式分析 | | **ELF Analyzer** | 1.0.0 | ELF 二进制结构分析 — 节、段、符号、安全缓解措施 (新增) | | **Report Composer** | 1.0.0 | 将流水线输出聚合为包含目录和证据链接的统一 Markdown 报告 (新增) | ### 原生引擎(独立 N-API 包) 这些引擎随 HexCore 附带,也可在 Node.js 项目中独立使用。 | 包名 | 版本 | 描述 | |---------|---------|-------------| | **hexcore-capstone** | 1.3.2 | Capstone v5 N-API 绑定 — 异步反汇编,详情模式,支持所有架构 | | **hexcore-unicorn** | 1.2.1 | Unicorn N-API 绑定 — CPU 模拟,钩子,断点,快照,共享内存 | | **hexcore-llvm-mc** | 1.0.0 | LLVM 18.1.8 MC N-API 绑定 — 多架构汇编和修补 | | **hexcore-better-sqlite3** | 2.0.0 | 用于 IOC 持久化的 SQLite N-API 封装 — better-sqlite3 预构建包 | | **hexcore-remill** | 0.1.2 | Remill N-API 绑定 — 将机器码提升为 LLVM IR (实验性,依赖较重) | | **hexcore-helix** | 0.5.0 | Helix MLIR 反编译器 N-API 绑定 — 通过 C++23/MLIR 流水线将 LLVM IR 转换为伪 C 代码 (7 个分析阶段) | | **hexcore-rellic** | — | *(已弃用)* 基于 Rellic 的反编译器 — 已被 Helix MLIR 引擎取代 | | **hexcore-keystone** | 1.0.0 | 旧版汇编器绑定 (已被 LLVM MC 取代) | ## 调试器与模拟器 HexCore 调试器通过 **Unicorn Engine** 为 PE (Windows) 和 ELF (Linux) 二进制文件提供完整的 CPU 模拟。无需原生调试器或目标操作系统 —— 所有操作均在进程内运行。 ### 支持的格式 - **PE (x86/x64)** — 自动节加载,通过 IAT 进行导入解析,25+ Windows API 钩子 - **ELF (x86_64)** — PIE 支持,PLT/GOT 解析 (`.rela.plt` + `.rela.dyn`),40+ Linux API 钩子 - **原始二进制文件** — 直接内存映射,适用于 Shellcode 和固件 ### 模拟功能 - **单步 / 继续 / 断点** — 标准调试器控制,支持寄存器和内存检查 - **API 钩子** — 库调用的透明拦截(无需真实的 DLL/SO) - **stdin 模拟** — 为 `scanf`, `read(0)`, `getchar`, `fgets` 提供可配置的输入缓冲区 - **TLS/FS_BASE** — 自动线程本地存储,为 `-fstack-protector` 二进制文件提供堆栈金丝雀 - **系统调用处理程序** — Linux 系统调用拦截 (read, write, mmap, brk, arch_prctl, exit) - **`__libc_start_main` 重定向** — 跳过 CRT 初始化,直接跳转到带有 argc/argv/envp 的 `main()` - **快照保存/恢复** — 保存和恢复完整的模拟状态 ### Linux API 钩子 (40+) I/O、字符串、内存、堆、转换、进程、时间、文件桩以及安全函数 —— 均使用 System V AMD64 ABI 参数传递。 ### Windows API 钩子 (25+) Kernel32, user32, msvcrt 模拟,适用于常见的 PE 分析场景。 ### 已知限制 HexCore 模拟器使用 **Unicorn Engine**(基于 QEMU 的 TCG 后端)进行 CPU 翻译。虽然这涵盖了绝大多数真实世界的二进制文件,但在某些边缘情况下,Unicorn 的行为可能与完整的 QEMU 用户模式或真实硬件有所不同: - **指令保真度** — 某些未记录或边缘情况的指令,其行为可能与真实 CPU 或完整的 QEMU 不同。依赖于 CPU 特定特性的二进制文件(例如某些 CTF 挑战)可能会崩溃或产生不正确的结果。 - **ARM64 特性** — ARM64 模拟在独立的 Worker 进程中运行,以绕过 Chromium 安全限制 (ACG/CFG)。这会增加 IPC 开销,但在功能上是等效的。 - **无全系统模拟** — Unicorn 仅提供用户模式模拟。不支持内核级操作、硬件中断和特权指令。 对于需要更高保真度模拟的二进制文件,建议在 HexCore 静态分析工具之外,结合使用 **QEMU 用户模式** (`qemu-aarch64`, `qemu-x86_64`)。 ## 反汇编器 原生多架构反汇编器,由 **Capstone Engine v5.0** 驱动,通过 **LLVM MC** 提供汇编修补,通过 **Remill** 提供 IR 提升。 - **架构**: x86, x64, ARM, ARM64, MIPS, RISC-V - **IR 提升** — 通过 Remill 引擎将机器码提升为 LLVM IR (实验性) - **内联 PE/ELF 解析** — 无需外部依赖即可解析导入、导出、节 - **函数检测** — 序言扫描,调用目标分析,最多支持 1000 个函数 - **字符串交叉引用** — 追踪哪些指令引用了哪些字符串 - **图形视图** — IDA 风格的控制流图可视化 - **修补** — 汇编、修补指令、NOP 滑行指令 (LLVM MC) - **无头模式** — `hexcore.disasm.analyzeAll` 用于自动化,支持 JSON/MD 输出 ## 自动化流水线 HexCore 通过 `.hexcore_job.json` 作业文件支持无头批量分析。 ``` { "file": "C:\\bin\\sample.exe", "outDir": "C:\\reports\\sample", "steps": [ { "cmd": "hexcore.filetype.detect" }, { "cmd": "hexcore.peanalyzer.analyze" }, { "cmd": "hexcore.hashcalc.calculate" }, { "cmd": "hexcore.entropy.analyze" }, { "cmd": "hexcore.strings.extract", "args": { "minLength": 5 } }, { "cmd": "hexcore.disasm.analyzeAll" }, { "cmd": "hexcore.yara.scan" }, { "cmd": "hexcore.ioc.extract" } ] } ``` - **自动触发** — 工作区监视器检测到 `.hexcore_job.json` 创建时自动触发 - **步骤控制** — 每步超时,错误处理,输出验证 - **扩展预检** — 在每一步之前自动激活所需的扩展 - **能力审计** — `hexcore.pipeline.listCapabilities` 导出无头/交互式能力映射 - **安全模型** — 在流水线模式下显式阻止交互式命令,并给出清晰的错误提示 - **输出** — JSON/Markdown 报告 + `hexcore-pipeline.status.json` + `hexcore-pipeline.log` 所有分析扩展均支持带有 `file`、`output` 和 `quiet` 参数的无头执行。 ### v3.5.2 无头命令 | 命令 | 扩展 | 描述 | |---------|-----------|-------------| | `hexcore.debug.snapshotHeadless` | hexcore-debugger | 保存模拟快照 | | `hexcore.debug.restoreSnapshotHeadless` | hexcore-debugger | 恢复模拟快照 | | `hexcore.debug.exportTraceHeadless` | hexcore-debugger | 导出 API/libc 调用追踪 | | `hexcore.elfanalyzer.analyze` | hexcore-elfanalyzer | ELF 结构分析 | | `hexcore.base64.decodeHeadless` | hexcore-base64 从二进制文件中提取 Base64 字符串 | | `hexcore.hexview.dumpHeadless` | hexcore-hexviewer | 程序化十六进制转储提取 | | `hexcore.hexview.searchHeadless` | hexcore-hexviewer | 流式模式搜索 | | `hexcore.pipeline.composeReport` | hexcore-report-composer | 将报告聚合为统一的 Markdown | 完整文档请参阅 [docs/HEXCORE_AUTOMATION.md](docs/HEXCORE_AUTOMATION.md)。 ## 十六进制查看器 专业的二进制文件查看器,支持大文件虚拟滚动。 - **虚拟滚动** — 高效处理任意大小的文件 - **数据检查器** — 将字节查看为 Int8/16/32/64, Float, Unix 时间戳 - **书签** — 保存并导航到重要的偏移量 - **结构模板** — 解析常见的二进制结构 - **搜索** — 查找十六进制模式(例如 `4D 5A` 用于 PE 头) - **跳转到偏移** — 直接跳转到任意偏移量 - **复制选区** — 导出为十六进制、C 数组或 Python bytes - **小/大端序** 切换 ## 安装说明 ### 开发模式 ``` # 克隆 repository git clone https://github.com/LXrdKnowkill/HikariSystem-HexCore.git cd HikariSystem-HexCore # 安装 dependencies npm install # 在 development mode 下运行 $env:VSCODE_SKIP_NODE_VERSION_CHECK="1" .\scripts\code.bat ``` ### 环境要求 - Node.js 18.x 或更高版本 - npm 8.x 或更高版本 - Windows 10/11 - Visual Studio Build Tools 2022 (用于原生模块) - Python 3.x (用于 node-gyp) ## 项目结构 ``` HikariSystem-HexCore/ ├── extensions/ │ ├── hexcore-debugger/ # Emulation-based debugger (PE/ELF) │ ├── hexcore-disassembler/ # Multi-arch disassembler + patching │ ├── hexcore-hexviewer/ # Binary file viewer │ ├── hexcore-peanalyzer/ # PE file analyzer │ ├── hexcore-capstone/ # Capstone N-API binding │ ├── hexcore-llvm-mc/ # LLVM MC N-API binding │ ├── hexcore-unicorn/ # Unicorn N-API binding │ ├── hexcore-keystone/ # Legacy assembler binding │ ├── hexcore-remill/ # Remill lifter (machine code → LLVM IR) │ ├── hexcore-yara/ # YARA scanner │ ├── hexcore-ioc/ # IOC extractor │ ├── hexcore-hashcalc/ # Hash calculator │ ├── hexcore-strings/ # Strings extractor │ ├── hexcore-entropy/ # Entropy analyzer │ ├── hexcore-base64/ # Base64 decoder │ ├── hexcore-filetype/ # File type detector │ ├── hexcore-elfanalyzer/ # ELF binary analyzer │ └── hexcore-report-composer/ # Pipeline report aggregator ├── .agent/ │ └── skills/hexcore/ # AI skill for agent integration ├── docs/ # Documentation ├── src/ # Core IDE source ├── resources/ # Icons and assets ├── build/ # Build scripts └── product.json # Product configuration ``` ## AI Agent 集成 HexCore 包含一个用于与 AI Agents(如 Claude Code 等)集成的 AI 技能定义。该技能提供: - 所有 HexCore 扩展的完整命令参考 - 模拟器内存布局和 API 钩子文档 - 典型分析工作流指南 - 自动化流水线作业文件生成 详情请参阅 [.agent/skills/hexcore/SKILL.md](.agent/skills/hexcore/SKILL.md)。 ## 使用指南 ### 调试器 - 打开任意 PE 或 ELF 二进制文件 - 运行 **"HexCore: Start Emulation"** 开始 CPU 模拟 - 使用 **Step**、**Continue** 和 **Breakpoints** 进行动态分析 - 为交互式二进制文件设置 stdin 输入,使用 **"HexCore: Set Stdin Buffer"** ### 反汇编器 - 右键单击任意可执行文件 - 选择 **"HexCore: Disassemble File"** - 使用函数树、字符串引用和图形视图进行导航 ### 十六进制查看器 - 右键单击任意文件并选择 **"HexCore: Open Hex View"** - 或使用 **"Open With..." > "HexCore Hex Editor"** ### PE 分析器 - 右键单击任意 `.exe`, `.dll`, `.sys`, 或 `.ocx` 文件 - 选择 **"HexCore: Analyze PE File"** ### 哈希计算器 - 右键单击任意文件 - 选择 **"HexCore: Calculate File Hashes"** ### 字符串提取器 - 右键单击任意文件 - 选择 **"HexCore: Extract Strings"** ### 自动化 - 在工作区中创建一个 `.hexcore_job.json` 文件 - HexCore 会自动检测并运行它,或通过 **"Run HexCore Automation Job"** 手动运行 ## 许可协议 本项目采用 MIT 协议授权。详情请参阅 [LICENSE.txt](LICENSE.txt) 文件。

HikariSystem — 面向专业人士的安全工具

标签:ARM架构, Capstone, CPU仿真, CTF工具, DAST, DNS 反向解析, DNS 解析, ELF文件分析, IDE, LLVM, MIPS, MITM代理, MLIR, N-API, PE文件分析, Remill, RISC-V, Unicorn Engine, VS Code扩展, x86架构, 二进制分析, 二进制安全, 云安全监控, 云安全运维, 云资产清单, 代码混淆, 免杀技术, 反汇编器, 反编译器, 安全工具开发, 恶意软件分析, 无头模式, 暴力破解检测, 沙箱逃逸, 漏洞搜索, 自动化分析, 自动化攻击, 虚拟机保护, 跨站脚本, 逆向工程, 静态分析