trailofbits/checksec-anywhere
GitHub: trailofbits/checksec-anywhere
基于WebAssembly的浏览器端二进制安全特性分析工具,支持ELF/PE/Mach-O格式,无需安装即可本地分析并生成可分享报告。
Stars: 18 | Forks: 2
# 🛡️ Checksec Anywhere:无界构建 Checksec
在浏览器中即时分析二进制安全特性。无需下载,无需上传,无需账号。
**[立即体验](https://checksec-anywhere.com/)**
## 30 秒上手
1. 在浏览器中打开 [https://checksec-anywhere.com/](https://checksec-anywhere.com/)
2. 拖放你的二进制文件
3. 即刻获得全面的安全分析

## 功能特性
- ✅ **多种格式** - 单一界面支持 ELF、PE 和 Mach-O
- ✅ **无需安装** - 使用 WASM 在浏览器本地运行
- ✅ **全面报告** - 包含你所熟知的所有属性及更多内容
- ✅ **批量处理** - 拖放整个目录
- ✅ **结果可分享** - 为任意报告生成静态 URL
- ✅ **选项卡界面** - 通过直观的 UI 同时管理多个分析任务
- ✅ **SARIF 导出** - 下载行业标准的报告格式
## 性能表现
对 `/usr/bin` 中 699 个文件的分析性能:
| 工具 | 处理时间 |
|----------|----------|
| checksec (bash) | 14.355s |
| checksec (go) | 0.804s |
| Checksec Anywhere (browser) | 2.777s |
## 架构设计
### 项目结构
```
checksec-anywhere/
├── checksec.rs/ # Core library + CLI tool (fork of checksec.rs)
├── checksec-wasm/ # WebAssembly bindings for browser
├── frontend/ # Web application
```
### 核心库 (`checksec.rs/`)
Checksec Anywhere 的核心基于 [checksec.rs](https://crates.io/crates/checksec),并进行了以下增强:
- **统一 API**:库和 CLI 工具集成在一个 crate 中
- **增强检查**:额外的安全分析功能:
- 对 PE 二进制文件进行细粒度反汇编以进行 GS 检测
- 检查 ELF program headers 中数据和代码的混合情况
- Address Sanitizer 检测
- 以及更多!
- **SARIF 导出**:行业标准的安检报告格式
- **压缩功能**:用于生成可分享结果 URL 的工具
### WebAssembly 绑定 (`checksec-wasm/`)
将核心功能暴露给 JavaScript,包括:
- **`checksec_web(buffer, filename)`** - 主二进制分析函数
- **`checksec_compress(results)`** - 压缩结果以便 URL 分享
- **`checksec_decompress(data)`** - 解压分享的结果
- **`generate_sarif_report(results)`** - 生成 SARIF 格式报告
### 前端 (`frontend/`)
现代 Web 应用程序,提供:
- **隐私优先**:所有处理均在客户端通过 WebAssembly 完成
- **拖放操作**:直观的文件上传,支持目录
- **实时分析**:处理文件时即时反馈
- **可分享 URL**:压缩结果编码在静态 URL 中
- **响应式设计**:支持桌面和移动浏览器
## 开发指南
### 前置条件
- Rust 工具链及 `wasm32-unknown-unknown` 目标
- 用于 WebAssembly 编译的 `wasm-pack`
### 构建命令
```
# 构建 CLI tool
make cli
# 构建 WebAssembly bindings
make wasm
# 同时构建 CLI 和 WASM
make all
# 启动本地开发服务器(优先构建 WASM)
make local_instance
# 运行 tests
make test
# 清理所有构建产物
make clean
```
### 本地开发
```
# 在 http://localhost:8000 启动开发服务器
make local_instance
```
标签:AI工具, ASLR, Checksec, DAST, DEP, DevSecOps, DNS 反向解析, ELF, Mach-O, PE, Rust, SARIF, WASM, WebAssembly, Web报告查看器, 上游代理, 二进制分析, 云安全监控, 云安全运维, 云资产清单, 免安装, 可视化界面, 堆栈保护, 恶意软件分析, 数据可视化, 本地处理, 沙箱逃逸检测, 浏览器工具, 网络安全, 网络流量审计, 逆向工程, 通知系统, 通知系统, 防御识别, 隐私保护, 静态分析