BarmaleiDB-infosec/ChainScout

GitHub: BarmaleiDB-infosec/ChainScout

ChainScout 是一个支持以太坊、Solana、BSC、Polygon 四条链的自动化智能合约安全扫描平台,结合 Slither 静态分析与 AI 报告生成,帮助开发者快速发现常见合约漏洞并评估 dApp 攻击面。

Stars: 0 | Forks: 0

# ChainScout — 自动化智能合约安全扫描器

MVP Status License Security Detectors Chains AI Engine

**ChainScout** 是一个用于 Web3 项目自动化安全分析的开源平台。 支持**以太坊智能合约**、**Solana 程序**和 **dApp/Web3 应用**,并提供基于 AI 的报告。 image image ## 功能介绍 1. **智能合约分析** — 粘贴合约地址,获取完整的安全报告 2. **Solana 程序扫描** — 分析链上程序的可升级性风险 3. **DApp / Web3 攻击面分析** — 检测钱包 SDK、签名提示、链上门控 4. **基于 AI 的报告** — 通过 OpenRouter (Claude GPT-4o-mini) 生成详细的审计报告 5. **Slither 集成** — 针对 Solidity 合约的基于 AST 的深度分析 6. **风险评分** — 0-100 权重漏洞评分 ## 漏洞检测(7 大类别) | # | 类别 | 严重程度 | 描述 | |---|----------|----------|-------------| | 1 | **重入攻击** | HIGH | 修改状态的外部调用(违反 CEI 模式) | | 2 | **整数溢出/下溢** | MEDIUM | 未使用 SafeMath/Solidity 0.8+ 的算术运算 | | 3 | **tx.origin 误用** | HIGH | 容易受到网络钓鱼攻击的授权 | | 4 | **未检查的调用** | HIGH | 未验证返回值的低级调用 | | 5 | **Delegatecall 误用** | CRITICAL | 通过 delegatecall 进行的代码注入 | | 6 | **访问控制问题** | CRITICAL | 缺少权限检查 | | 7 | **时间戳依赖** | LOW | 可被矿工操纵的时间戳 | ## 快速开始 (Docker Compose) ### 前置条件 - Docker & Docker Compose - [Supabase](https://supabase.com) 项目(免费版) - [Etherscan](https://etherscan.io/apis) API 密钥(免费) - [OpenRouter](https://openrouter.ai) API 密钥(可选,用于 AI 报告) ### 1. 克隆与配置 ``` git clone https://github.com/BarmaleiDB-infosec/ChainScout.git cd ChainScout cp .env.example .env # 使用你的密钥编辑 .env ``` ### 2. 启动 ``` docker compose up -d ``` ### 3. 验证 ``` curl http://localhost/health # → {"status":"ok","service":"chainscout-api"} ``` 在浏览器中打开 **http://localhost**。 ## 系统架构 ``` ┌─────────────────┐ │ React App │ Port 5173 (dev) / 80 (prod via Nginx) │ (Vite + TS) │ └────────┬────────┘ │ ┌────▼────┐ │ Nginx │ Reverse Proxy, Rate Limiting, Security Headers │ :80/443 │ └────┬────┘ │ ┌────▼─────────┐ │ Node.js API │ Express, JWT Auth, Scan Orchestration │ :4000 │ └────┬─────────┘ │ ┌────┴──────────────────────┐ │ │ ┌───▼──────┐ ┌────────▼────────┐ │ Supabase │ │ Security Engine │ │ Auth + DB│ │ • 7 Detectors │ │ RLS │ │ • Slither (AST) │ └──────────┘ │ • Infura (RPC) │ │ • Solana Client │ │ • OpenRouter AI │ └─────────────────┘ ``` ## API 端点 ### 身份验证 | Method | Endpoint | Description | |--------|----------|-------------| | POST | `/api/auth/register` | 创建账户 | | POST | `/api/auth/login` | 登录,返回 JWT | ### 扫描 | Method | Endpoint | Description | |--------|----------|-------------| | POST | `/api/scans` | 发起新扫描 | | GET | `/api/scans/:id` | 获取扫描状态/结果 | | GET | `/api/scans/recent` | 列出最近的扫描 | | POST | `/api/solana/scan` | 扫描 Solana 程序 | ### 健康检查 | Method | Endpoint | Description | |--------|----------|-------------| | GET | `/health` | 服务状态 | ## 安全机制 | 功能 | 实现 | |---------|---------------| | **行级安全** | Supabase RLS 策略 | | **JWT 身份验证** | 所有端点使用 Bearer 令牌 | | **速率限制** | Nginx 级别(身份验证 10 次/分钟,扫描 1 次/分钟) | | **CORS** | 仅限白名单源 | | **SSRF 防护** | 阻断私有 IP 段 | | **输入验证** | 地址格式、文件类型检查 | | **安全响应头** | CSP, HSTS, X-Frame-Options, X-Content-Type-Options | ## 技术栈 | 层级 | 技术 | |-------|-----------| | Frontend | React 18, TypeScript, Vite, TailwindCSS, shadcn/ui | | Backend | Node.js, Express | | Database | PostgreSQL (Supabase) | | Auth | Supabase Auth + JWT | | AI | OpenRouter (Claude / GPT-4o-mini) | | Analysis | Slither, Custom Heuristics, Etherscan V2 API, Infura RPC, Solana RPC | | Infra | Docker, Nginx, GitHub Actions | ## 环境变量 | 变量 | 必需 | 描述 | |----------|----------|-------------| | `SUPABASE_URL` | 是 | Supabase 项目 URL | | `SUPABASE_SERVICE_KEY` | 是 | Supabase 服务角色密钥 | | `VITE_SUPABASE_PUBLISHABLE_KEY` | 是 | Supabase 匿名密钥 | | `ETHERSCAN_API_KEY` | 是 | Etherscan API 密钥 | | `OPENROUTER_API_KEY` | 否 | OpenRouter API 密钥(用于 AI 报告) | | `INFURA_API_KEY` | 否 | Infura RPC 密钥 | ## 部署 生产环境检查清单: - [ ] 用 Let's Encrypt 替换自签名 SSL 证书 (`certbot --nginx`) - [ ] 设置 `NODE_ENV=production` - [ ] 启用防火墙:`ufw allow 22 && ufw allow 80 && ufw allow 443 && ufw enable` - [ ] 配置监控(CPU > 80%,RAM > 90%,磁盘 > 85%) - [ ] 设置数据库备份 ## ⚠️ 免责声明 ChainScout 是一款**自动化分析工具**,**不应**替代专业的安全审计。自动化扫描可能会遗漏复杂的漏洞。请务必: - 由专业公司对关键合约进行审计 - 在主网部署前在测试网进行全面测试 - 结合安全专业知识审查生成的报告 ## 许可证 MIT 许可证 **由 ChainScout 团队构建 | MVP 就绪 — 2026 年 5 月**
标签:AI安全报告, CISA项目, Claude, CVE检测, dApp安全, GPT-4o-mini, MITM代理, OpenRouter, Polygon, Slither, Solana, Solidity, Web3安全, Web3开发, 以太坊, 加密, 加密货币安全, 区块链安全, 去中心化应用, 合约地址分析, 实时处理, 币安智能链, 整数溢出, 智能合约审计, 测试用例, 漏洞扫描器, 网络安全, 自动化攻击, 自动化漏洞扫描, 请求拦截, 配置错误, 重入攻击检测, 链上程序分析, 错误基检测, 隐私保护, 静态代码分析, 风险评分