Kong 反混淆管道深度解析:5 大混淆技术如何被 AI 逐个击破
【免费下载链接】kongThe worlds first agentic reverse engineer.项目地址https://gitcode.com/gh_mirrors/kong6/kong点击查看免费下载Kong 是全球首个 Agentic 反混淆与 AI 逆向工程引擎能把 stripped、混淆过的二进制丢给 Ghidra由 AI Agent 自动完成反混淆、函数命名与类型恢复的完整逆向工程流水线。本文深度解析它的反混淆管道Deobfuscation Pipeline控制流平坦化、虚假控制流、指令替换、字符串加密、VM 保护这 5 大混淆技术是如何被精准识别并逐个击破的。从FUN_00401a30到parse_http_header反混淆为什么是逆向工程的第一关被 strip 的二进制已经丢失了函数名、类型、变量名等一切可读性上下文混淆工具则会再叠加一层障碍控制流平坦化CFF把整段代码压进一个巨型while(1) switch(state)️虚假控制流BCF塞入永远走不到的假分支指令替换Instruction Substitution把a b改写成等价但绕路的复杂表达式字符串加密字符串字面量变成 XOR 循环 字节数组️VM 保护原生代码编译成自定义字节码由嵌入式虚拟机解释执行把大模型直接怼到这种反编译输出上问这段代码干什么结果通常很差——模型缺调用上下文也分不清哪些是障眼法。Kong 的答案是三件事先识别、再给工具、最后让 Agent 干活。反混淆管道如何触发分析阶段自动扫描Kong 的五阶段流水线Triage → Analyze → Cleanup → Synthesis → Export由 kong/agent/supervisor.py 中的 supervisor 统一编排。在 Analyze 阶段分析器并不是把反编译结果直接发给 LLM而是先跑一遍启发式扫描kong/agent/deobfuscator.pyclassify_obfuscation()用正则规则对每个函数的反编译输出做体检while(1) 大 switch 4 个以上十六进制 case 判定为 CFF命中 2 个以上不透明谓词模式判定为 BCF以此类推deobfuscator.py 检测规则命中后从 kong/patterns/ 目录加载对应的混淆知识卡注入 Prompt进入Agent 式反混淆LLM 拿到一套符号分析工具箱必须先看穿混淆才能输出命名与类型清理后的结论写回 Ghidra 程序数据库后续调用方直接受益。也就是说这里的 LLM 不是读者而是能调用工具做验证的 Agent。五大混淆技术逐个击破1️⃣ 控制流平坦化 CFF状态机还原成 if/else识别特征整个函数被while(1)包裹内部是巨型switch(state)状态变量在每个 case 末尾被赋值为大的十六进制常量以跳转下一个块。击破方式kong/symbolic/state_machine.py 中的trace_state_machine工具直接从 Ghidra 的 IR 提取状态转移图——所有状态、入口/出口状态、每条转移的条件还能自动识别线性链。LLM 只需做最后一步把图映射回if/else、while、for。模式卡 kong/patterns/cff.md 里给了两个完整案例被压扁成 5 个状态的 XOR 解密函数还原后只剩 3 行干净代码。2️⃣ 虚假控制流 BCF用 z3 证明假分支是假的识别特征永远为真或永远为假的分支条件不透明谓词例如(x * (x 1)) % 2 0连续整数之积必为偶数死分支里塞满垃圾代码。击破方式这是让数学引擎做数学的事的典范。LLM 调用simplify_expression工具kong/symbolic/simplifier.py 用 z3 SMT 求解器数学地证明条件恒真或恒假再调用eliminate_dead_codekong/symbolic/dead_code.py机械地删掉死分支。没有猜测、没有幻觉——结论全部来自形式化证明。3️⃣ 指令替换代数等价还原原貌识别特征a ^ b被写成(~a b) | (a ~b)a b被写成(a ^ b) 2 * (a b)-a被写成~a 1而且这些替换可以层层嵌套。击破方式同一个 z3 工具能把任意等价形式化简到规范形。当 LLM 看到化简后的表达式发现函数主体只剩return a ^ b;命名就水到渠成。模式卡 kong/patterns/instruction_sub.md 还附了一张常见替换恒等式速查表帮 LLM 快速识别嵌套替换。4️⃣ 字符串加密把 XOR 墙变回明文识别特征一串0x2a, 0x27, 0x2e, ...的非 ASCII 字节数组紧跟buf[i] ^ key循环最后传给puts/strcmp等字符串函数。击破方式密钥是常量时Kong 可以静态解密字符串并把明文直接以注释形式标注在调用点若是独立的解密助手函数就给它命名如xor_decrypt_string。配合identify_crypto_constants工具顺带扫描已知算法常量AES S-box、SHA-256 初始值等还能分辨这是解密例程还是真加密逻辑。详见 kong/patterns/string_encrypt.md。5️⃣ VM 保护诚实标记拒绝乱改识别特征while(1)循环 大 switch 分发器switch 变量来自数据指针*vip每个 case 是 push/pop/add 这类通用小操作。击破方式把 VM 字节码完整 lifting 回原生语义属于研究级难题Kong 的策略是诚实且克制检测 dispatcher 模式、枚举 handler 表与虚拟操作码、将函数标记为vm_protected并给出低置信度同时汇报 handler 数量与字节码规模估算。关键价值是不误判——kong/patterns/vmprotect.md 专门教 Agent 区分 VM 与 CFFCFF 的状态变量是大十六进制常量且包含真实逻辑VM 的分发变量来自数据指针且 case 全是通用操作。反混淆背后的工具箱Agent 的 6 件确定性武器反混淆阶段暴露给 LLM 的工具全部定义在 kong/llm/tools.py执行结果确定、可验证、可审计工具作用主攻技术simplify_expressionz3 化简表达式、判定不透明谓词BCF、指令替换eliminate_dead_code依据谓词结论删除死分支BCFtrace_state_machine从 Ghidra IR 提取 CFF 状态转移图CFFidentify_crypto_constants匹配已知加密算法常量字符串加密、加密代码get_decompilation重新拉取最新反编译结果全部get_basic_blocks获取基本块与控制流图全部系统提示词kong/agent/prompts.py规定了工作方式先读混淆知识卡 → 调工具验证 → 混淆剥离后才产出命名与类型。每次工具调用都会记入事件日志输出的events.log整个过程完全可追溯。上手体验最快跑通 Kong 反混淆管道# 安装 Kong uv pip install kong-re # 配置 API KeyAnthropic / OpenAI 任选其一 export ANTHROPIC_API_KEYsk-ant-... # 首次运行配置向导自动检测 Ghidra 与 JDK kong setup # 分析一个混淆二进制 kong analyze ./path/to/obfuscated_binary也可以从源码运行git clone https://gitcode.com/gh_mirrors/kong6/kong cd kong uv sync uv run kong analyze ./path/to/obfuscated_binary结果写入./kong_output_{binary_name}/analysis.json包含全部恢复的函数名、类型与参数events.log是流水线完整执行轨迹含每次反混淆工具调用。仓库根目录还附了一份示例输出 kong_output_liblzma/liblzma_analysis.json可以直观看到恢复效果。总结三处关键设计先识别再动手启发式分类决定加载哪张模式卡LLM 不盲猜让数学引擎说话凡可判定的结论不透明谓词、等价表达式都交给 z3 证明LLM 只负责需要语义理解的环节诚实面对边界VM 保护标记为已识别、未提升而不是硬着头皮乱改。这三点把AI 反混淆从演示变成了可落地、可审计的逆向工程管道。赞分享【免费下载链接】kongThe worlds first agentic reverse engineer.项目地址https://gitcode.com/gh_mirrors/kong6/kong点击查看免费下载相关推荐突破Android混淆壁垒Sentry反混淆技术深度解析突破Android混淆壁垒Sentry反混淆技术深度解析 你是否遇到过这样的困境Android应用上线后崩溃日志全是 a.b.c.d 这样的无意义函数名作可观测性APM异常检测日志分析后端前端终极代码混淆与反混淆实战指南使用capa快速识别恶意软件隐藏能力终极代码混淆与反混淆实战指南使用capa快速识别恶意软件隐藏能力 在当今数字化时代恶意软件开发者越来越多地使用代码混淆技术来隐藏其恶意行为给安全分析带来巨网络安全应用安全NETReactorSlayer突破性.NET反混淆技术深度解析NETReactorSlayer突破性.NET反混淆技术深度解析 在.NET程序保护技术日益复杂的今天Eziriz .NET Reactor作为业界广泛使用逆向工程应用安全创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考