shibangibaidya/Prahari

GitHub: shibangibaidya/Prahari

一款 AI 驱动的安全运营中心自动化平台,通过 LLM 自动分类、优先级排序和总结安全告警邮件,实现威胁的实时感知与快速响应。

Stars: 0 | Forks: 0

# Prahari Command Core **一个由 AI 驱动的实时安全运营中心 (SOC) 和威胁调度系统。** [![React](https://img.shields.io/badge/React-20232A?style=for-the-badge&logo=react&logoColor=61DAFB)](#) [![Python](https://img.shields.io/badge/Python-14354C?style=for-the-badge&logo=python&logoColor=white)](#) [![Supabase](https://img.shields.io/badge/Supabase-3ECF8E?style=for-the-badge&logo=supabase&logoColor=white)](#) [![Groq](https://img.shields.io/badge/Groq_Llama--3-F55036?style=for-the-badge&logo=groq&logoColor=white)](#)
## 面临的问题 安全团队每天都会收到大量的安全告警。分析师通常必须手动阅读电子邮件,识别重要的入侵指标 (IoCs),判断威胁的严重程度,并确定应由哪位系统管理员进行响应。这个过程非常耗时,并且可能会延迟对真实安全事件的响应。 许多公司使用第三方工具来自动化这项工作,但将敏感的安全数据发送到外部服务可能会带来隐私和安全风险。Prahari 通过完全在组织自己的网络内部运行来解决这个问题。它能自动处理安全告警,同时确保所有敏感数据都保留在公司内部。 ## 概述 Prahari 是一个由 AI 驱动的安全运营中心 (SOC) 自动化平台。它持续监控传入的安全告警,使用大型语言模型 (LLM) 来理解和分析威胁,提取诸如入侵指标 (IoCs) 的重要信息,生成推荐的修复步骤,并通过移动端推送通知自动提醒相应的系统管理员。 它还包含一个基于 React 的 Command Core 仪表板,安全团队可以在其中实时监控告警、查看 AI 生成的事件报告、跟踪过往事件,并在需要时手动审查或解决告警。 ## 系统预览 ### Command Core 仪表板
Prahari Dashboard UI
### 系统架构
Prahari Architecture
## 技术栈 ### 前端客户端 * react **React + Vite** (UI 框架) * tailwind **Tailwind CSS** (样式与主题) * lucide **Lucide React** (图标库) ### 后端与智能代理 * python **Python 3.10+** (核心 Agent 逻辑) * sqlalchemy **SQLAlchemy** (PostgreSQL ORM) * groq **Groq API / Llama-3.3-70b-versatile** (AI 威胁提取与报告) ### 基础设施与集成 * supabase **Supabase** (PostgreSQL、实时 WebSockets、存储桶、身份验证) * google **Google Workspace / Gmail API** (自动化邮件轮询) * whatsapp **Meta WhatsApp Business API** (移动端事件升级) ## 核心功能 * **自主威胁摄入:** 一个持续运行的 Python 轮询引擎每 10 秒拦截一次原始安全电子邮件,无需人工进行数据录入。 * **Groq 智能层:** 使用 `llama-3.3-70b` 将混乱的电子邮件 payload 结构化为干净的 JSON,提取 IoC、优先级级别,并生成 10 步修复手册。 * **智能事件路由:** 将威胁 payload 中的 `affected_system` 与数据库进行匹配,并*仅*向分配给该系统的特定管理员发送 WhatsApp webhooks。 * **智能回复过滤:** 自动过滤掉现有电子邮件会话中的无效信息(例如:“谢谢”、“已记录”),仅升级具有实质操作意义的更新(例如:“紧急”、“已部署补丁”)。 * **实时仪表板同步:** 使用 Supabase WebSocket 通道 (`public:incidents`) 将实时更新即时推送到 React UI,无需重新加载页面。 * **午夜自动审计:** 一项基于 cron 的任务,会评估 1 天、7 天和 30 天的历史日志,以生成自动化的高管摘要和深度 SOC 报告,并将它们安全地上传到 Supabase 存储。 ## 安装与设置 ### 1. 克隆代码库 ``` git clone https://github.com/tropicalbee/PRAHARI.git cd prahari-soc ``` ### 2. 后端 Agent 设置 (Python) 导航到 agent 目录,创建一个虚拟环境,并安装依赖项。 ``` cd prahari_agent python -m venv .venv source .venv/bin/activate # On Windows use: .venv\Scripts\activate pip install -r requirements.txt ``` ### 3. 前端仪表板设置 (React) 打开一个新的终端,导航到 dashboard 目录,并安装 node modules。 ``` cd prahari_dashboard npm install ``` ### 4. 环境变量 根据 `.env.example` 文件,在 `prahari_agent` 和 `prahari_dashboard` 目录中创建 `.env` 文件。 所需的键:
描述
DATABASE_URL Supabase 连接字符串 (后端)
GROQ_API_KEY Groq LLM 访问 token (后端)
WHATSAPP_PHONE_NUMBER_ID Meta Graph API ID (后端)
WHATSAPP_ACCESS_TOKEN Meta Graph API Token (后端)
VITE_SUPABASE_URL Supabase 项目 URL (前端和后端存储上传)
VITE_SUPABASE_ANON_KEY Supabase 公钥 (前端)
VITE_SUPABASE_SERVICE_ROLE_KEY Supabase 密钥 (后端存储上传)
注意:对于 Gmail API,请确保将 credentials.json 放在 prahari_agent 根目录下,以生成初始的 token.json。 ## 运行系统 要使 Prahari SOC 上线,您需要同时运行持续的 Python Agent 和 React 前端。 ### 启动威胁摄入 Agent: ``` cd prahari_agent python run_agent.py ``` ### 启动 Command Core 仪表板: ``` cd prahari_dashboard npm run dev ``` ### (可选) 手动生成午夜摘要: ``` python prahari_agent/generate_summaries.py ``` ## 安全与数据隐私 **行级安全 (RLS):** 在所有 Supabase 表上均已启用。如果没有经过验证的身份验证会话 token,来自仪表板的数据库写入操作将会失败。
标签:Python, React, Supabase, Syscalls, 人工智能, 安全运营中心, 无后门, 用户模式Hook绕过, 网络映射, 网络调试, 自动化, 自定义脚本, 逆向工具