Lord1Egypt/MaatEye
GitHub: Lord1Egypt/MaatEye
一款跨 24 条 EVM 链的开源智能合约自动化漏洞扫描器,通过 20 种检测模式对海量代币进行安全风险监控。
Stars: 1 | Forks: 0
# 👁️⚖️ MaatEye — 智能合约的永恒守护者
15K+ tokens] --> D[🗄️ Token Registry
Dedup + Incremental] A2[🧾 RPC Event Logs
eth_getLogs Transfer] --> D A3[🔭 Explorer APIs
Etherscan/Blockscout] --> D A4[📚 Known Token Lists
Curated] --> D A5[🦎 DexScreener Boosts
Real-time trending] --> D A6[🦙 DeFiLlama Coin List
500K+ entries] --> D end subgraph "🔍 Scanning Pipeline" D --> E[📡 Source Fetcher
Etherscan/Blockscout/RPC] E --> F[🔬 Static Analyzer
20 Plagues Engine] F --> G[🎯 Pattern Matcher
Regex + Function Sig + AST] end subgraph "🚩 Reporting Layer" G --> H{Threat Found?} H -->|🔴 Critical| I[🚨 Red Flag Issue] H -->|🟡 High| J[⚠️ Advisory Issue] H -->|🟢 Clean| K[📋 Registry Update] I & J & K --> L[📊 Dashboard + Badges] end subgraph "⏰ Schedule" M1[🌅 Daily 08:00 UTC
Cross-Chain Vuln Scan] --> E M2[⚡ Hourly RPC Scan
New token discovery] --> D M3[📅 Weekly Full Scan
All 15K+ tokens] --> E end subgraph "🧠 Self-Evolution" N[🆕 Community Pattern PR] --> O[🧪 CI Validation] O -->|✅ Pass| P[➕ Auto-register Pattern] P --> F end ``` ### 数据流 ``` User / Time Trigger │ ▼ ┌──────────────────────┐ ┌────────────────────┐ ┌──────────────────┐ │ Token Discovery │────▶│ Token Registry │────▶│ Scan Engine │ │ (6 sources, dedup) │ │ (persistent JSON) │ │ (20 patterns) │ └──────────────────────┘ └────────────────────┘ └──────────────────┘ │ ▼ ┌──────────────────────┐ ┌────────────────────┐ ┌──────────────────┐ │ Update README │◀────│ Create GitHub │◀────│ Classify │ │ + Registry │ │ Issue (if vuln) │ │ Severity │ └──────────────────────┘ └────────────────────┘ └──────────────────┘ ``` ## 🚦 快速开始 ### 1. 提交合约 打开一个[合约提交 Issue](https://github.com/Lord1Egypt/MaatEye/issues/new?template=submit_contract.yml) 并附上合约地址。 ### 2. 在本地运行 ``` # Clone git clone https://github.com/Lord1Egypt/MaatEye.git cd MaatEye # 安装 pip install -r requirements.txt # 扫描单个合约 python -m scanner.main scan --address 0x742d35Cc6634C0532925a3b844Bc9e7595f2bD18 # 扫描多个 python -m scanner.main scan --file contracts.txt ``` ### 3. Token 注册表命令 ``` # 从 CoinGecko 导入代币 (15K+ 代币) python -m scanner.main tokens import --coingecko # 从 RPC 事件日志导入 (实时) python -m scanner.main tokens import --rpc # 显示 registry 统计信息 python -m scanner.main tokens stats # 列出新发现的代币 python -m scanner.main tokens new # 导出完整 registry python -m scanner.main tokens export --format json ``` ### 4. 扫描链 ``` # 列出所有支持的链 python -m scanner.main chains # 扫描 BNB Chain 上的顶级代币 python -m scanner.main scan-chain bnb --count 50 --format markdown # 扫描所有 24 条 EVM 链 python -m scanner.main scan-all --tokens-per-chain 20 --format json --output cross_chain.json # 专门从 registry 扫描 python -m scanner.main scan-registry --chain ethereum --limit 100 ``` ## 🌐 支持的链 (24 种 EVM) MaatEye 使用来自 [publicnode.com](https://publicnode.com) 的免费公共 RPC endpoint 扫描 **24 条兼容 EVM 的区块链**。 | # | 链 | Chain ID | Token | 发现来源 | |---|-------|----------|-------|-------------------| | 🔵 | **Ethereum** | 1 | ETH | 🪙🧾🔭📚 | | 🟡 | **BNB Chain** | 56 | BNB | 🪙🧾🔭📚 | | 🟣 | **Polygon** | 137 | MATIC | 🪙🧾🔭📚 | | 🔷 | **Base** | 8453 | ETH | 🪙🧾🔭📚 | | 🌀 | **Arbitrum One** | 42161 | ETH | 🪙🧾🔭📚 | | 🔴 | **Optimism** | 10 | ETH | 🪙🧾🔭📚 | | 🔺 | **Avalanche C-Chain** | 43114 | AVAX | 🪙🧾🔭📚 | | ⬛ | **Linea** | 59144 | ETH | 🪙🔭📚 | | 📜 | **Scroll** | 534352 | ETH | 🪙🔭📚 | | 💥 | **Blast** | 81457 | ETH | 🪙🔭📚 | | 🦉 | **Gnosis** | 100 | xDAI | 🪙🔭📚 | | 🌿 | **Celo** | 42220 | CELO | 🪙🔭📚 | | 🌕 | **Moonbeam** | 1284 | GLMR | 🪙🔭📚 | | 🏛 | **Metis** | 1088 | METIS | 🪙🔭📚 | | 🟨 | **opBNB** | 204 | BNB | 🪙🔭📚 | | 💓 | **PulseChain** | 369 | PLS | 🪙🔭📚 | | ⚙️ | **Mantle** | 5000 | MNT | 🪙🔭📚 | | 🥁 | **Taiko** | 167000 | ETH | 🪙🔭📚 | | 🐻 | **Berachain** | 80094 | BERA | 🪙🔭📚 | | 🌊 | **Soneium** | 1868 | ETH | 🪙🔭📚 | | 🦄 | **Unichain** | 130 | ETH | 🪙🔭📚 | | ⬜ | **Fraxtal** | 252 | frxETH | 🪙🔭📚 | | 🌶 | **Chiliz** | 88888 | CHZ | 🪙🔭📚 | | ⚡ | **Sonic** | 146 | S | 🪙🔭📚 | **Token 发现来源图例:** 🪙=CoinGecko 🧾=RPC 日志 🔭=浏览器 📚=已知列表 ## 🧪 项目状态 | 里程碑 | 状态 | 版本 | |-----------|--------|---------| | 🏗️ 仓库结构与 CI/CD | ✅ 完成 | v0.1 | | 🔴 20 场灾难模式 | ✅ 完成 | v0.2 | | 🌐 支持 24 条 EVM 链 | ✅ 完成 | v0.3 | | 📅 每日跨链扫描 | ✅ 完成 | v0.3 | | 🚩 自动红旗标记 Issues | ✅ 完成 | v0.3 | | 🪙 CoinGecko Token 发现 | ✅ 完成 | v0.4 | | 🧾 RPC 事件日志发现 | ✅ 完成 | v0.4 | | 🗄️ 持久化 Token 存储 | ✅ 完成 | v0.4 | | 📊 Token 注册表 CLI | ✅ 完成 | v0.4 | | 🌐 GitHub Pages 仪表板 | 🚀 进行中 | v0.6 | | 🔬 Slither 集成 | 📅 计划中 | v0.7 | | 🔥 可利用性评分 | 📅 计划中 | v0.8 | | 📬 Telegram/Discord 警报 | 📅 计划中 | v0.9 | | 🌉 非 EVM 支持 | 📅 计划中 | v1.0 | | 🌐 Web 仪表板 | 📅 计划中 | v1.0 | ## 📜 许可证 MIT — 对所有人免费。开源。社区所有。 ## ⚠️ 免责声明 **MaatEye 仅用于防御/教育目的。**它分析公开可用的合约源代码并识别潜在漏洞。用户有责任遵守所有适用的法律和法规。作者不对滥用行为承担责任。 **所有扫描均为只读静态分析。**我们: - ❌ 绝不发送交易 - ❌ 绝不部署合约 - ❌ 绝不利用漏洞 - ✅ 仅从浏览器和 RPC 读取公开数据 ## 🏛️ 玛阿特 (Ma'at) 的哲学
🏛️ 以玛阿特 (Ma'at / ماعت) 命名 — 古埃及神话中代表真理、平衡与正义的女神。
“她将心脏与羽毛相权衡。”
15K+ tokens] --> D[🗄️ Token Registry
Dedup + Incremental] A2[🧾 RPC Event Logs
eth_getLogs Transfer] --> D A3[🔭 Explorer APIs
Etherscan/Blockscout] --> D A4[📚 Known Token Lists
Curated] --> D A5[🦎 DexScreener Boosts
Real-time trending] --> D A6[🦙 DeFiLlama Coin List
500K+ entries] --> D end subgraph "🔍 Scanning Pipeline" D --> E[📡 Source Fetcher
Etherscan/Blockscout/RPC] E --> F[🔬 Static Analyzer
20 Plagues Engine] F --> G[🎯 Pattern Matcher
Regex + Function Sig + AST] end subgraph "🚩 Reporting Layer" G --> H{Threat Found?} H -->|🔴 Critical| I[🚨 Red Flag Issue] H -->|🟡 High| J[⚠️ Advisory Issue] H -->|🟢 Clean| K[📋 Registry Update] I & J & K --> L[📊 Dashboard + Badges] end subgraph "⏰ Schedule" M1[🌅 Daily 08:00 UTC
Cross-Chain Vuln Scan] --> E M2[⚡ Hourly RPC Scan
New token discovery] --> D M3[📅 Weekly Full Scan
All 15K+ tokens] --> E end subgraph "🧠 Self-Evolution" N[🆕 Community Pattern PR] --> O[🧪 CI Validation] O -->|✅ Pass| P[➕ Auto-register Pattern] P --> F end ``` ### 数据流 ``` User / Time Trigger │ ▼ ┌──────────────────────┐ ┌────────────────────┐ ┌──────────────────┐ │ Token Discovery │────▶│ Token Registry │────▶│ Scan Engine │ │ (6 sources, dedup) │ │ (persistent JSON) │ │ (20 patterns) │ └──────────────────────┘ └────────────────────┘ └──────────────────┘ │ ▼ ┌──────────────────────┐ ┌────────────────────┐ ┌──────────────────┐ │ Update README │◀────│ Create GitHub │◀────│ Classify │ │ + Registry │ │ Issue (if vuln) │ │ Severity │ └──────────────────────┘ └────────────────────┘ └──────────────────┘ ``` ## 🚦 快速开始 ### 1. 提交合约 打开一个[合约提交 Issue](https://github.com/Lord1Egypt/MaatEye/issues/new?template=submit_contract.yml) 并附上合约地址。 ### 2. 在本地运行 ``` # Clone git clone https://github.com/Lord1Egypt/MaatEye.git cd MaatEye # 安装 pip install -r requirements.txt # 扫描单个合约 python -m scanner.main scan --address 0x742d35Cc6634C0532925a3b844Bc9e7595f2bD18 # 扫描多个 python -m scanner.main scan --file contracts.txt ``` ### 3. Token 注册表命令 ``` # 从 CoinGecko 导入代币 (15K+ 代币) python -m scanner.main tokens import --coingecko # 从 RPC 事件日志导入 (实时) python -m scanner.main tokens import --rpc # 显示 registry 统计信息 python -m scanner.main tokens stats # 列出新发现的代币 python -m scanner.main tokens new # 导出完整 registry python -m scanner.main tokens export --format json ``` ### 4. 扫描链 ``` # 列出所有支持的链 python -m scanner.main chains # 扫描 BNB Chain 上的顶级代币 python -m scanner.main scan-chain bnb --count 50 --format markdown # 扫描所有 24 条 EVM 链 python -m scanner.main scan-all --tokens-per-chain 20 --format json --output cross_chain.json # 专门从 registry 扫描 python -m scanner.main scan-registry --chain ethereum --limit 100 ``` ## 🌐 支持的链 (24 种 EVM) MaatEye 使用来自 [publicnode.com](https://publicnode.com) 的免费公共 RPC endpoint 扫描 **24 条兼容 EVM 的区块链**。 | # | 链 | Chain ID | Token | 发现来源 | |---|-------|----------|-------|-------------------| | 🔵 | **Ethereum** | 1 | ETH | 🪙🧾🔭📚 | | 🟡 | **BNB Chain** | 56 | BNB | 🪙🧾🔭📚 | | 🟣 | **Polygon** | 137 | MATIC | 🪙🧾🔭📚 | | 🔷 | **Base** | 8453 | ETH | 🪙🧾🔭📚 | | 🌀 | **Arbitrum One** | 42161 | ETH | 🪙🧾🔭📚 | | 🔴 | **Optimism** | 10 | ETH | 🪙🧾🔭📚 | | 🔺 | **Avalanche C-Chain** | 43114 | AVAX | 🪙🧾🔭📚 | | ⬛ | **Linea** | 59144 | ETH | 🪙🔭📚 | | 📜 | **Scroll** | 534352 | ETH | 🪙🔭📚 | | 💥 | **Blast** | 81457 | ETH | 🪙🔭📚 | | 🦉 | **Gnosis** | 100 | xDAI | 🪙🔭📚 | | 🌿 | **Celo** | 42220 | CELO | 🪙🔭📚 | | 🌕 | **Moonbeam** | 1284 | GLMR | 🪙🔭📚 | | 🏛 | **Metis** | 1088 | METIS | 🪙🔭📚 | | 🟨 | **opBNB** | 204 | BNB | 🪙🔭📚 | | 💓 | **PulseChain** | 369 | PLS | 🪙🔭📚 | | ⚙️ | **Mantle** | 5000 | MNT | 🪙🔭📚 | | 🥁 | **Taiko** | 167000 | ETH | 🪙🔭📚 | | 🐻 | **Berachain** | 80094 | BERA | 🪙🔭📚 | | 🌊 | **Soneium** | 1868 | ETH | 🪙🔭📚 | | 🦄 | **Unichain** | 130 | ETH | 🪙🔭📚 | | ⬜ | **Fraxtal** | 252 | frxETH | 🪙🔭📚 | | 🌶 | **Chiliz** | 88888 | CHZ | 🪙🔭📚 | | ⚡ | **Sonic** | 146 | S | 🪙🔭📚 | **Token 发现来源图例:** 🪙=CoinGecko 🧾=RPC 日志 🔭=浏览器 📚=已知列表 ## 🧪 项目状态 | 里程碑 | 状态 | 版本 | |-----------|--------|---------| | 🏗️ 仓库结构与 CI/CD | ✅ 完成 | v0.1 | | 🔴 20 场灾难模式 | ✅ 完成 | v0.2 | | 🌐 支持 24 条 EVM 链 | ✅ 完成 | v0.3 | | 📅 每日跨链扫描 | ✅ 完成 | v0.3 | | 🚩 自动红旗标记 Issues | ✅ 完成 | v0.3 | | 🪙 CoinGecko Token 发现 | ✅ 完成 | v0.4 | | 🧾 RPC 事件日志发现 | ✅ 完成 | v0.4 | | 🗄️ 持久化 Token 存储 | ✅ 完成 | v0.4 | | 📊 Token 注册表 CLI | ✅ 完成 | v0.4 | | 🌐 GitHub Pages 仪表板 | 🚀 进行中 | v0.6 | | 🔬 Slither 集成 | 📅 计划中 | v0.7 | | 🔥 可利用性评分 | 📅 计划中 | v0.8 | | 📬 Telegram/Discord 警报 | 📅 计划中 | v0.9 | | 🌉 非 EVM 支持 | 📅 计划中 | v1.0 | | 🌐 Web 仪表板 | 📅 计划中 | v1.0 | ## 📜 许可证 MIT — 对所有人免费。开源。社区所有。 ## ⚠️ 免责声明 **MaatEye 仅用于防御/教育目的。**它分析公开可用的合约源代码并识别潜在漏洞。用户有责任遵守所有适用的法律和法规。作者不对滥用行为承担责任。 **所有扫描均为只读静态分析。**我们: - ❌ 绝不发送交易 - ❌ 绝不部署合约 - ❌ 绝不利用漏洞 - ✅ 仅从浏览器和 RPC 读取公开数据 ## 🏛️ 玛阿特 (Ma'at) 的哲学
由 Lord1Egypt 用 ❤️ 和 🔥 打造
⚖️ 愿您的合约在玛阿特的羽毛上保持平衡 ⚖️
标签:EVM, Web3安全, 区块链, 智能合约, 逆向工具