TayyabAkhtar786/Doom
GitHub: TayyabAkhtar786/Doom
一款针对 DVWA 实验环境的自动化 Web 漏洞扫描器,支持六类常见漏洞检测并生成企业级 PDF 报告。
Stars: 0 | Forks: 0
```
██████╗ ██████╗ ██████╗ ███╗ ███╗
██╔══██╗██╔═══██╗██╔═══██╗████╗ ████║
██║ ██║██║ ██║██║ ██║██╔████╔██║
██║ ██║██║ ██║██║ ██║██║╚██╔╝██║
██████╔╝╚██████╔╝╚██████╔╝██║ ╚═╝ ██║
╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝
```
# DOOM — Web 漏洞扫描器
**专为 DVWA 和 CTF 实验环境构建的企业级自动化 Web 漏洞扫描器。**
[](https://python.org)
[](LICENSE)
[](https://kali.org)
[](https://github.com/tayyabakhtar/doom-scanner)
[](https://github.com/tayyabakhtar)
## 目录
- [概述](#overview)
- [功能](#features)
- [漏洞覆盖](#vulnerability-coverage)
- [安装说明](#installation)
- [用法](#usage)
- [参数说明](#flag-reference)
- [工作原理](#how-it-works)
- [示例输出](#sample-output)
- [PDF 报告](#pdf-report)
- [项目结构](#project-structure)
- [免责声明](#disclaimer)
## 概述
DOOM 是一款使用 Python 编写的命令行 Web 漏洞扫描器,旨在自动化检测 **DVWA (Damn Vulnerable Web Application)** 和一般 Web 目标中的常见 Web 应用漏洞。
与简单的扫描器不同,DOOM:
- **自动检测 DVWA** 并直接针对每个已知的漏洞模块
- **自动认证** DVWA —— 无需手动复制 cookie
- 通过 DVWA 界面**自动设置安全级别**
- 生成包含 CVSS 评分、OWASP 参考和分步修复方案的**专业企业级 PDF 报告**
由 **Tayyab Akhtar** 为 Offensive Security 模块构建。
## 功能
| 功能 | 描述 |
|---|---|
| DVWA 自动登录 | 使用默认或自定义凭据自动登录 DVWA |
| 直接针对模块 | 直接访问每个 DVWA 漏洞 URL —— 无需爬虫猜测 |
| 自动安全级别 | 自动将 DVWA 安全级别设置为您选择的级别 |
| 6 项漏洞检测 | XSS(反射型 + 存储型)、SQLi、命令注入、LFI、CSRF |
| 动画 CLI | 扫描期间的线程加载动画 |
| 颜色编码输出 | CRITICAL(红色)、HIGH(橙色)、MEDIUM(黄色)、LOW(蓝色) |
| 企业级 PDF 报告 | 封面、执行摘要、CVSS 表格、修复步骤 |
| 隐身模式 | 随机抖动延迟 + User-Agent 轮换 |
| 速率限制 | 可配置的请求间隔延迟 |
| 单文件 | 一个 Python 脚本,无需复杂的设置 |
## 漏洞覆盖
| # | 漏洞 | CVSS | 严重程度 | CWE | OWASP 2021 |
|---|---|---|---|---|---|
| 1 | SQL Injection(基于错误) | 9.8 | CRITICAL | CWE-89 | A03: Injection |
| 2 | OS Command Injection | 9.8 | CRITICAL | CWE-78 | A03: Injection |
| 3 | Cross-Site Scripting(存储型) | 7.2 | HIGH | CWE-79 | A03: Injection |
| 4 | Local File Inclusion | 8.1 | HIGH | CWE-98 | A01: Broken Access Control |
| 5 | Cross-Site Scripting(反射型) | 6.1 | HIGH | CWE-79 | A03: Injection |
| 6 | Cross-Site Request Forgery | 6.5 | MEDIUM | CWE-352 | A01: Broken Access Control |
## 安装说明
### 前置条件
- Python 3.8+
- Kali Linux(推荐)或任何 Linux 发行版
- 本地运行的 DVWA(推荐使用 Docker)
### 步骤 1 — 克隆仓库
```
git clone https://github.com/tayyabakhtar/doom-scanner.git
cd doom-scanner
```
### 步骤 2 — 安装依赖
```
pip install -r requirements.txt
```
### 步骤 3 — 设置 DVWA(如果尚未运行)
```
# 通过 Docker 拉取并运行 DVWA
docker pull vulnerables/web-dvwa
docker run -d -p 80:80 vulnerables/web-dvwa
```
然后访问 `http://localhost/dvwa/setup.php` 并点击 **Create / Reset Database**。
### 步骤 4 — 验证安装
```
python doom.py -h
```
## 用法
### 基础扫描 —— DOOM 自动登录并扫描所有内容
```
python doom.py -u http://localhost
```
### 自定义安全级别
```
python doom.py -u http://localhost --level low
```
### 使用较慢请求的隐身模式
```
python doom.py -u http://localhost --stealth --delay 1.0
```
### 自定义 PDF 输出文件名
```
python doom.py -u http://localhost -o my_report.pdf
```
### 跳过登录(如果已经通过其他方式认证)
```
python doom.py -u http://localhost --no-login
```
### 完整示例
```
python doom.py -u http://localhost --level low --stealth --delay 0.8 -o pentest_report.pdf
```
## 参数说明
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| `-u`, `--url` | string | `http://127.0.0.1` | 目标基础 URL |
| `-o`, `--output` | string | `DOOM_Report_
由 **Tayyab Akhtar** 用 ❤️ 制作
标签:CISA项目, DOE合作, Python, Web安全, 无后门, 蓝队分析, 请求拦截, 逆向工具