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. 即刻获得全面的安全分析 ![Usage](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/0b18f3619f213317.gif) ## 功能特性 - ✅ **多种格式** - 单一界面支持 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报告查看器, 上游代理, 二进制分析, 云安全监控, 云安全运维, 云资产清单, 免安装, 可视化界面, 堆栈保护, 恶意软件分析, 数据可视化, 本地处理, 沙箱逃逸检测, 浏览器工具, 网络安全, 网络流量审计, 逆向工程, 通知系统, 通知系统, 防御识别, 隐私保护, 静态分析