新闻详情

新闻详情

首页 / 资讯中心 / 详情

逆向工程好帮手:QuickBMS的Capstone反汇编与ASM类型多架构解析指南

发布时间:2026/11/12 22:42:10来源:尧图网络
逆向工程好帮手:QuickBMS的Capstone反汇编与ASM类型多架构解析指南
逆向工程好帮手QuickBMS的Capstone反汇编与ASM类型多架构解析指南【免费下载链接】QuickBMSQuickBMS by aluigi - Github Mirror项目地址: https://gitcode.com/gh_mirrors/qui/QuickBMSQuickBMS 是一款由 aluigi 开发的开源跨平台逆向提取引擎除了海量解包脚本外它还内置了基于Capstone 反汇编框架的汇编指令解析能力。只需在 BMS 脚本中声明ASM等数据类型QuickBMS 就能自动把文件中的机器码翻译成人类可读的汇编指令并覆盖 x86、ARM、MIPS、PPC 等13 种多架构指令集。本文带你快速看懂它的反汇编引擎架构与 ASM 类型用法。上图展示了 Capstone 反汇编引擎解析 x86 指令的效果上方面板可切换 x86 16/32/64 位、Arm、Arm 64 模式下方还列出了操作数、SIB、前缀等指令细节。为什么提取工具里要内置反汇编引擎逆向游戏资源和二进制文件时我们常常需要回答这些问题 这段文件里的代码片段是什么指令是jmp跳转还是call调用压缩包内嵌的可执行代码是 16 位还是 64 位是大端还是小端能否在脚本里自动识别指令类型再决定不同的解包分支QuickBMS 的解包脚本语言BMS把读取一个字段的类型抽象成了一条get VAR TYPE命令而它的类型系统里内置了一整组ASM 汇编类型——用类型代替独立工具一条命令即可完成反汇编这对批量处理数百种文件格式的逆向工程师来说非常高效。三套引擎协作Capstone 是默认选择核心实现在 src/types.c#L514-L642 的quickbms_disasm()函数中按编译宏分三层Capstone默认多架构反汇编框架源码完整内嵌在 src/libs/capstone/ 目录官方说明见 src/libs/capstone/README.md主程序通过 src/quickbms.c#L68 引入capstone/capstone.hOllyDbg 引擎ENABLE_OLLYDBGx86 32 位专用的高速反汇编器支持 FPU、MMX、3DNow、SSE1–SSE4.1 与 AVX源码见 src/disasm/disasm.c 和 src/disasm/disasm.hBEA 引擎ENABLE_BEAENGINE可选的备用方案。配套的汇编器位于 src/disasm/assembl/assembl.c由 src/types.c#L494-L510 的quickbms_asm()调用——也就是说 QuickBMS 不仅能反汇编读指令还能把汇编文本汇编回机器码写回文件这对修改嵌入式代码段的逆向场景很有用。13 种 ASM 类型与架构映射一览所有 ASM 类型常量集中定义在 src/defs.h#L175-L187脚本中的分派逻辑见 src/file.c#L4207-L4223。类型到 Capstone 架构/模式的映射如下 ⚙️BMS 脚本类型Capstone 架构运行模式典型用途asmX8632 位默认解析 DOS/Win32 代码段asm16X8616 位老游戏、DOS 可执行文件asm64X8664 位Win64/Linux x86_64 代码armARMARM 模式移动端/嵌入式代码arm_thumbARMThumb 模式16 位压缩指令arm64ARM64ARM 模式64 位 ARMAARCH64mips/mips64MIPS32 / 64 位PS2、路由器等 MIPS 设备ppc/ppc64PPC32 / 64 位Xbox、老款 Apple 设备sparcSPARC—Sun 系服务器代码syszSystemZ—IBM 大型机xcoreXCore—嵌入式多核场景两个值得注意的细节 ✅字节序自动处理quickbms_disasm()会根据脚本当前的Endian状态自动给模式加上CS_MODE_LITTLE_ENDIAN或CS_MODE_BIG_ENDIAN见 src/types.c#L614-L618解析大端平台如 PPC代码时无需手动转换句柄复用只有当 ASM 类型发生变化时才会重新调用cs_open()打开新句柄循环解析时性能损耗很小。在 BMS 脚本中一行读取指令实际使用非常直观以判断文件当前偏移处是否为 x86 跳转指令为例get INSN asm # 反汇编当前偏移处的第一条指令存入 INSN print 指令: %INSN% if INSN blike jmp* print 发现跳转指令可能需要分析跳转目标 endif把asm换成arm、arm64、mips等任意类型即可切换到对应架构。解析失败的边界由引擎内部处理脚本无需额外判空。适合用 Capstone 反汇编的 3 类逆向场景代码段识别从游戏 PAK/ARC 包中解出的未知数据先用get读几条指令验证它到底是不是可执行代码架构探测对同一份文件分别用asm16/asm64/arm试探配合输出结果快速锁定目标平台与位宽补丁定位结合 OllyDbg 引擎的 x86 32 位能力与汇编器写回能力在脚本内完成定位 → 反汇编 → 替换 → 汇编回写的闭环。总结QuickBMS 把 Capstone 反汇编框架、OllyDbg x86 引擎和轻量汇编器整合进统一的 BMS 类型系统用 13 种 ASM 类型覆盖了主流硬件架构让在解包脚本里做反汇编变成了一条get命令的事。想要深入了解引擎细节可以从 src/types.c、src/disasm/disasm.c 和 src/libs/capstone/cstool/cstool.c 三个入口入手它们分别对应类型分派、x86 引擎、Capstone 官方命令行示例工具。【免费下载链接】QuickBMSQuickBMS by aluigi - Github Mirror项目地址: https://gitcode.com/gh_mirrors/qui/QuickBMS创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

