RupeshPothula/CyberRakshak

GitHub: RupeshPothula/CyberRakshak

CyberRakshak 是一款结合大型语言模型与多个专用机器学习模型的网络安全聊天机器人,通过对话式交互为用户提供自动化的威胁检测与事件响应报告。

Stars: 0 | Forks: 0

# 🛡️ CyberRakshak:AI 驱动的网络安全助手 **一款由大型语言模型(LLM)和专用机器学习驱动的智能、多层威胁检测与缓解聊天机器人系统。** [![GitHub Repository](https://img.shields.io/badge/GitHub-Repository-blue?logo=github)](https://github.com/Sarvesh-Jhawar/CyberRakshak.git)
## 📖 项目概述 **CyberRakshak** 是一款先进的网络安全聊天机器人,旨在弥合复杂的机器学习威胁检测与用户友好的事件响应之间的差距。 用户无需安全团队手动解析恶意文件、URL 或网络日志,只需**在聊天中描述他们的问题或粘贴可疑数据**。CyberRakshak 的智能架构会动态路由该问题,利用生成式 AI 和专用机器学习阵列同步对其进行分析,并综合生成一份全面的事件报告。 ## 🚀 如何运行该项目(简单步骤) 1. **安装前置条件**:安装 [Python](https://www.python.org/downloads/)、[Node.js](https://nodejs.org/) 和 [PostgreSQL](https://www.postgresql.org/download/)。 2. **设置数据库**:在本地 PostgreSQL 中创建一个名为 `cyberrakshak` 的数据库(使用 pgAdmin)。 3. **配置环境**: - 将 `Backend/env.example` 复制为 `Backend/.env`。 - 使用您的本地 PostgreSQL 凭据更新 `DATABASE_URL`,并添加您的 `GROQ_API_KEY`。 4. **启动**:双击主文件夹中的 **`executable_file.bat`**。 *注意:首次运行时会自动安装所有依赖项,因此可能需要几分钟时间。* ## 📁 交互式项目导航器 点击下方的文件夹以探索项目结构和技术文档: * **[📂 Backend](./Backend/)**:核心 FastAPI 逻辑、PostgreSQL 集成和安全协议。 * **[📂 Frontend](./Frontend/)**:Next.js 14 仪表板、聊天 UI 和专用组件。 * **[📂 Machine Learning](./models/)**:智能层的核心(5 个专用的威胁模型)。 * **[📂 LLM Layer](./llm/)**:AI 编排、意图路由和综合逻辑。 ### 📑 技术文档 * **[📝 技术历程](./DEVELOPMENT_JOURNEY.md)**:关于该项目如何构建的详细分步流程。 ## ⚙️ 工作原理(核心架构) CyberRakshak 采用高速、双引擎的“路由器到合成器”架构运行: ``` graph TD %% Styling Definitions classDef user fill:#2d3748,stroke:#4a5568,stroke-width:2px,color:#fff classDef router fill:#805ad5,stroke:#e9d8fd,stroke-width:2px,color:#fff classDef ml fill:#2b6cb0,stroke:#63b3ed,stroke-width:2px,color:#fff classDef synth fill:#4c51bf,stroke:#c3dafe,stroke-width:2px,color:#fff classDef output fill:#276749,stroke:#9ae6b4,stroke-width:2px,color:#fff subgraph UserInterface["🌐 Frontend Layer"] User["👤 User (Victim/Analyst)"] Chatbot["💬 Chatbot Interface"] Input["📝 Input (Logs, URL, Issue Desc.)"] end subgraph BackendAPI["⚙️ Backend Logic & Routing"] API["🔌 Backend Controller (FastAPI/Node)"] LLM_Router["🧠 Initial LLM Router
(Categorizes Intent)"] end subgraph MLSubsystem["🛡️ Specialized ML Subsystem"] M1["🌐 Networking Model
(RF + Precision Pruning)"] M2["🗄️ Ransomware Model
(SelectKBest ANOVA + RF)"] M3["🎣 Phishing Engine
(Feature Extraction + RF)"] M4["🦠 Malware Analyser
(PE Structure RF)"] M5["🕵️ Zero-Day Predictor
(Logistic Regression)"] end subgraph AnalysisLayer["🔬 Dual-Engine Analysis Phase"] LLM_Context["🧠 LLM Contextual Analysis
(Heuristics & Threat Intel)"] ML_Score["📊 Hard Mathematical Score
& Confidence Array"] end subgraph FinalReporting["📤 Final Synthesis Layer"] Synthesizer["⚡ Dual-Engine Synthesizer
(LLM Generates Final Report)"] Verdict["🔎 Final Threat Verdict & ML Stats"] Mitigation["🛠️ Quarantine/Preventative Steps"] Reporting["📞 Official Complaint Protocol"] end %% Wiring User Input User --> Chatbot Chatbot --> Input Input --> API API --> LLM_Router %% Routing to Specialized ML Models LLM_Router -- "Detects Network Traffic" --> M1 LLM_Router -- "Detects OS/Registry Anomaly" --> M2 LLM_Router -- "Detects Suspicious URL" --> M3 LLM_Router -- "Detects Suspicious File/PE" --> M4 LLM_Router -- "Detects Unknown Payload" --> M5 %% Simultaneous LLM Path LLM_Router -- "Parallel Processing" --> LLM_Context %% Aggregating ML Scores M1 --> ML_Score M2 --> ML_Score M3 --> ML_Score M4 --> ML_Score M5 --> ML_Score %% Synthesis & Report Generation ML_Score --> Synthesizer LLM_Context --> Synthesizer Synthesizer --> Verdict Synthesizer --> Mitigation Synthesizer --> Reporting %% Loop back to user Verdict -.-> Chatbot Mitigation -.-> Chatbot Reporting -.-> Chatbot %% Assigning Colors class User,Chatbot,Input user class API,LLM_Router router class M1,M2,M3,M4,M5,ML_Score ml class LLM_Context,Synthesizer synth class Verdict,Mitigation,Reporting output ``` 1. **📥 用户输入(Prompt):** 用户在聊天机器人中粘贴可疑日志、URL、恶意软件哈希,或描述网络安全事件。 2. **🔀 LLM 路由引擎:** 核心 Large Language Model 拦截 prompt 并动态对威胁向量进行分类(例如,*这是网络钓鱼尝试?网络入侵?还是勒索软件?*)。 3. **⚡ 双重执行阶段:** - **机器学习分析:** LLM 主动触发为识别出的威胁量身定制的、特定的、预训练的本地 ML 模型,以得出严谨的数学概率分数。 - **LLM 上下文分析:** 同时,LLM 分析原始文本/代码的启发式上下文,利用其庞大的网络安全训练数据。 4. **🧠 LLM 综合:** 两项结果——严谨的数学 ML 预测和 LLM 的上下文发现——都会被反馈到中央 LLM 引擎中。 5. **📤 最终输出生成:** 聊天机器人回复一份格式清晰、具有高度可操作性的情报报告。 ## 🧠 机器学习军械库 在幕后,LLM 将数据路由到五个经过深度优化、受正则化约束的机器学习 pipeline 之一: - 🌐 **网络异常模型:** 随机森林过滤 TCP/UDP 入侵模式。 - 🦠 **恶意软件检测模型:** 树集成解析可移植执行(PE)架构和内存状态。 - 🗄️ **勒索软件行为模型:** ANOVA 优化的特征选择,针对快速的 OS 注册表/API 损坏。 - 🎣 **网络钓鱼评估器:** 从可疑 URL 中提取结构化启发式特征。 - 🕵️ **零日预测器:** 逻辑回归将通用的、未公开的 payload 异常进行映射,以拦截以前未见的威胁。 *(注意:请参阅 `models/` 目录以获取专门的、深度技术性的 README,其中解释了每个 pipeline 的训练、数据集映射和超参数调优)。* ## 🎯 最终情报报告 当 CyberRakshak 成功合成一个事件时,用户将收到一份可操作的 **威胁缓解报告**,该报告保证提供: * **📊 数学置信度:** 触发的 ML 模型给出的精确输出精度和准确率分数。 * **🔎 威胁判定:** 清晰的“恶意”或“良性”决策。 * **🛠️ 上下文分解:** 系统*为什么*认为它是恶意的(由 LLM 提供支持)。 * **🛡️ 预防步骤:** 立即、量身定制的行动项,以隔离威胁或保护网络安全。 * **📞 报告协议:** 关于如何以及在哪里根据向量提交正式网络投诉或事件报告的直接指导。
“通过混合人工智能赋能持续防御。”
标签:AMSI绕过, AV绕过, DLL 劫持, FastAPI, MITM代理, Sysdig, 大语言模型, 威胁检测, 智能助手, 测试用例, 网络安全, 自动化攻击, 逆向工具, 隐私保护