Gatlin-official/Vulnerability-Scanner
GitHub: Gatlin-official/Vulnerability-Scanner
一个基于 Node.js 的轻量级漏洞扫描器,用于检测 Web 应用和网络中的开放端口、过时软件及薄弱配置,并生成综合安全报告。
Stars: 0 | Forks: 0
# 漏洞扫描器迷你项目
一个基于 Node.js 的简单漏洞扫描器,用于检测 Web 应用程序和网络中常见的安全问题。
## 功能
✅ **扫描开放端口** - 识别潜在的脆弱开放端口(FTP、Telnet、MySQL、MongoDB 等)
✅ **检查过时软件** - 检测存在漏洞的软件版本(Apache、Nginx、PHP、Node.js)
✅ **配置分析** - 识别薄弱的安全配置(SSL、密码、2FA、防火墙)
✅ **生成报告** - 创建包含风险等级和建议的综合漏洞报告
## 项目结构
```
vulnerability-scanner/
├── package.json # Project dependencies
├── scanner.js # Main scanner script
├── vulnerabilities.json # Vulnerability database (optional)
└── README.md # This file
```
## 快速开始
### 前置条件
- 系统已安装 Node.js
### 安装说明
1. 导航到项目目录:
```
cd "d:\Work\Internship\Vulnerability Scanner"
```
2. 安装依赖(如有需要):
```
npm install
```
### 运行扫描器
执行扫描器:
```
npm start
```
或
```
node scanner.js
```
## 工作原理
### 1. 端口扫描
扫描器会检查常见的开放端口:
- FTP (21) - 未加密的文件传输
- Telnet (23) - 未加密的远程访问
- HTTP (80) - 未加密的 Web 流量
- MySQL (3306) - 暴露的数据库
- MongoDB (27017) - 暴露的 NoSQL 数据库
### 2. 软件版本检查
识别存在已知漏洞的过时软件:
- Apache Web 服务器
- Nginx Web 服务器
- PHP 编程语言
- Node.js 运行时
### 3. 配置审查
检查薄弱的安全配置:
- SSL/TLS 加密已禁用
- 密码策略薄弱
- 双因素认证已禁用
- 防火墙未启用
### 4. 报告生成
生成包含以下内容的综合报告:
- 漏洞总数
- 风险等级分类(高/中)
- 详细的漏洞信息
- 安全建议
## 风险等级
- 🔴 **高** - 需要立即处理的关键安全问题
- 🟡 **中** - 应当实施的安全最佳实践
## 输出示例
```
╔════════════════════════════════════════╗
║ VULNERABILITY SCANNER v1.0 ║
╚════════════════════════════════════════╝
🔍 Scanning for Open/Vulnerable Ports...
📦 Checking Software Versions...
⚙️ Checking Configuration Security...
============================================================
VULNERABILITY SCANNER REPORT
============================================================
Total Vulnerabilities Found: 5
- High Risk: 3
- Medium Risk: 2
1. [HIGH] Open Port
Port: 80
Service: HTTP
...
```
## 未来增强
- 集成真实的端口扫描库
- 真实的 CVE 漏洞数据库
- SSL 证书验证
- DNS 配置检查
- 性能优化
- 基于 Web 的 UI 仪表板
## 许可证
ISC
## 作者
为实习计划而创建
标签:GNU通用公共许可证, MITM代理, Node.js, 加密, 实时处理, 插件系统, 数据可视化, 数据统计, 暗色界面, 漏洞扫描器, 端口扫描, 自定义脚本, 配置检查