aadityabhutra/Web-Honeypot
GitHub: aadityabhutra/Web-Honeypot
一个使用Flask构建的Web蜜罐系统,通过模拟易受攻击端点来捕获和分析攻击数据,支持安全学习和威胁研究。
Stars: 0 | Forks: 0
# 蜜罐Web应用
本项目是一个使用Flask构建的简单蜜罐系统,旨在吸引、记录和分析针对虚假端点的未授权或可疑访问尝试。
## 功能特点
- 提供模拟登录、管理面板、API和文件的虚假端点
- 记录所有访问尝试的详细信息(时间戳、IP地址、请求方法、路径、请求体、用户代理)
- 包含攻击数据分析与可视化脚本
## 文件说明
- `app.py`:Flask蜜罐主服务器
- `attack_analysis.py`:按路径和IP分析攻击日志的脚本
- `plot_attacks.py`:按路径可视化攻击尝试的脚本
## 快速开始
### 环境要求
- Python 3.x
- pip
### 安装依赖
```
pip install flask matplotlib
```
### 启动蜜罐服务器
```
python app.py
```
服务器将在80端口启动。您可能需要以管理员权限运行或使用其他端口。
### 分析攻击日志
查看按路径和IP统计的攻击次数:
```
python attack_analysis.py
```
### 可视化攻击数据
生成按路径统计的攻击尝试柱状图:
```
python plot_attacks.py
```
图表将保存为 `attack_plot.png` 文件。
## MITRE ATT&CK 覆盖范围
本蜜罐中的虚假端点对应真实的初始访问技术:
| 虚假端点 | 模拟场景 | ATT&CK ID |
|---|---|---|
| /login | 凭证访问尝试 | T1078 |
| /admin | 管理面板漏洞利用 | T1098 |
| /api/data | API滥用/数据泄露 | T1530 |
| /files | 文件访问/Web Shell尝试 | T1505.003 |
## 部署注意事项
建议部署在具有公网IP的云VPS或AWS EC2实例上。为最大化数据收集,应开放80/443端口。负责任的部署方式:在隔离的VPC内运行,限制出站流量,每72小时更换实例以防成为攻击基础设施的一部分。所有捕获数据都应视为潜在敌对数据——切勿执行日志中的任何有效载荷。
## 许可证
MIT 许可证
标签:Cloudflare, Flask应用, MITRE ATT&CK, VPS部署, Web安全, 云部署, 代码示例, 威胁情报, 安全学习, 开发者工具, 攻击日志, 攻击模式, 数据分析, 模拟端点, 网络安全, 蓝队分析, 蜜罐, 证书利用, 软件分析, 逆向工具, 隐私保护