Lakshay-Hooda/BreachGuard
GitHub: Lakshay-Hooda/BreachGuard
BreachGuard 是一款基于 Flask 的凭据泄露审计工具,通过 k-Anonymity 协议和 HIBP API 在保护隐私的前提下检测密码与邮箱的泄露情况,并借助 AI 生成安全响应建议。
Stars: 1 | Forks: 0
# 🛡️ BreachGuard – 基于 API 的威胁分析器
BreachGuard 是一款安全、注重隐私保护的凭据审计和事件响应工具,使用 Python (Flask) 构建,并配备了现代深色主题的 Web 界面。该应用程序允许用户检查他们的密码是否在历史数据泄露中暴露过,而无需通过网络传输完整的密码。它可以在本地通过数学计算评估密码强度,扫描电子邮件地址的暴露情况,并利用生成式 AI 构建切实可行的补救策略。
## 🚀 核心功能
* **隐私保护密码检查 (k-Anonymity):** 使用 SHA-1 哈希实现 k-Anonymity 协议。仅将密码哈希的前 5 个字符通过网络发送到 *Have I Been Pwned (HIBP)* API。后缀匹配在本地执行,确保绝对的数据隐私。
* **本地密码熵计算器:** 在进行任何 API 交互之前,使用公式 E = L × log₂(R) 在数学上评估密码强度,提供对密码复杂度的即时反馈。
* **AI 驱动的补救建议:** 通过 Google AI Studio 集成 Google Gemini Pro API。如果检测到泄露,后端会将上下文输入模型,以提供高度结构化的 3 步可执行安全响应计划。
* **内置 DDoS 与 API 滥用防护:** 通过 `Flask-Limiter` 实施应用层安全。敏感的身份验证路由限制为每个 IP 地址每分钟最多 5 次请求。
* **电子邮件暴露中心:** 允许用户跨历史数据泄露审计电子邮件暴露情况,并根据泄露的数据参数自动生成针对性的防御建议。
## 🛠️ 技术栈
* **后端框架:** Python 3.13, Flask
* **安全与加密:** `hashlib` (SHA-1), `math` (熵分析), `Flask-Limiter` (速率限制)
* **AI 集成:** `google-generativeai` (Gemini Pro)
* **前端界面:** 纯 HTML5、CSS3 (现代深色主题)、原生 JavaScript (异步 Fetch API)
## 📐 工作原理 (k-Anonymity 协议)
1. 前端通过加密路由将明文密码安全地发送到 Flask 后端。
2. 后端生成密码的 SHA-1 哈希(例如 `CBFDAAC86E07E9...`)。
3. 哈希被拆分:前缀 (`CBFDA`) 发送到 HIBP API,而后缀 (`AC86E07E9...`) 严格保留在本地。
4. API 返回所有以该前缀开头的已知受损后缀列表。
5. 后端在本地检查匹配项。**完整的哈希或密码永远不会暴露给互联网。**
## 💻 安装与本地设置
### 前置条件
* 您的机器上全局安装了 Python 3.13。
* 从 [Google AI Studio](https://aistudio.google.com/) 获取的 Gemini API 密钥。
### 1. 打开您的终端
打开 VS Code 终端。确保您在 `BreachGuard` 目录中。
### 2. 安装必需的依赖项
由于 Windows 可能会默认使用较旧的 Python 版本,请在您的终端中执行此确切命令,以强制将依赖安装到您处于活动状态的 Python 3.13 环境中:
```
& "C:\Users\laksh\AppData\Local\Programs\Python\Python313\python.exe" -m pip install Flask requests google-generativeai Flask-Limiter python-dotenv
```
### 3. 配置环境变量
在项目的根文件夹中创建一个名为 `.env` 的文件:
```
GEMINI_API_KEY=your_actual_google_ai_studio_api_key_here
```
*(注意:`.env` 文件已在 `.gitignore` 中被明确忽略,以防止机密泄露。)*
### 4. 运行应用程序
```
& "C:\Users\laksh\AppData\Local\Programs\Python\Python313\python.exe" app.py
```
打开浏览器并导航到 `http://127.0.0.1:5000` 以与该平台进行交互。
## 🔒 安全与环境强化
此存储库严格遵循现代网络安全开发准则:
* **机密管理:** 敏感密钥使用运行时环境注入 (`python-dotenv`) 进行处理。
* **速率限制:** 保护本地服务器资源免受自动化脚本攻击和暴力破解尝试。
* **数据最小化:** 不会在任何本地存储或会话缓存中跟踪、记录或保留任何用户输入、密码或电子邮件。
## 📄 许可证
本项目是开源的,并采用 [MIT 许可证](LICENSE)。
标签:Flask, Python, 凭据审计, 后端开发, 密码安全, 数据可视化, 数据泄露查询, 无后门, 生成式AI, 索引, 逆向工具