Jatin-source/IntelliGuard-EDR

GitHub: Jatin-source/IntelliGuard-EDR

一款基于混合机器学习与可解释AI的端点检测与响应工具,专注于在Windows上实时识别并解释零日恶意行为。

Stars: 2 | Forks: 0

# 🛡️ IntelliGuard EDR — 智能端点检测与响应 ![Python 版本](https://img.shields.io/badge/Python-3.10%2B-blue.svg) ![ML Stack](https://img.shields.io/badge/ML-XGBoost%20%7C%20Random%20Forest-orange) ![UI](https://img.shields.io/badge/GUI-CustomTkinter-blueviolet) ![状态](https://img.shields.io/badge/Status-Active%20Development-success) **IntelliGuard** 是一款在后台运行的 Windows 应用程序,它会主动监控您的系统,利用 AI 分析任何新的可执行文件,并在检测到恶意软件时向您发送 Windows 通知。它会确切地告诉您*为什么*某个文件被标记,以及它可能属于哪种类型的恶意软件。 与依赖已知特征库的传统防病毒解决方案不同,IntelliGuard 利用机器学习对文件结构(**静态分析**)和运行时行为(**动态分析**)进行检测,以发现难以捕捉的零日威胁。 ## 📂 仓库结构 ``` IntelliGuard/ │ ├── data/ │ ├── raw/ ← Kaggle, EMBER, BODMAS, CIC datasets │ └── processed/ ← Cleaned features and train/val/test splits │ ├── src/ │ ├── utils/ ← Config, logger, memory management, metrics │ ├── preprocessing/ ← Data ingestion and cleaning processors │ ├── features/ ← Feature engineering and robust scaling │ ├── models/ ← Random Forest, XGBoost, Fusion models & Training │ ├── explainability/ ← SHAP engines and malware type hinting │ └── detector/ ← File watcher, notifier, and analysis engine │ ├── models/ ← Trained Expert AI Models ├── outputs/ │ ├── scalers/ ← Fitted Scaler (.pkl) │ ├── shap/ ← SHAP evaluation plots │ └── metrics/ ← Evaluation results (JSON + PNG) │ ├── tests/ ← Unit tests ├── .env ← Secrets (DO NOT COMMIT) ├── config.yaml ← Central project configuration ├── requirements.txt ← Python dependencies └── main.py ← Application Entry Point (GUI & Background Watcher) ``` ## ⚙️ 前置条件与环境设置 本项目需要 Windows 环境以及 NVIDIA GPU,以实现 AI 加速训练。 ### 1️⃣ 系统依赖 - Windows 10/11 - Python 3.10+ - NVIDIA GPU(可选,但强烈推荐,可加速 XGBoost 树构建过程) ### 2️⃣ 安装 Python 依赖 打开您的终端/命令提示符: ``` # Clone the repository git clone https://github.com/Jatin-source/IntelliGuard-EDR.git cd IntelliGuard-EDR # Create a virtual environment (Recommended) python -m venv venv venv\Scripts\activate # Install dependencies pip install -r requirements.txt ``` ## 🚀 如何运行 IntelliGuard 安装好依赖项后,您就可以启动 IntelliGuard 系统了。 ### 步骤 1 — 配置环境 确保您的 `.env` 文件中包含特定于系统的路径和配置。 ### 步骤 2 — 启动应用程序 运行主入口文件: ``` python main.py ``` ### 步骤 3 — 使用流程 ``` graph TD; A[Drop File into Watched Folder] --> B[IntelliGuard Automatically Detects]; B --> C[AI Analyzes File Silently]; C --> D{Is File Clean?}; D -- Yes --> E[Logged Quietly without Interruption]; D -- No --> F[Windows Alert Triggered]; F --> G[Alert Explains: Verdict, Confidence, Threat Type]; ``` ## 🧠 AI 架构与机器学习方法 ### 1. 静态分析 — 无需运行的检查 IntelliGuard 无需执行文件即可安全地查看其结构。 - **PE 头:** 执行标志、入口点。 - **节熵:** 检测加密或加壳的恶意软件(高熵 = 可疑)。 - **字符串提取:** 加密货币钱包地址、CMD 字符串、URL payload。 - **导入表:** 检测注入 API (`WriteProcessMemory`)、持久化技术等。 ### 2. 动态分析 — 行为监控 利用我们的动态专家模型(如 Quo Vadis & CIC),IntelliGuard 可以在受控沙箱中监控文件执行情况。 - 文件创建与注册表修改。 - 网络连接与进程注入。 - 行为系统调用序列。 ### 3. 后融合引擎 ``` graph LR; S[Static XGBoost Model] --> |87% Malware Prob| F(Logistic Regression Fusion); D[Dynamic XGBoost Model] --> |91% Malware Prob| F; F --> |Final Verdict| V[94% Confidence Alert]; ``` 如果两个模型都强烈认同存在威胁,系统就会生成高置信度警报。如果它们的判断出现分歧,则会将其标记以供人工审查。 ## 🔍 可解释性 — SHAP AI 映射 IntelliGuard 不仅仅拦截文件,它还会告诉你*原因*。利用 **SHAP (SHapley Additive exPlanations)**,它能生成做出决策背后的真实原因。 这些数据会直接输入到我们的**恶意软件类型提示系统**中,以将威胁归类到不同的家族(勒索软件、木马、间谍软件、Rootkit)。 ## 💾 数据集 我们在海量网络安全数据集的基础之上构建了 IntelliGuard,以确保稳健的检测极限: - **EMBER 2024 (Win32 + Win64):** 包含全面的静态 PE 头属性、字符串和熵值。 - **BODMAS:** 包含 134,435 个样本,具有 2,381 个预提取特征 + 特定的恶意软件家族标签。 - **Kaggle Malware Dataset:** 包含基础 CSV 结构化标头元数据的基础数据集。 - **Quo Vadis & CIC DIG 2025:** 高质量的动态执行 JSON 序列和行为图谱。 ## 📊 我们遵循的关键 ML 规则 - **训练集/验证集/测试集是神圣不可侵犯的:** 测试集只能被触碰一次——即在最后阶段。 - **假阴性率是关键:** 漏报真实的恶意软件远比误报严重得多。目标假阴性率 (FNR) 受到了严厉的惩罚。 - **RobustScaler 优于 StandardScaler:** 恶意软件数据具有极端的异常值。我们根据中位数 IQR 进行缩放。 ## 🛠 使用的技术 - **核心编程:** Python 3.10+ - **机器学习模型:** XGBoost (GPU 加速), Random Forest, Logistic Regression - **可解释性:** SHAP 数据解释器 - **数据工程:** Pandas, Numpy, Scipy, Imbalanced-Learn (SMOTE) - **恶意软件取证:** `pefile` - **Windows 集成:** `watchdog` (文件监控), `win10toast` (原生通知) - **视觉与界面:** CustomTkinter, Matplotlib, Seaborn ## 🎯 研究目标 开发一种高性能的端点检测代理,利用混合机器学习(后融合)建模拦截并中和高度混淆的零日威胁,同时在正常系统使用期间不会造成高昂的计算开销。 ## 👨‍💻 作者 **Jatin Hajare** — 计算机科学与工程 (B.Tech CSE) 学士 *研究方向:* 网络安全、机器学习在网络安全中的应用、端点响应系统和恶意软件分析。 ## ⭐ 项目状态 ✔ 基础 Watchdog 与 GUI 已开发完成 ✔ 静态模型已训练完成 (BODMAS / EMBER) ✔ SHAP 可解释性引擎已开发完成 ⏳ 正在集成后融合与 Quo Vadis 动态分析
标签:Apex, EDR, Python, Windows, 恶意软件检测, 无后门, 机器学习, 终端安全, 脆弱性评估