Sedefehmdl/phishguard
GitHub: Sedefehmdl/phishguard
一个全栈网络安全意识平台,利用交互式模拟与可视化训练用户识别钓鱼与社会工程攻击。
Stars: 0 | Forks: 0
# PhishGuard
**交互式网络安全意识平台**
训练你对网络钓鱼、社会工程和网络攻击的直觉——基于真实的 OWASP 威胁情报。
[**在线演示**](https://phishguard-sg0a.onrender.com) · [报告问题](https://github.com/Sedefehmdl/phishguard/issues)





## 实时演示
该应用部署在 **[phishguard-sg0a.onrender.com](https://phishguard-sg0a.onrender.com)**。
## 关于项目
PhishGuard 是一个全栈网络安全意识平台,旨在帮助用户识别并防御真实的网络威胁。该平台模拟真实的攻击场景——从复杂的网络钓鱼邮件到 OWASP Top 10 漏洞,并提供基于真实泄露数据的交互式训练。
该项目结合了 Python Flask REST API 与自定义设计的 Vanilla JavaScript 前端,采用暗色终端灵感的美学风格,反映网络安全运营中心的体验。
### 动机
作为一名网络安全专业的硕士生,我希望将学术安全理论转化为实践工具。目标是打造一个超越标准 CRUD 应用的项目,在网络安全领域融合全栈开发、用户体验设计和真实的教育价值。
## 功能
### 电子邮件钓鱼模拟器
分析真实与伪造的电子邮件场景,这些场景源自实际攻击模式。用户将看到一个类似收件箱的界面,并必须识别哪些邮件是钓鱼尝试。每个决策都会附带详细的红色标志分析和信任指标,教用户识别攻击技术,如域名欺骗、紧迫性操纵和社会工程。
### 自适应安全测验
测试三个难度级别(简单、中等、困难)的安全知识。问题涵盖 OWASP Top 10、攻击技术、事件响应和安全编码实践。每个答案都包含解释,最终分数会转化为分析师徽章——从“学习模式”到“精英分析师”。
### 威胁情报百科
一个可浏览的数据库,包含 8 大攻击向量,包括钓鱼、 spear 钓鱼、勒索软件、中间人攻击、SQL 注入、XSS、凭证填充和语音钓鱼。每个条目都包含完整的攻击杀伤链、真实事件示例(Colonial Pipeline、WannaCry、DNC 黑客攻击)、预防技术和 OWASP 参考。
### 威胁仪表板
一个数据可视化模块,展示全球网络安全威胁态势。使用自定义 SVG(不依赖外部图表库)构建,包含动画柱状图、环形图、趋势线、行业部门风险指数、实时威胁情报滚动条和分析员终端。
## 技术栈
| 层 | 技术 |
|------|------|
| 后端 | Python 3.10+、Flask 3.0、Gunicorn |
| 前端 | Vanilla JavaScript (ES6+)、HTML5、CSS3 |
| 数据可视化 | 自定义 SVG(不依赖外部图表库) |
| 排版 | Space Mono、Syne(Google Fonts) |
| 数据存储 | JSON(设计为可无缝切换至 SQL/NoSQL) |
| 部署 | Render.com(欧盟中部区域) |
| 版本控制 | Git、GitHub |
## 设计理念
UI 灵感来源于安全运营中心(SOC)仪表盘与编辑杂志设计的融合:
- 暗色终端美学,搭配深黑与电光青色点缀
- Space Mono(数据)与 Syne(标题)的字体搭配
- 非对称布局与有意留白
- 微妙动效:扫描线效果、动画计数器、发光元素
- 每一处细节都经过精心设计——拒绝通用模板美学
## 快速开始
### 前置条件
- Python 3.10 或更高版本
- pip(Python 包管理器)
### 安装
```
# 克隆仓库
git clone https://github.com/Sedefehmdl/phishguard.git
cd phishguard
# 创建虚拟环境
python -m venv venv
# 激活它
# macOS/Linux:
source venv/bin/activate
# Windows (PowerShell):
venv\Scripts\Activate.ps1
# 安装依赖
pip install -r requirements.txt
# 运行应用程序
python app.py
```
打开浏览器访问 `http://localhost:5000`。
## 项目结构
```
phishguard/
├── app.py # Flask application & REST API
├── requirements.txt # Python dependencies
├── README.md
├── data/
│ ├── emails.json # Phishing simulation scenarios
│ ├── threats.json # Threat encyclopedia entries
│ ├── quiz.json # Quiz questions (3 difficulty tiers)
│ └── stats.json # Dashboard statistics
├── templates/
│ ├── base.html # Base layout with navigation
│ ├── index.html # Landing page
│ ├── simulator.html # Email phishing simulator
│ ├── quiz.html # Adaptive quiz engine
│ ├── threats.html # Threat intelligence browser
│ └── dashboard.html # Analytics dashboard
└── static/
├── css/main.css # Design system & components
└── js/main.js # Shared utilities
```
## API 参考
| 方法 | 端点 | 描述 |
|------|------|------|
| `GET` | `/api/emails` | 获取邮件批次(`?mode=mixed&count=6`) |
| `POST` | `/api/check_email` | 提交钓鱼判定用于验证 |
| `GET` | `/api/quiz` | 获取测验题目(`?difficulty=medium`) |
| `POST` | `/api/quiz/answer` | 提交测验答案并获取解释 |
| `GET` | `/api/threats` | 获取威胁百科条目(`?category=...`) |
| `GET` | `/api/stats` | 仪表盘统计与指标 |
| `POST` | `/api/score` | 根据分数计算徽章成就 |
## 涵盖的安全概念
### OWASP Top 10 覆盖
- **A01** — 失效的访问控制
- **A02** — 加密失败(中间人攻击)
- **A03** — 注入(SQL 注入、XSS)
- **A07** — 身份识别与认证失效(凭证填充、钓鱼)
- **A08** — 软件和数据完整性失效(勒索软件)
### 攻击类别
- **社会工程** — 钓鱼、Spear 钓鱼、Vishing、Smishing、BEC/Whaling
- **Web 攻击** — SQL 注入、跨站脚本(XSS)
- **网络攻击** — 中间人攻击、ARP 中毒、SSL 剥离
- **恶意软件** — 勒索软件、双重勒索战术
- **认证攻击** — 凭证填充、密码喷洒
## 路线图
计划中的未来增强功能:
- 带有持久分数的用户认证
- 多用户训练的排行榜
- 额外的威胁配置文件(供应链、零日)
- 与真实威胁情报源集成(AlienVault OTX)
- 多语言支持(土耳其语、匈牙利语、德语)
- 移动端响应式改进
- 导出培训证书(PDF)
## 作者
**Sadaf Ahmadli**
布达佩斯厄特沃什·罗兰大学(ELTE)网络安全专业硕士生
TryHackMe 全球前 8%
- LinkedIn:[sadaf-ahmadli](https://www.linkedin.com/in/sadaf-ahmadli-4863a4233/)
- GitHub:[Sedefehmdl](https://github.com/Sedefehmdl)
- Behance:[sedefehmdl](https://behance.net/sedefehmdl)
## 许可证
本项目采用 MIT 许可证,仅用于教育目的。
## 感谢
- OWASP 基金会——提供 Top 10 框架与安全研究
- TryHackMe——提供启发本项目的实战安全训练
- ELTE 布达佩斯——提供网络安全课程基础
- IBM Security、Verizon DBIR 与 CISA 的公开威胁报告
标签:CMS安全, Flask, JavaScript, meg, OWASP Top 10, Python, Web安全, 交互式训练, 仪表盘, 信息安全, 后端开发, 威胁情报, 安全意识平台, 开发者工具, 教育安全, 数据可视化, 无后门, 模拟攻击, 用户行为分析, 社会工程, 终端主题UI, 网络安全意识培训, 网络钓鱼模拟, 网络钓鱼防御, 蓝队分析, 逆向工具, 邮件安全