moyshik7/vul-detector
GitHub: moyshik7/vul-detector
一个基于 Node.js 的轻量级 Web 漏洞扫描器,专注于快速检测已知 CVE 和常见安全配置错误。
Stars: 0 | Forks: 0
# ⚡ VUL-DETECTOR
一款快速、模块化的 Node.js 漏洞扫描器,旨在检测 Web 应用程序中的已知 CVE 和常见安全配置错误。
## 🚀 功能
- **模块化架构**:所有漏洞检查都是 `cves/` 文件夹中的独立模块。
- **动态发现**:自动加载添加到 `cves/` 目录中的任何 `.js` 文件。
- **包含 19+ 个模块**:涵盖 Log4Shell、React Shell RCE、SQL Injection、SSRF 等关键 CVE。
- **丰富的 CLI 输出**:带有严重性图标和详细扫描摘要的美观彩色表格。
- **灵活的过滤**:运行特定的 CVE 或按最低严重性(CRITICAL、HIGH 等)进行过滤。
## 📦 安装
使用 npm 全局安装:
```
npm install -g vul-detector
```
或者使用 npx 运行而无需安装:
```
npx vul-detector --target https://example.com
```
## 🛠 用法
基本扫描:
```
vul-detector --target https://example.com
```
详细扫描(显示每个模块的进度):
```
vul-detector --target https://example.com --verbose
```
仅扫描特定的 CVE:
```
vul-detector --target https://example.com --cve CVE-2025-55182
```
按最低严重性过滤:
```
vul-detector --target https://example.com --severity HIGH
```
完整选项:
```
vul-detector --help
```
## 🧩 可用扫描
该扫描器包含 50 多个按漏洞类型分类的专用模块:
### 🔴 严重严重性 (RCE & Deep Exploits)
| ID | Name | Description |
|---|---|---|
| CVE-2021-44228 | **Log4Shell** | Java JNDI 注入 (易受攻击的 Log4j)。 |
| CVE-2025-66478 | **Next.js RSC RCE** | RSC Flight 协议中的不安全反序列化。 |
| CVE-2024-4577 | **PHP-CGI RCE** | Windows 系统上的 CGI 参数注入。 |
| CVE-2024-8926 | **PHP-CGI OS RCE** | 通过 CGI 查询字符串进行的 OS 命令注入。 |
| CVE-2021-3129 | **Laravel RCE** | Ignition 调试模式下的未经身份验证 RCE。 |
| CVE-2017-9841 | **PHPUnit RCE** | 通过暴露的 eval-stdin.php 进行远程执行。 |
| CVE-2019-11043 | **PHP-FPM RCE** | PHP-FPM + Nginx 设置中的缓冲区下溢。 |
| CVE-2024-1874 | **PHP Batch RCE** | 通过 Windows .bat/.cmd 文件进行的命令注入。 |
| CVE-2025-55182 | **React Shell RCE** | 暴露的交互式调试/shell 端点。 |
| ENV-EXPOSURE | **Exposed .env** | 生产 API 密钥和机密信息的关键泄露。 |
| PYTHON-DEBUG | **Python Debug** | 暴露的 Flask/Django/FastAPI 调试控制台。 |
### 🟠 高严重性 (SSRF, SQLi, Data Leaks)
| ID | Name | Description |
|---|---|---|
| CVE-2024-34351 | **Next.js Image SSRF** | 图像优化和服务器操作中的 SSRF。 |
| CVE-2025-57822 | **Middleware SSRF** | Next.js 中间件中的标头转发 SSRF。 |
| CVE-2025-29927 | **Auth Bypass** | 通过内部 Next.js 标头绕过中间件。 |
| CVE-2025-1735 | **PHP pgsql SQLi** | PHP PostgreSQL 扩展中的 SQL 注入。 |
| CVE-2024-23897 | **SQL Injection** | 通用数据库基于错误的 SQLi 探测。 |
| CVE-2024-47176 | **Generic SSRF** | 探测元数据和内部资源泄露。 |
| GIT-EXPOSURE | **Exposed .git** | 泄露的源代码和仓库结构。 |
| SVN-EXPOSURE | **Exposed .svn** | 泄露的 Subversion 仓库元数据。 |
| DOCKER-COMPOSE | **Docker Compose** | 基础设施 YAML 配置的暴露。 |
| LARAVEL-LOGS | **Laravel Logs** | laravel.log 文件中泄露的敏感痕迹。 |
| PHP-SESSION | **PHP Sessions** | 暴露的会话存储文件(劫持风险)。 |
| PHPMYADMIN | **phpMyAdmin** | 暴露的数据库管理登录界面。 |
| BACKUP-FILES | **Backup Leaks** | 暴露的 .sql、.zip 和 .bak 存档文件。 |
### 🟡 中等严重性 (Information & Config)
| ID | Name | Description |
|---|---|---|
| CVE-2025-55183 | **Source Disclosure** | Next.js 中服务器函数源代码泄露。 |
| CVE-2024-21534 | **Info Disclosure** | Next.js 内部清单和路径暴露。 |
| NEXTJS-DATA-LEAK | **Next.js Data Leak** | 客户端 `__NEXT_DATA__` 中泄露的机密。 |
| SWAGGER-UI | **Swagger UI** | 暴露的 API 文档和端点。 |
| GRAPHQL-INTROS | **GQL Introspection** | 已启用 GraphQL schema 探索查询。 |
| DIRECTORY-LIST | **Directory Listing** | 检测到已启用的“Index of /”视图。 |
| SENSITIVE-LOGS | **Sensitive Logs** | 暴露的 error.log、access.log、npm-debug.log。 |
| WP-ADMIN | **WordPress Admin** | 发现暴露的 WP 管理/登录页面。 |
| WP-XMLRPC | **WP XML-RPC** | 已启用 XML-RPC(放大/暴力破解)。 |
| GENERIC-REDIRECT | **Open Redirect** | 通过常见重定向参数进行的网络钓鱼载体。 |
| CVE-2024-5458 | **PHP Filter Bypass** | 标准 PHP 安全过滤器中的绕过。 |
| SEC-HEADERS | **Security Headers** | 分析 HSTS、CSP、XFO 和其他标头。 |
### 🔵 低严重性 (Metadata & Best Practices)
| ID | Name | Description |
|---|---|---|
| NPM-PACKAGE-JSON | **package.json** | 依赖项和项目元数据泄露。 |
| DOCKERFILE | **Dockerfile** | 构建步骤和基础镜像泄露。 |
| GITLAB-CI | **GitLab CI Config** | 泄露的 CI/CD 流水线和 runner 详情。 |
| WP-VERSION | **WP Version** | Meta 标签中 WordPress 版本的泄露。 |
| DS-STORE | **.DS_Store** | macOS 目录元数据文件暴露。 |
| COOKIE-SEC | **Cookie Security** | 敏感 Cookie 缺少 HttpOnly/Secure 标志。 |
## 🛠 添加你自己的 CVE 模块
1. 在 `cves/` 文件夹中创建一个新的 `.js` 文件。
2. 导出一个符合模块接口的对象:
```
module.exports = {
id: 'CVE-XXXX-XXXXX',
name: 'Vulnerability Name',
severity: 'HIGH', // CRITICAL, HIGH, MEDIUM, LOW, INFO
description: 'Detailed description...',
references: ['https://link-to-cve'],
async scan(targetUrl, httpClient) {
// Perform your logic using the provided axios instance (httpClient)
// Return: { vulnerable: boolean, details: string, evidence: string }
return {
vulnerable: true,
details: 'Found a specific indicator',
evidence: 'Raw data found in response'
};
}
};
```
应用程序将在下次运行时自动检测并加载您的新模块。
## ⚠️ 免责声明
**此工具仅用于教育和授权安全测试目的。** 未经明确许可扫描目标是非法和不道德的。作者不对本工具的任何滥用行为负责。
## 📄 许可证
本项目根据 MIT 许可证授权 - 详情请参阅 [LICENSE](LICENSE) 文件。
标签:AES-256, CISA项目, Claude, CVE检测, DNS枚举, Log4Shell, MITM代理, Node.js安全, PHP安全, SSRF, Web报告查看器, 内存取证对抗, 加密, 安全误配置, 开源安全工具, 提示注入检测, 数据可视化, 文档结构分析, 暗色界面, 模块化架构, 漏洞扫描器, 漏洞评估, 编程工具, 网络安全工具, 自定义脚本, 远程代码执行, 逆向工程平台, 高危漏洞