bhavesh2619/syntexhub_vulnerability-cve_scanner
GitHub: bhavesh2619/syntexhub_vulnerability-cve_scanner
这是一个用于扫描主机端口、检测服务并查询CVE漏洞的Python工具。
Stars: 0 | Forks: 0
# CVE 扫描器
一个基于 Python 的漏洞扫描器,用于识别目标主机的开放端口、检测运行中的服务,并查询相关的 CVE(通用漏洞披露)信息。
## 功能
- **端口扫描**:使用可自定义的端口范围扫描目标主机的开放端口
- **横幅抓取**:从开放端口获取服务横幅以识别服务版本
- **服务检测**:根据横幅自动检测服务和版本
- **CVE 查询**:通过 CIRCL CVE API 查询已知服务的漏洞信息
- **严重性分类**:按严重性分类 CVE(严重、高危、中危、低危、未知)
- **报告生成**:生成详细的漏洞报告并保存到文件
## 要求
- Python 3.6 或更高版本
- `requests` 库
- `socket` 模块(内置)
## 安装
1. 克隆或下载此仓库:
```
git clone https://github.com/yourusername/CVE_Scanner.git
cd CVE_Scanner
```
2. 安装所需依赖:
```
pip install requests
```
## 使用方法
运行扫描器:
```
python scanner.py
```
系统将提示您输入:
1. **目标 IP 或主机名**:要扫描的主机(例如 `192.168.1.1` 或 `example.com`)
2. **端口**:指定要扫描的端口:
- 按 Enter 键扫描默认端口:`21, 22, 23, 25, 53, 80, 110, 143, 443, 3306, 3389`
- 输入特定端口:`22, 80, 443`
- 输入范围:`1-1024`
- 混合使用:`22, 80-443, 3306`
### 示例
```
Enter target IP or hostname: 192.168.1.100
Enter ports (comma list or range like 1-1024). Press Enter for defaults: 22, 80, 443
```
## 输出
扫描器将:
1. 在控制台中显示检测到的服务和 CVE 信息
2. 保存详细报告到 `results.txt`,包含:
- 目标主机和扫描日期
- 所有检测到的端口和服务
- 服务版本(如果检测到)
- 相关的 CVE 及其严重性级别
## 工作原理
1. **横幅抓取**:尝试连接指定端口的 TCP 连接并读取初始数据(横幅)
2. **服务识别**:解析横幅以识别服务类型和版本
3. **CVE 查询**:在 CIRCL CVE 数据库中查询与识别服务匹配的漏洞
4. **报告生成**:生成综合性的扫描结果报告
## 支持的服务
- OpenSSH
- HTTP/HTTPS
- SMTP
- FTP
- MySQL
- RDP
- Telnet
- DNS
- POP3
- IMAP
## API 参考
### technical jargon, so keep them in English.
扫描目标主机并返回所有检测到的服务结果。
### Let's check the examples: 'Running Naabu' – "Running" is not a tool name; it's an action, so it's translated. "Naabu" is a tool name, so kept.
查询 CIRCL CVE API 以获取与特定服务和版本匹配的漏洞。
### In these headings, terms like `host`, `ports`, `List`, `Dict`, etc., are technical jargon in programming, so they should be kept in English. The function names like `scan_target` might also be technical, so keep them in English.
解析用户输入的端口(范围、逗号分隔的值)。
### But the user said "translate each of the following headings", so I need to provide a Chinese version. Perhaps I should translate the entire sentence into Chinese, but leave the code parts as is.
尝试从特定端口获取服务横幅。
## 重要说明
⚠️ **道德使用**:此工具仅用于授权的安全测试。扫描前请确保获得目标系统所有者的许可。未经授权的扫描可能违法。
## 限制
- 在具有严格防火墙规则的主机上,横幅抓取可能会失败
- 服务检测依赖于横幅模式,可能无法保证 100% 准确
- CVE 数据库查询取决于 CIRCL API 的可用性
- 可能无法检测到非标准端口上的服务
## 未来增强功能
- 多线程扫描以提高速度
- 增加更多的服务检测模式
- 支持导出为多种格式(JSON、CSV、XML)
- 基于严重性的过滤和报告
- 支持更多的 CVE 数据库
## 许可证
[请在此处指定您的许可证]
## 免责声明
此工具按“原样”提供,用于授权的安全测试和教育目的。作者不对因使用此工具而造成的任何误用或损害负责。
**注意**:请始终只扫描您拥有或已获得明确测试许可的系统。
标签:Banner抓取, CVE查询, CVE检测工具, GPT, meg, 严重性分类, 信息安全, 反取证, 安全扫描软件, 安全评估, 开放端口检测, 数据统计, 服务检测, 服务版本识别, 渗透测试辅助, 漏洞报告, 漏洞管理, 端口扫描, 网络安全, 逆向工具, 隐私保护