joelindra/CacheF3r
GitHub: joelindra/CacheF3r
一款高性能的 Web 缓存中毒检测与验证扫描工具,帮助发现并确认可能导致会话劫持与数据泄露的缓存漏洞。
Stars: 0 | Forks: 0
# CacheF3r
## 高级 Web 缓存中毒检测工具
CacheF3r 是一个功能强大、高性能的扫描器,用于检测 Web 应用程序中的缓存中毒漏洞。通过利用一套全面的测试技术,CacheF3r 可以识别并验证基于缓存的安全问题,这些问题可能导致会话劫持、数据泄露或其他严重的安全问题。
## 功能
- **高级缓存中毒检测**:专门用于发现基于 302 重定向的缓存中毒及其他缓存漏洞
- **多线程扫描**:对目标进行并行处理,实现高速漏洞检测
- **智能 URL 发现**:自动爬取并发现端点
- **全面测试**:对每个发现的端点测试多种头部变化
- **漏洞验证**:内置验证流程以消除误报
- **详细报告**:生成包含漏洞详细信息的综合 HTML 报告
- **进度跟踪**:实时进度条和状态更新,提高可见性
- **多目标支持**:可扫描单个域名或从列表中扫描多个域名
## 安装
### 先决条件
- Python 3.7 或更高版本
- pip(Python 包安装器)
### 设置
1. 克隆仓库:
git clone https://github.com/joelindra/CacheF3r.git
cd CacheF3r
2. 安装依赖:
pip install -r requirements.txt
### 依赖项
CacheF3r 需要以下 Python 包:
```
requests>=2.25.1
colorama>=0.4.4
tqdm>=4.61.0
urllib3>=1.26.5
certifi>=2021.5.30
charset-normalizer>=2.0.0
idna>=3.2
```
## 用法
### 基本用法
扫描单个域名:
```
python cachef3r.py -t example.com
```
从文件扫描多个域名:
```
python cachef3r.py -f targets.txt
```
### 命令行选项
```
usage: cachef3r.py [-h] (-t TARGET | -f FILE) [-j THREADS] [-d DELAY]
[-m {standard,aggressive,stealth}] [-o OUTPUT] [-v]
[--timeout TIMEOUT]
Enhanced Cache Poisoning Scanner v4.2
optional arguments:
-h, --help show this help message and exit
-t TARGET, --target TARGET
Target domain (e.g., example.com or https://example.com)
-f FILE, --file FILE File containing list of domains (one per line)
-j THREADS, --threads THREADS
Number of parallel threads (default: 10)
-d DELAY, --delay DELAY
Delay between requests in seconds (default: 1)
-m {standard,aggressive,stealth}, --mode {standard,aggressive,stealth}
Scanning mode (standard, aggressive, stealth)
-o OUTPUT, --output OUTPUT
Output directory (default: cache_scan_[timestamp])
-v, --verbose Enable verbose output
--timeout TIMEOUT Request timeout in seconds (default: 10)
```
## 示例扫描输出
```
═══════════════════════════════════════════════════════════════
║ Enhanced Cache Poisoning Scanner v2.0 ║
║ Advanced Web Cache Vulnerability Detection ║
═══════════════════════════════════════════════════════════════
[INFO] 2025-04-22 15:50:38 │ Validating connection to https://example.com...
[SUCCESS] 2025-04-22 15:50:38 │ Connected to https://example.com (Status: 200)
[INFO] 2025-04-22 15:50:38 │ ═══════════ SCANNING TARGET: example.com ═══════════
[INFO] 2025-04-22 15:50:38 │ Generating payloads for https://example.com...
[SUCCESS] 2025-04-22 15:50:38 │ Generated 17 header types with 73 payload variants
[INFO] 2025-04-22 15:50:38 │ Starting URL discovery for https://example.com...
[PROGRESS] 2025-04-22 15:50:38 │ Added 48 common endpoints as starting points
URL Discovery 100%|████████████████████| 248/248 [00:32<00:00, 7.59url/s, total=248, new=15]
[PROGRESS] 2025-04-22 15:50:71 │ Filtering discovered URLs (248 found)...
Filtering URLs 100%|████████████████████| 248/248 [00:00<00:00, 8273.33url/s, kept=248]
[SUCCESS] 2025-04-22 15:51:12 │ Discovered 248 unique endpoints for example.com
[PROGRESS] 2025-04-22 15:51:12 │ Testing 248 URLs with 73 header variations = 18104 tests
[INFO] 2025-04-22 15:51:12 │ Using 50 parallel threads for testing
Cache Testing 100%|████████████████████| 18104/18104 [23:45<00:00, 12.71test/s]
[SUCCESS] 2025-04-22 16:14:46 │ Found 5 cache poisoning vulnerabilities in example.com
[SUCCESS] 2025-04-22 16:14:46 │ ═════════════════════════════════════════════════════════════════
[SUCCESS] 2025-04-22 16:14:46 │ Completed scan of example.com in 1437.82 seconds
[PROGRESS] 2025-04-22 16:14:47 │ Generating final scan report...
Collecting Results 100%|████████████████████| 1/1 [00:00<00:00, 23.45file/s]
Creating Report 100%|████████████████████| 5/5 [00:01<00:00, 4.17section/s]
[SUCCESS] 2025-04-22 16:14:49 │ Report generated: cache_scan_20250422_155038/report.html
[SUCCESS] 2025-04-22 16:14:49 │ Found 5 verified vulnerabilities!
[INFO] 2025-04-22 16:14:49 │ Check cache_scan_20250422_155038/report.html for detailed results
[SUCCESS] 2025-04-22 16:14:49 │ Scan completed in 1441.37 seconds
```
## 理解结果
当 CacheF3r 发现漏洞时,它将:
1. 在扫描期间实时显示
2. 包含在最终的 HTML 报告中
3. 提供用于手动测试的验证命令
HTML 报告包含:
- 所有发现漏洞的摘要
- 每个漏洞的详细分析
- 受影响的 URL 和头部
- 反射详情
- 手动验证步骤
- 修复建议
## 工作原理
CacheF3r 按以下阶段运行:
1. **目标验证**:验证目标可达性并规范化输入
2. **载荷生成**:创建针对常见缓存问题的各种头部载荷
3. **URL 发现**:爬取并识别目标域名上的端点
4. **漏洞测试**:对每个端点使用多种头部变化进行测试
5. **验证**:通过多次验证尝试确认漏洞
6. **报告**:生成发现的综合 HTML 报告
## 安全注意事项
- 在扫描任何您不拥有的系统之前,始终获得适当授权
- 某些扫描模式可能会向目标系统生成大量流量
- 对于生产系统,考虑使用“隐蔽”模式并降低线程数
## 许可证
本项目根据 MIT 许可证授权 - 详情见 LICENSE 文件。
## 免责声明
本工具仅供教育和合法安全测试用途。用户有责任遵守适用法律并在扫描任何系统之前获得适当授权。
## 将会更新
标签:HTTP重定向, Python, requests, SEO, URL发现, Web安全, Web漏洞, 会话劫持, 域名侦查, 多线程扫描, 安全扫描, 安全报告, 安全检测, 无后门, 时序注入, 缓存中毒, 蓝队分析, 逆向工具, 高并发扫描