hlsitechio/Shellockolm-AI-CLI-MCP-Scanner

GitHub: hlsitechio/Shellockolm-AI-CLI-MCP-Scanner

一款面向 AI 助手设计的本地离线安全扫描工具,可在数十秒内检测 React/Next.js/npm 项目中的已知漏洞、恶意软件和供应链攻击。

Stars: 2 | Forks: 1

![Shellockolm — AI CLI MCP 扫描器](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/3e8227b208235112.png) # 🔍 Shellockolm ### **面向 AI Agents 的 CLI & MCP 安全扫描器** **扫描 React、Next.js 和 npm 项目以检测 CVE、恶意软件和供应链攻击的安全侦探** **🤖 为 AI 助手而生** | **⚡ 极速运行** | **🔒 追踪 32 个 CVE** | **🎯 100% 离线**
## ⚡ 60 秒安装与运行
### 🪟 Windows ``` iex (irm https://raw.githubusercontent.com/hlsitechio/shellockolm/main/scripts/install.ps1) ``` **或者:** [下载 ZIP](https://github.com/hlsitechio/Shellockolm-AI-CLI-MCP-Scanner/archive/refs/heads/main.zip) → 双击 `scripts/setup.bat` ### 🐧 Ubuntu / Debian / Mint ``` curl -fsSL https://raw.githubusercontent.com/hlsitechio/shellockolm/main/scripts/install-debian.sh | bash ``` ### 🏔️ Arch / Manjaro ``` curl -fsSL https://raw.githubusercontent.com/hlsitechio/shellockolm/main/scripts/install-arch.sh | bash ``` ### 🍎 macOS ``` curl -fsSL https://raw.githubusercontent.com/hlsitechio/shellockolm/main/scripts/install.sh | bash ```
**然后运行:** `python src/cli.py scan .` → ✅ **即时安全审计** 🤖 **想要 AI 集成?** `python src/configure_mcp.py` → 在 Claude/Copilot 中使用 Shellockolm!
📖 **[完整安装指南](docs/INSTALL.md)** | 🚀 **[快速入门](docs/QUICKSTART.md)** | ⚡ **[快速安装参考](docs/FAST_INSTALL.md)** | 🤖 **[MCP 设置](docs/MCP_SETUP.md)** **✅ 检测 32 个 CVE** | **✅ 发现恶意软件与密钥** | **✅ 支持备份的自动修复** | **✅ 100% 离线** [![Python 3.10+](https://img.shields.io/badge/python-3.10%2B-blue)](https://www.python.org/downloads/) [![MCP Server](https://img.shields.io/badge/MCP-AI%20Agent%20Ready-success)](docs/MCP_SETUP.md) [![Claude 兼容](https://img.shields.io/badge/Claude-Desktop%20%26%20Code%20CLI-blueviolet)](docs/CLAUDE_CODE_CLI.md) [![MIT License](https://img.shields.io/badge/license-MIT-green)](LICENSE) [![一键安装](https://img.shields.io/badge/install-one%20line-success)](docs/INSTALL.md) [![v3.0.0](https://img.shields.io/badge/version-3.0.0-orange)](https://github.com/hlsitechio/Shellockolm-AI-CLI-MCP-Scanner/releases/latest) [检测内容](#-what-it-finds) • [实时演示](#-see-it-in-action) • [AI 集成](#-use-in-ai-assistants) • [全部功能](#-complete-features) • [完整文档](docs/INSTALL.md)
## 🚨 为什么会有这个工具 **我扫描了 15 个 React 应用。每一个都有漏洞。** ### 💀 我在 2 分钟内发现的问题: - 🔴 **远程代码执行 (RCE)** → React Server Components CVE-2025-55182 - 🔴 **中间件绕过** → Next.js 身份验证失效 - ☠️ **恶意软件** → 隐藏在我信任的 npm 包中 - 🔑 **API 密钥泄露** → 存在于 `.env` 文件中并被推送到 Git - 🦠 **供应链攻击** → 依赖项被破坏 ### ⏱️ 手动审计 = 3 天。本工具 = 2 分钟。 **如果您在没有进行扫描的情况下将 React/Next.js 部署到生产环境,您就是在拿用户的数据玩俄罗斯轮盘赌。** ## 🎯 检测内容
### 🔴 严重 CVE - **React Server Components RCE** (CVSS 10.0) - **Next.js 中间件绕过** (CVSS 9.1) - **n8n 未授权 RCE** (CVSS 10.0) - **Node.js 运行时漏洞** - **npm 包漏洞利用** (mysql2, jsonpath-plus 等) ### 🦠 威胁与密钥 - **恶意软件检测** (代码混淆、加密挖矿木马、后门) - **供应链攻击** (Shai-Hulud 蠕虫、仿冒包/typosquatting) - **密钥泄露** (API 密钥、AWS 凭证、token) - **AI 网关泄露** (Clawdbot/Moltbot 凭证搭便车)
**跨 React、Next.js、Node.js、npm、n8n 以及供应链攻击追踪 32 个独立的 CVE。** ## 🎬 实际演示 ### 交互式 Shell ``` ┌─────────────────────────────────────────────────────────────┐ │ Shellockolm - Security Detective v1.0 │ ├─────────────────────────────────────────────────────────────┤ │ 1 Full Scan → All 7 scanners, 32 CVEs │ │ 2 React Scanner → Server Components RCE │ │ 3 Next.js Scanner → Middleware bypass │ │ 17 Deep Malware Scan → RCE payloads, cryptominers │ │ 23 Scan for Secrets → 50+ patterns, high entropy │ │ X QuickFix → Auto-patch all vulnerabilities │ └─────────────────────────────────────────────────────────────┘ ``` ### CLI 单行命令 ``` # 完整的安全审计 python src/cli.py scan . # 安装 npm 包前进行扫描 python src/cli.py scan --scanner npm ./suspicious-package # 导出为 JSON 以用于 CI/CD python src/cli.py scan . -o security-report.json # 实时探测 URL 的 exploits python src/cli.py live https://target.com # 搜寻特定的 CVE python src/cli.py info CVE-2025-55182 ``` ## 💡 为什么选择 Shellockolm? | 问题 | 其他工具 | Shellockolm | |---------|-------------|-------------| | **速度** | 数小时的手动审计 | 30 秒全面扫描 | | **深度** | 通用 CVE 数据库 | 32 个手动追踪的漏洞 | | **隐私** | 基于云,需上传您的代码 | 100% 本地执行,零遥测 | | **误报** | 嘈杂且通用的警告 | 人工调优的检测模式 | | **易用性** | 配置复杂,需要 API 密钥 | 即开即用,无需设置 | | **覆盖范围** | 仅限 CVE | CVE + 恶意软件 + 密钥 + 供应链 | ## 🛠️ 完整功能
📊 7 个专用扫描器 | 扫描器 | 检测内容 | 覆盖的 CVE | |---------|----------------|--------------| | **React RSC** | Server Components RCE、源代码暴露、DoS | CVE-2025-55182, CVE-2025-66478, +3 更多 | | **Next.js** | 中间件授权绕过、RSC 漏洞 | CVE-2025-29927, CVE-2025-66478 | | **npm 包** | mysql2、jsonpath-plus 中的 RCE;body-parser、multer 中的 DoS | CVE-2024-21508, CVE-2024-21534, +6 更多 | | **Node.js Runtime** | HTTP/2 崩溃、TLS 内存泄漏、权限模型绕过 | CVE-2025-59465, +8 更多 | | **n8n** | Ni8mare 未授权 RCE、表达式注入 | CVE-2026-21858, CVE-2025-68613, CVE-2025-68668 | | **供应链** | Shai-Hulud 蠕虫、eslint-config-prettier 沦陷 | CVE-2025-54313 + 10 个活动 CVE | | **Clawdbot/Moltbot** | AI 网关凭证泄漏、OAuth 搭便车 | 4 个严重的身份验证绕过模式 | **总计:追踪 32 个独立的 CVE**
🦠 高级恶意软件检测 - **混淆检测** - 十六进制、base64、eval 链 - **加密挖矿木马** - Monero、Bitcoin 挖矿脚本 - **后门** - 反向 Shell、命令注入 - **数据泄露** - 可疑的 HTTP 请求 - **仿冒包** - 模仿流行库的包 - **100+ 检测模式** 专为 JavaScript/Node.js 手工调优
🔐 密钥扫描器 检测代码、配置和环境变量文件中泄露的凭证: - AWS Access Keys 与 Secret Keys - GitHub Personal Access Tokens - Slack Bot Tokens 与 Webhooks - Stripe API 密钥 - 私钥 (RSA、SSH、PGP) - 数据库连接字符串 - OAuth token 与 refresh token - **50+ 模式** + 高熵字符串检测
⚡ 自动修复与漏洞修补 - **一键补丁** - 自动升级存在漏洞的包 - **自动备份** - 修改前生成带时间戳的快照 - **试运行模式** - 在不应用更改的情况下预览 - **回滚支持** - 出现问题时从备份恢复 - **修复向导** - 逐步引导式修复
🔄 CI/CD 集成 ``` # GitHub Actions - name: Security Scan run: | pip install -r requirements.txt python src/cli.py scan . -o results.json ``` - 用于 GitHub Code Scanning 的 **SARIF 导出** - 用于自动化处理的 **JSON 报告** - 遇到严重问题时导致构建失败的 **退出代码** - 用于持续监控的 **监视模式**
📋 60+ 交互式命令 **扫描**: 全面扫描、React、Next.js、npm、Node.js、n8n、供应链、自定义 **恶意软件**: 深度扫描、隔离、包移除、代码清理 **密钥**: 扫描所有文件、针对 .env、高熵检测 **实时探测**: 测试 URL 是否存在可利用的漏洞 **CVE 情报**: 列出 CVE、按严重程度过滤、漏洞赏金目标 **报告**: JSON、SARIF、Markdown、安全评分 (A-F) **自动修复**: 修补漏洞、预览更改、回滚 **依赖项**: Lockfile 分析、重复检测、仿冒检测 **SBOM**: 生成 CycloneDX 或 SPDX 物料清单 **以及更多**: 忽略规则、GitHub Advisory 查询、依赖树 [查看完整命令参考 →](#complete-command-reference)
## 📖 常见用例 ### 🔍 审计您的 React/Next.js 应用 ``` python src/cli.py scan ~/my-nextjs-app --scanner nextjs ``` ### 🛡️ 在 npm install 之前进行检查 ``` # 在临时目录中进行 Sandbox 安装 + 扫描 python src/cli.py shell > 1b # Pre-Download Check > suspicious-package-name ``` ### 🚨 搜寻特定 CVE ``` python src/cli.py shell > 1d # CVE Hunter > CVE-2025-29927 > /path/to/project ``` ### 🤖 实时探测漏洞利用 ``` python src/cli.py live https://target.com --scanner n8n ``` ### 📊 生成安全报告 ``` python src/cli.py scan . -o report.json python src/cli.py shell > 37 # Export SARIF for GitHub Code Scanning ``` ## 🎓 为什么使用 Python 编写 JavaScript 安全工具? **Shellockolm 从外部扫描 JavaScript 项目** — 它不执行您的代码,而是对其进行检查。 - ✅ **与目标无冲突** - 无共享依赖,不会污染 `node_modules` - ✅ **对扫描器无供应链风险** - 零 npm 依赖 = 零攻击面 - ✅ **跨平台无需构建** - 通过 `pip install` 可在 Windows/Linux/macOS 上运行 - ✅ **开箱即用的丰富 CLI** - 精美的表格、进度条、彩色输出 - ✅ **足够快** - 静态分析不需要 V8 的 JIT 扫描器位于其所审计生态系统的**爆炸半径之外**。 ## 🔒 隐私与安全 - **100% 本地执行** — 所有扫描均在您的机器上运行 - **不上传** — 您的代码永远不会离开您的系统 - **无遥测** — 零数据收集 - **无需 API 密钥** — 完全离线工作 - **开源** — 完全透明 (MIT License) ## 📚 完整命令参考
展开查看所有 60+ 命令 ### 扫描 | 命令 | 名称 | 功能描述 | |---------|------|-------------| | `1` | Full Scan | 对目录运行全部 7 个扫描器,检测跨 React、Next.js、Node.js、npm、n8n、供应链和 Clawdbot/Moltbot 的 32 个 CVE。 | | `1a` | Scan ALL npm | 通过查找所有 `package.json` 文件,自动发现并扫描您系统上的每一个 npm 项目。 | | `1b` | Pre-Download Check | 将 npm 包沙盒安装到临时目录,扫描其中是否存在恶意软件和漏洞,然后销毁沙盒。 | | `1c` | Deep Scan | 版本检查 + 代码模式分析 + 配置检查 — 逐步展示每个漏洞是如何被检测到的。 | | `1d` | CVE Hunter | 通过 ID 精准定位单个 CVE,并查看针对您项目的实时检测输出。 | | `1e` | Custom Scan | 精确选择要运行的扫描器(开启/关闭 React、Next.js、npm、Node.js、n8n、Supply Chain、Clawdbot)。 | | `2` | React Scanner | 扫描 React Server Components RCE (CVE-2025-55182, CVE-2025-66478)。 | | `3` | Next.js Scanner | 扫描 Next.js 中间件绕过 (CVE-2025-29927) 和 RSC 漏洞。 | | `4` | npm Packages | 扫描 mysql2、jsonpath-plus、body-parser、multer、nuxt、AdonisJS 中的漏洞。 | | `5` | Node.js Runtime | 扫描 2026 年 1 月安全版本中的 Node.js 运行时漏洞。 | | `6` | n8n Scanner | 扫描 n8n 工作流自动化漏洞,包括 Ni8mare 未授权 RCE。 | | `7` | Supply Chain | 检测 Shai-Hulud 蠕虫活动、eslint-config-prettier沦陷、恶意安装脚本。 | ### 实时探测 | 命令 | 名称 | 功能描述 | |---------|------|-------------| | `8` | Probe All | 主动探测实时 URL 是否存在可利用的漏洞 (Next.js + n8n)。 | | `9` | Next.js Probe | 通过 `x-middleware-subrequest` 头部注入,测试 URL 是否存在 CVE-2025-29927 中间件绕过。 | | `10` | n8n Probe | 通过 Content-Type 混淆,测试 URL 是否存在 CVE-2026-21858 Ni8mare 未授权 RCE。 | ### CVE 情报 | 命令 | 名称 | 功能描述 | |---------|------|-------------| | `11` | List All CVEs | 显示所有 32 个受追踪的 CVE 及其严重程度、CVSS 得分和受影响的包。 | | `12` | Critical Only | 过滤以仅显示严重级别为 CRITICAL 的 CVE (CVSS 9.0+)。 | | `13` | Bug Bounty | 列出高价值的漏洞赏金目标 CVE — 即严重级别或具有公开 PoC 的漏洞。 | | `14` | CVE Details | 获取特定 CVE 的完整详细信息:描述、受影响版本、补丁、参考链接。 | | `15` | List Scanners | 显示所有 7 个扫描器及其描述、CVE 覆盖范围和功能。 | ### 恶意软件分析 | 命令 | 名称 | 功能描述 | |---------|------|-------------| | `17` | Deep Malware Scan | 扫描 `node_modules` 和项目文件,查找 RCE 载荷、后门、加密挖矿木马、数据泄露和仿冒包。 | | `18` | Quick Malware Scan | 仅快速扫描项目文件(跳过 `node_modules`)— 适用于检查您自己代码中注入的恶意软件。 | | `19` | Quarantine File | 将恶意文件移至隔离区,保留原始路径以便于后续潜在的恢复。 | | `20` | Remove Package | 从 `node_modules` 中彻底移除恶意 npm 包,在移除前会先备份到隔离区。 | | `21` | Clean Malicious Code | 精准移除文件中的恶意代码,同时保留合法代码(会创建备份)。 | | `22` | View Report | 显示最新的恶意软件分析报告,包含发现结果、威胁级别和修复步骤。 | ### 密钥扫描器 | 命令 | 名称 | 功能描述 | |---------|------|-------------| | `23` | Scan for Secrets | 深度扫描 API 密钥、token、密码、AWS 凭证、GitHub token、Stripe 密钥以及 50+ 种模式。 | | `24` | Scan .env Files | 专门针对 `.env` 文件扫描硬编码的密钥和凭证。 | | `25` | High Entropy | 使用基于熵的检测来查找可能是未知 API 密钥格式的随机字符串。 | | `26` | View Report | 显示最新的密钥扫描报告,包含风险级别和建议。 | ### 安全评分 | 命令 | 名称 | 功能描述 | |---------|------|-------------| | `27` | Security Score | 通过综合分析漏洞、恶意软件、密钥、依赖项和配置,生成全面的 A-F 安全评级。 | | `28` | Quick Check | 无需深度扫描的快速安全评估 — 适用于 CI/CD 流水线。 | | `29` | View Report | 显示详细的安全报告,包含分类明细和改进建议。 | ### 自动修复 | 命令 | 名称 | 功能描述 | |---------|------|-------------| | `30` | Auto-Fix | 自动将存在漏洞的包升级到已修补的版本(会先创建备份)。 | | `31` | Preview Fixes | 试运行,展示将要升级的包而不进行任何实际更改。 | | `32` | Rollback | 如果自动修复导致了问题,可从备份恢复 `package.json`。 | [在原版 README 中查看剩余的 30+ 个命令]
## 📊 追踪的 CVE
所有 32 个 CVE(点击展开) | CVE | 严重性 | CVSS | 包名 | 描述 | |-----|----------|------|---------|-------------| | CVE-2025-55182 | Critical | 10.0 | React | 通过不安全反序列化导致的 Server Components RCE (React2Shell) | | CVE-2025-66478 | Critical | 10.0 | Next.js | Server Components RCE — Next.js 中对应 CVE-2025-55182 的漏洞 | | CVE-2025-29927 | Critical | 9.1 | Next.js | 通过 `x-middleware-subrequest` 头部进行的中间件授权绕过 | | CVE-2026-21858 | Critical | 10.0 | n8n | Ni8mare — 通过 Content-Type 混淆导致的未授权 RCE | | CVE-2025-68613 | High | — | n8n | 表达式注入 RCE(需授权) | | CVE-2025-68668 | High | — | n8n | Python Code Node RCE | | CVE-2025-55184 | High | 7.5 | React | 通过无限循环导致的 Server Components DoS | | CVE-2025-67779 | High | 7.5 | React | CVE-2025-55184 的 DoS 不完整修复 | | CVE-2025-55183 | Medium | 5.3 | React | Server Components 源代码暴露 | | CVE-2024-21508 | High | — | mysql2 | 远程代码执行 | | CVE-2024-21534 | High | — | jsonpath-plus | 远程代码执行 | | CVE-2025-1302 | High | — | jsonpath-plus | RCE(CVE-2024-21534 的不完整修复) | [... 剩余的 CVE 见原版 README]
## 🤝 贡献 发现 Bug?有功能建议?想要增加 CVE 覆盖范围? - [Issues](https://github.com/hlsitechio/Shellockolm-AI-CLI-MCP-Scanner/issues) - [Discussions](https://github.com/hlsitechio/Shellockolm-AI-CLI-MCP-Scanner/discussions) - [贡献指南](CONTRIBUTING.md) - [行为准则](CODE_OF_CONDUCT.md) ## 📝 许可证 MIT License — 详见 [LICENSE](LICENSE) **📚 更多文档:** - [安装指南](docs/INSTALL.md) - [快速入门](docs/QUICKSTART.md) - [快速安装参考](docs/FAST_INSTALL.md) - [MCP Server 设置](docs/MCP_SETUP.md) - [MCP 快速入门](docs/MCP_QUICK_START.md) - [MCP 使用示例](docs/MCP_EXAMPLES.md) - [Claude Code CLI 设置](docs/CLAUDE_CODE_CLI.md) - [贡献准则](CONTRIBUTING.md) - [安全政策](SECURITY.md) - [行为准则](CODE_OF_CONDUCT.md) - [更新日志](docs/CHANGELOG.md) - [隐私与安全](docs/PRIVACY_AND_SECURITY.md)
**⭐ 如果它帮助保护了您的应用,请给本仓库点个 Star** [开始使用](#-install--run-in-60-seconds) | [功能](#-complete-features) | [贡献者](docs/CONTRIBUTORS.md) | [报告问题](https://github.com/hlsitechio/Shellockolm-AI-CLI-MCP-Scanner/issues) 由 [@hlsitechio](https://github.com/hlsitechio) & AI ([Claude](https://claude.ai) + [GitHub Copilot](https://github.com/features/copilot)) 用 🔍 构建 | 献给安全社区
标签:GraphQL安全矩阵, LLM防护, LNA, MCP, React, Syscalls, 云安全监控, 安全扫描器, 文档安全, 文档结构分析, 自定义DNS解析器, 逆向工具, 静态分析