【外设】之大彩串口显示屏 2026/11/11 13:52:51

【外设】之大彩串口显示屏

大彩串口屏初步使用 1 .官网下载 STM32 屏幕 GUI 设计资料 http://www.gz-dc.com/category/typeid/4112 找到 STM32 Keil 工程,移植相关代码因项目而异进行移植,由于项目简单,本人只对用到的指令接口进行修改。 比如:注意事项&…

阅读更多 →
无法下载Windows系统iso文件 2026/11/10 19:42:40

无法下载Windows系统iso文件

当我遇到这个问题的时候,我打开了一个网站: 登录 然后我打算下载的时候: 突然那个官方的连接就可以下载了:

阅读更多 →
【清华代码熊】DeepSeek V4.1 Flash 后训练详解 2026/11/12 9:50:02

【清华代码熊】DeepSeek V4.1 Flash 后训练详解

📌 上期解析了 DeepSeek V4.1 Flash 模型架构改进,本期解析 DeepSeek V4.1 Flash 预训练/后训练技术: 🌟 预训练:45T 文本 多模态混合语料、直接训练 sparse attention(取消 DeepSeek V4 的 dense 冷启动&…

阅读更多 →
Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ... 2026/11/12 9:25:38

Shuffle-R1: Efficient RL framework for Multimodal Large Language Models via Data-centric Dynamic ...

文章主要内容和创新点 主要内容 本文聚焦于多模态大语言模型(MLLM)强化学习(RL)训练中的效率问题,提出了一个名为Shuffle-R1的框架。研究发现,当前RL训练存在两个关键缺陷: 优势值坍缩(Advantage Collapsing):批次中大多数优势值集中在零附近,导致有效梯度信号被淹…

阅读更多 →
PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction 2026/11/12 15:57:44

PRvL: Quantifying the Capabilities and Risks of Large Language Models for PII Redaction

一、文章主要内容总结 本文聚焦于利用大型语言模型(LLMs)实现个人身份信息(PII)脱敏的研究,旨在解决传统脱敏方法(如基于规则的系统、领域特定命名实体识别(NER)模型)泛化能力差、跨格式/跨语境适应性弱的问题。 研究通过全面评估多种LLM架构(包括密集型LLM(D-LLM…

阅读更多 →
LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model 2026/11/10 17:14:10

LLaVA-RE: Binary Image-Text Relevancy Evaluation with Multimodal Large Language Model

文章主要内容和创新点 主要内容 本文聚焦于二进制图像-文本相关性评估任务(判断图像与文本“相关”或“不相关”),针对该任务中文本格式多样、相关性定义随场景变化等挑战,提出了基于多模态大语言模型(MLLM)的解决方案LLaVA-RE。 模型设计:LLaVA-RE基于LLaVA 1.5架构,…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