Gladskih/binary101
GitHub: Gladskih/binary101
一个纯浏览器端运行的二进制文件结构分析工具,支持数十种文件格式的深度解析、哈希计算与内容预览,所有操作本地完成无需联网。
Stars: 0 | Forks: 0
# Binary101
Binary101 是一个基于浏览器的静态 Web 应用程序,用于检查二进制文件。该应用程序完全在浏览器中使用 TypeScript/JavaScript(ES 模块)运行,并通过 Vite 构建为静态站点。目前不包含任何服务器端代码。
## 灵感与目的
该项目从 [regex101](https://regex101.com/)、Linux `file` 工具和 VirusTotal 等工具中汲取了灵感。它专为教育和研究目的而设计,可帮助用户理解二进制文件的结构和格式。通过在浏览器中本地分析文件,它确保了隐私和安全,非常适合处理敏感文件。
## 功能
- **深度分析器**:提供针对 PE/COFF (PE32/PE32+)、MS-DOS MZ、
ELF 32/64、Mach-O (32/64/FAT)、PNG、BMP、TGA、JPEG、GIF、WebP (RIFF)、
WAV (RIFF)、AVI (RIFF)、ANI (RIFF)、ASF (WMV/WMA)、WebM/Matroska、
MP4/QuickTime/3GP (ISO-BMFF)、MPEG Program Stream (MPEG-PS)、PCAP、PCAP-NG、gzip、PDF、TAR、ISO-9660、ZIP
(DOCX/XLSX/PPTX/OpenXML)、7z、RAR v4/v5、MP3、FLAC、FB2、SQLite、LNK 的详细视图。
- **PE 限制**:CodeView/PDB 提取目前仅支持 RSDS;尚未解码 `NB10`
及其他旧版 `NBxx` CodeView 记录。缺失的
`.pdata` 格式包括 32 位 MIPS、Windows CE ARM/PowerPC/SH3/SH4 和
Itanium。
- **指令集检测**:针对 x86/x86-64 架构上的 ELF 和 PE,应用程序可以
分析采样的可达代码,并报告其使用的指令集扩展。
- **检测/标签支持**:text/HTML/XML/SVG/JSON/RTF/shebang、TIFF、ICO/CUR、
bzip2/XZ/LZ4/Zstandard、CAB、OGG/AIFF/MIDI/AMR/AC3/DTS、FLV、MPEG-TS、
RealMedia、Java class、Android DEX、WebAssembly、Windows Help (HLP)、PDB、
DjVu、Microsoft Compound File (DOC/XLS/PPT/MSI/CHM)、HEIF/HEIC,
以及基于 ZIP 的 FB2、ODT/ODS/ODP、EPUB、DOCX/XLSX/PPTX/OpenXML、
APK、VSIX、JAR/WAR/EAR/JMOD 和 XPS 标签。
- **渲染**:支持音频/视频/图像类型的预览。
- **哈希计算**:在浏览器中计算 SHA-256 和 SHA-512。
- **隐私保护**:分析过程不上传文件或进行网络调用。
## 使用方法
- 将文件拖放到页面上,粘贴文件,或使用文件选择器。
- 查看文件结构的详细分析和计算出的哈希值。
## 开发
- `npm run dev` — 启动 Vite 开发服务器。
- `npm run build` — 在 `dist/` 目录中创建生产构建。
- `npm run preview` — 在 `http://127.0.0.1:4173` 上本地提供构建的站点服务。
## 项目结构(高层概览)
- `index.html` & `style.css` — Vite HTML 入口和页面样式。
- `app.ts` — UI 连接:文件选择、哈希计算、分发至分析器和渲染器;Vite 会将其打包到 `dist/assets/` 中。
- `analyzers/` — TypeScript 二进制格式检测和解析器。PE/COFF 逻辑
位于 `analyzers/pe/` 目录下,并拆分为多个小模块(headers、
imports/exports、resources、TLS、CLR、relocations、Authenticode、exception
data 等);CodeView 调试解析目前仅支持 RSDS,部分
`.pdata` 变体仍尚未实现。
- `renderers/` — 用于解析结构的 TypeScript HTML 渲染器。PE 渲染器
位于 `renderers/pe/` 目录下,并拆分为 headers、directory views、resources 和 layout/sanity views。
- `binary-utils.ts`、`html-utils.ts` — 用于哈希计算、字节/十六进制格式化和安全 HTML 生成的共享辅助工具。
## 贡献
请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)
## 许可证
该项目采用 MIT 许可证授权。详情请参见 `LICENSE`。
标签:CMS安全, DAST, ELF分析, ES Modules, JavaScript, Mach-O分析, PE分析, SHA-256, SHA-512, TypeScript, Vite, Wayback Machine, 二进制分析, 二进制发布, 云安全运维, 反汇编, 可执行文件, 哈希计算, 多媒体渲染, 多媒体预览, 安全插件, 开源工具, 恶意软件分析, 指令集检测, 教育工具, 数字取证, 数据可视化, 文件格式识别, 文件结构解析, 无服务端, 本地文件分析, 浏览器端, 网络信息收集, 网络安全, 网络安全, 自动化攻击, 自动化脚本, 隐私保护, 隐私保护, 零上传, 静态分析工具, 静态网站