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, 索引, 逆向工具