在线逆向工具
一组各管一件事的小工具,帮你先看清一个文件:它是什么、声明了什么、哪里会被拒。每个工具都是静态页面,用 JavaScript 或 WebAssembly 在你自己的浏览器里解析文件。
文件不离开你的浏览器. 站点没有任何上传接口。解析在本地的 Web Worker 中完成,你可以在浏览器的网络面板里确认没有数据发出。
可用 19
Android
APK/AAB 分析与上架体检
读取 APK 或 AAB 的 Manifest、原生库和签名证书,检查 16 KB 对齐、targetSdk 等最常卡住 Google Play 发版的规则。
区块链
EVM 合约函数选择器提取
粘贴已部署合约的字节码,列出全部 4 字节函数选择器,并用编译成 WebAssembly 的 EVMole 推断参数类型和状态可变性,不需要 ABI 或验证过的源码。
区块链
EVM 字节码反汇编
粘贴 EVM 字节码,得到按地址标注的操作码清单,单独解码 Solidity 的 CBOR 元数据尾部(solc 版本、IPFS/bzzr 哈希),并列出分发器中的函数选择器。全程在浏览器本地运行。
WebAssembly
WASM 模块分析 / WASM 转 WAT
打开 .wasm 文件,查看导入、导出、函数、内存和自定义段,并用 wabt 转成可读的 WAT 文本。
.NET
.NET 程序集元数据与 IL 查看器
不运行程序就能检查 .NET DLL 或 EXE:PE/CLI 头、类型和成员表、引用的程序集,以及每个方法的 IL。
HAR / SAZ
HAR / Fiddler SAZ 接口归纳
载入 HAR 或 Fiddler SAZ 抓包文件,按域名和接口路径归纳请求,列出每个接口出现过的方法、状态码、查询参数和请求体字段。
Electron
ASAR 解包与 Electron IPC 分析
在浏览器里解开 Electron 的 app.asar,浏览其中文件,并列出主进程与渲染进程之间的 IPC 通道和 preload 暴露的接口。
Source map
JS bundle 与 source map 还原
用 source map 的 sourcesContent 重建原始源码目录并打包下载,并把压缩后 bundle 中的位置或报错堆栈映射回原始文件、行号和名称。
ELF / PE / Mach-O
原生二进制概览(ELF/PE/Mach-O)
不运行程序就能识别 ELF、PE 或 Mach-O 文件:架构、文件头、带熵值的节区、导入导出符号、NX/PIE/RELRO/ASLR 等加固标志,以及可打印字符串。
Java / JAR
Java class / JAR 版本检查
查 .class、JAR、WAR、EAR 或 AAR 需要哪个 Java 版本:逐类读出 class 文件版本(含嵌套 jar)、多版本分层、module-info 和构建 JDK,还能解读 UnsupportedClassVersionError 报错。
Protobuf / gRPC
Protobuf 解码(无需 .proto)
把以十六进制、base64 粘贴或以文件打开的 protobuf、gRPC、gRPC-Web 二进制 body 解成字段号和值,输出与 protoc --decode_raw 完全一致,另有列出各种可能解读的树形视图。
Keystore / SHA-1
签名证书指纹查看(keystore / APK)
读取 .jks、.keystore、.p12、.pfx 密钥库、APK/AAB 或证书文件里的证书,给出 SHA-1、SHA-256 和 MD5 指纹,并按 Firebase、Google 登录和 Facebook 要求的冒号、无冒号和 Base64 格式列出,不用装 keytool。
X.509
X.509 证书解析
粘贴 PEM 证书或证书链,或拖入 DER、CRT、CER 文件,查看全部字段和扩展(SAN、密钥用法、EKU、基本约束、AKI/SKI、AIA、CRL、SCT),检查证书链顺序,并显示每张证书当前是否在有效期内。
魔数 / 十六进制
文件类型识别与十六进制查看器
按魔数判断未知文件是什么格式,给出依据所在的偏移和可信度;再扫描内嵌签名、画出熵图、提取字符串,并在十六进制视图里查看任意字节。几 GB 的文件也能处理。
R8 / ProGuard
R8 / ProGuard 堆栈还原(retrace)
粘贴混淆后的 Android 或 Java 崩溃堆栈,选择那次构建的 mapping.txt,还原出原始类名、方法名和行号,内联帧也会展开。输出与 Google 官方 retrace 一致。
反混淆
JavaScript 反混淆与反压缩
把压缩过或 obfuscator.io 风格混淆的 JavaScript 还原成可读代码:解开字符串数组,撤销控制流与死代码混淆,重命名 _0x 变量,并把 webpack、browserify 打包拆成模块。
iOS / IPA
iOS 描述文件与 IPA 查看器
在浏览器里读取 .mobileprovision 或 .ipa:描述文件类型、过期时间、团队、设备和证书,Info.plist 与隐私清单,以及可执行文件签入的 entitlements,并与描述文件逐项比对。
plist
二进制 plist 查看与 NSKeyedArchiver 解码
打开二进制 plist(bplist00)或 XML plist,得到与 plutil -convert xml1 一致的 XML 和 JSON;NSKeyedArchiver 归档会还原成对象图。
Android
AndroidManifest.xml 与 resources.arsc 解码
把二进制 AndroidManifest.xml(AXML)、编译后的 res/*.xml 或 resources.arsc 还原成可读 XML。拖入 APK 或 AAB 会直接取出 Manifest,并把资源 ID 换成名称。