工具
PLASMA 交互式反汇编器
交互式终端反汇编器,旧名 Reverse,支持 x86 与 x86-64,并部分支持 ARM 和 MIPS/MIPS64,可读取 ELF、PE 和原始二进制。其可视化模式以缩进、着色的伪代码显示函数,分析者可通过反转条件跳转来调整控制流;Python API 可运行脚本,用于提取字符串、生成交叉引用调用图、检测加密常量以及调用 Keystone 汇编。项目自 2019 年起停止开发,仓库没有发布版本。
- 目标
- 二进制
- 类别
- 原生分析工具
- 关联
- 基础工具
- 来源复核于
使用条件与局限
- 已停止维护:master 分支最后一次提交 ec7df9b 的日期为 2019-03-04,没有发布版本或标签;GitHub 未将该仓库标为归档。README 仍称项目处于大规模开发中,并提醒在实现结构体和类型定义之前,数据库格式可能不兼容。
- 需要 Python 3.4+、Capstone(install.sh 从源码构建 4.0-alpha5)、pyelftools、pefile 及 python3-future、msgpack-python 0.4.6+、binutils 中的 c++filt,以及支持 UTF-8 和 256 色的终端;内存映射所需的 python-qt4 和 asm.py 所需的 Keystone 为可选项。Dockerfile 基于 Ubuntu 16.04,这些旧版本依赖未在当前的 Python 或 Capstone 版本上测试。
- make 运行回归测试,将附带测试二进制的输出与预期的 .rev 清单比对;tests/ 中有 96 个小型已编译测试二进制,大多附有 C 源码。分析对象是使用者自己的二进制;本次审阅未分析任何二进制,也未运行测试。
- 采用 GPL-3.0;取自 angr cle 项目的重定位定义保留其 BSD 风格许可证。
关于此条目
说明已依据一手来源复核;这不代表已运行验证、经过安全审计或确认兼容。
一手来源
- README.md GitHub · plasma-disassembler/plasma · 修订 ec7df9b
- install.sh GitHub · plasma-disassembler/plasma · 修订 ec7df9b
- requirements.txt GitHub · plasma-disassembler/plasma · 修订 ec7df9b
- Dockerfile GitHub · plasma-disassembler/plasma · 修订 ec7df9b
- Makefile GitHub · plasma-disassembler/plasma · 修订 ec7df9b
- tests GitHub · plasma-disassembler/plasma · 修订 ec7df9b
- plasma/scripts GitHub · plasma-disassembler/plasma · 修订 ec7df9b
- plasma/lib/fileformat/relocations/LICENSE GitHub · plasma-disassembler/plasma · 修订 ec7df9b
- LICENSE GitHub · plasma-disassembler/plasma · 修订 ec7df9b