rudra00434/Ransomware_Shield

GitHub: rudra00434/Ransomware_Shield

一个基于 Django 和 React 构建的 AI 驱动型端点防护平台,集成静态分析、机器学习分类、蜜饵陷阱和网络威胁情报,实现对勒索软件和中间人攻击的实时检测与解释。

Stars: 13 | Forks: 5

image

Ransomware Shield

An AI-Powered, Real-Time Ransomware Detection and Mitigation Platform.
Explore the features »

Screenshots · Architecture · Installation

## 🛡️ 关于本项目 Ransomware Shield 是一个综合性的全栈网络安全平台,旨在保护端点免受高级勒索软件和恶意软件威胁。它超越了传统的基于签名的扫描,通过整合 **机器学习(集成模型)**、**带有进程归属的实时蜜饵陷阱**、**带有威胁情报的实时网络分析**以及 **生成式 AI 威胁解释**,提供了多层防御机制。 该项目基于可扩展的 Django 后端、Celery 任务 Worker 和现代 React 前端构建,提供 **工业级静态分析**(采用 BLAKE3 哈希)、**19 特征 ML 分类**以及丰富的 **实时网络监控**(包含 IP 信誉、GeoIP、信标检测和风险评分)。 ## ✨ 关键功能与模块 ### 1. 🏗️ 工业级静态 PE 分析器 一个高级流水线,用于在不执行 Windows 可执行文件(PE 文件)的情况下对其进行分析,提取 19 个适用于机器学习的特征。 - **BLAKE3 多重哈希:** 单次通过计算 BLAKE3(主要,快约 14 倍)、SHA-256、SHA-1 和 MD5。SHA-256 用于 VirusTotal 兼容性。 - **60+ 可疑 API 检测:** 标记 6 个类别中常被滥用的 Windows API: - **加密 API:** `BCryptEncrypt`, `CryptEncrypt`, `CryptAcquireContext` - **文件枚举:** `FindFirstFile`, `FindNextFile`, `GetLogicalDriveStrings` - **进程注入:** `WriteProcessMemory`, `CreateRemoteThread`, `NtUnmapViewOfSection` - **反调试:** `IsDebuggerPresent`, `CheckRemoteDebuggerPresent` - **横向移动:** `NetShareEnum`, `WNetOpenEnum` - **卷影副本删除:** `vssadmin`, `wmic shadowcopy` - **勒索软件字符串检测:** 扫描比特币地址、`.onion` URL、勒索信关键字(`YOUR FILES`, `decrypt`, `payment`)以及加密库引用。 - **数字签名验证:** 检查 PE 文件的 Authenticode 签名。 - **加壳识别:** 通过节头分析(`.upox`, `.aspack`, `.themida`)检测加壳/混淆的可执行文件。 - **异常检测:** 标记编译器时间戳异常,计算每个节的熵值,检测覆盖层、TLS 回调和资源异常。 ### 2. 🧬 线程安全 YARA 扫描引擎 一个高度优化的、线程安全的签名匹配引擎。 - **线程安全缓存:** 使用 `threading.Lock` 确保并发访问安全,并基于单个文件的 mtime 进行缓存失效处理。 - **多格式支持:** 加载 `.yar` 和 `.yara` 规则文件,并支持命名空间隔离。 - **匹配字符串提取:** 提取截断的匹配字符串(前 5 个字符串 × 64 字节)用于详细报告。 - **ReDoS 防护:** 实施严格的超时机制,以防止正则表达式拒绝服务攻击。 ### 3. 🧠 集成 ML 分类器(19 个特征) 一个生产级预测模型,在 15,000+ 样本上进行了训练和全面验证。 - **集成架构:** 通过软投票结合 `GradientBoosting` + `RandomForest` 分类器,以实现卓越的准确性。 - **19 个工程特征:** 熵、可疑节/导入计数、TLS 回调、调试信息、数字签名状态、勒索字符串计数、资源熵、覆盖层检测、文件大小比率等。 - **恶意软件子类型:** 针对勒索软件、木马、释放器、蠕虫和加壳恶意软件分布进行训练。 - **验证:** 分层 5 折交叉验证,具有 **99.96% 的精确度** 和全面的指标(F1, FNR, 特征重要性)。 - **启发式回退:** 当 ML 模型不可用时,多信号加权启发式方法会利用所有 19 个特征提供可靠的分类。 ### 4. 🤖 生成式 AI 威胁解释器 将复杂的网络安全数据转化为可操作的情报,并提供 **ChatGPT 风格的 Markdown 渲染**。 - 通过 LangChain 集成 **Groq (LLaMA 3.1)**,实现超快推理。 - 摄入丰富的扫描数据(静态分析、YARA 匹配、VT 结果、ML 预测)并生成带有修复步骤的清晰解释。 - **Markdown UI:** 响应内容渲染包含语法高亮代码块、样式化表格、项目符号列表、行内代码和复制按钮 —— 匹配 Claude/ChatGPT 的外观和风格。 ### 5. 🍯 带有进程归属的蜜饵陷阱 主动式勒索软件陷阱,旨在捕获零日加密事件并提供取证细节。 - 生成逼真的诱饵文件(如 `passwords.txt`, `bitcoin_wallet.dat`, `tax_returns_2025.pdf`),包含非平凡内容(勒索软件会跳过微小文件)。 - **进程识别:** 当诱饵被修改时,使用 `psutil` 识别作恶进程的名称、路径和 PID。 - **熵监控:** 比较修改前后的熵值以检测主动加密(熵值跃升 > 7.0 = 可能已加密)。 - **警报速率限制:** 10 秒冷却时间防止在大规模加密事件期间发生警报洪泛。 - 向前端触发带有完整取证上下文的 `CRITICAL` WebSocket 警报。 ### 6. 🌐 带有威胁情报的实时网络监控 具有丰富安全上下文的实时端点遥测监控。 - **进程解析:** 通过 `psutil` 将每个连接的 PID 映射到进程名称、可执行路径和用户名。 - **IP 信誉引擎:** 根据以下来源检查远程 IP: - Emerging Threats 受损 IP 源(自动下载并缓存) - 已知恶意 IP 数据库 - **端口分类:** 识别 C2 端口(4444, 8443, 9001)、挖矿端口(3333, 14444),并标记非标准连接。 - **GeoIP 查询:** 使用 MaxMind GeoLite2 解析远程 IP 的原籍国家。 - **信标检测:** 使用变异系数分析连接间隔模式以检测 C2 回连。 - **风险评分:** 为每个连接分配 0-100 的风险评分及详细原因。 - **ARP 欺骗检测:** 检测中间人攻击,并通过虚拟适配器 MAC 过滤减少误报。 - **AI 分析:** 丰富的连接数据(进程、信誉、GeoIP、风险评分)被馈送到 Groq LLM 进行简明、可操作的安全分析。 ### 7. 🎯 归一化扫描流水线 具有加权威胁评分的多引擎编排。 - **5 个威胁等级:** CLEAN → LOW → MEDIUM → HIGH → CRITICAL - **加权评分:** VirusTotal (30%) + YARA (25%) + ML 分类器 (25%) + 静态分析 (20%) - **勒索软件加成:** 独立的勒索软件字符串检测为分数增加 +20% - **安全文件处理:** 分析后执行零覆写删除,Celery 任务超时设置(5 分钟硬超时/4 分钟软超时) - **文件类型检测:** 处理前进行魔数分析(不基于扩展名) ## 📸 截图 | 仪表盘概览 | 实时网络分析 | | :---: | :---: | | ![Dashboard Setup](https://github.com/user-attachments/assets/1a9fd176-68b7-4b60-9118-6e1d51fef46b) | ![Network Config](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/5ac1ace1df122938.png) | | *威胁评分和近期扫描的高级概览。* | *带有进程名称、风险评分和 IP 信誉的实时连接监控。* | | AI 威胁解释器 | 实时 MitM ARP 警报 | | :---: | :---: | | ![AI Explainer](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/794a225c28122941.png) | ![MitM ARP Spoofing Detection](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/96e7d561d9122945.png) | | *作为对话式安全分析师运行的 LLaMA 3.1,具有 ChatGPT 风格的 Markdown 渲染。* | *针对活跃中间人攻击的全局警告。* | | 高级扫描引擎 | 扫描后 PDF 报告 | | :---: | :---: | | ![Scanner Interface](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/8a67936f7b122948.png) | ![PDF Report](https://static.pigsec.cn/wp-content/uploads/repos/2026/03/1cbb867d18122951.png) | | *带有 BLAKE3 哈希、AI 解释、VT 结果和勒索软件指标的多引擎扫描。* | *包含 AI 严重性解释的详细可下载报告。* | ## 🛠️ 技术栈 ### 前端客户端 - **框架:** React 18, Vite - **样式:** Tailwind CSS, PostCSS - **状态管理:** Zustand - **路由:** React Router v6 - **图表/UI:** Recharts, Lucide React - **LLM 渲染:** React Markdown, React Syntax Highlighter, Remark GFM ### 后端 API & Workers - **核心框架:** Django 4.2+, Django REST Framework (DRF) - **WebSockets:** Django Channels, Daphne Server - **任务队列:** Celery, Redis (Broker/Backend) - **数据库:** SQLite3 (可配置为 PostgreSQL) - **安全:** JWT Authentication (SimpleJWT) ### 分析与 AI 引擎 - **恶意软件分析:** `yara-python`, `pefile`, `virustotal3`, `python-magic` - **机器学习:** `scikit-learn` (GradientBoosting + RandomForest Ensemble) - **哈希计算:** `blake3` (主要), `hashlib` (SHA-256 用于 VT) - **系统遥测:** `psutil`, `watchdog` (文件系统事件) - **威胁情报:** `geoip2` (GeoIP), `aiohttp` (异步源下载) - **生成式 AI:** `langchain`, `langchain-groq` ## 🏗️ 技术架构 ``` graph TD UI[React Frontend Interface] -->|HTTP REST| API(Django API Gateway) UI <-->|WebSockets| CHANNELS{Django Channels} API --> AUTH[JWT Authentication] API --> DB[(SQLite Database)] API -->|Submit Scan Job| BROKER[(Redis Message Broker)] BROKER -->|Consume Job| CELERY[Celery Background Workers] CELERY --> ENGINE_1[Static PE Analyzer - 19 Features] CELERY --> ENGINE_2[YARA Scanner Engine] CELERY --> ENGINE_3[Ensemble ML Classifier] CELERY --> ENGINE_4[VirusTotal API - SHA-256] ENGINE_1 --> SCORING[Normalized Threat Scoring] ENGINE_2 --> SCORING ENGINE_3 --> SCORING ENGINE_4 --> SCORING SCORING --> AI_REPORT[AI Threat Explainer] AI_REPORT <--> GROQ((Groq / LLaMA 3.1 API)) AI_REPORT --> DB HONEYPOT[Honeyfile Watchdog Service] -.->|File Event + Process ID| CHANNELS NET[Network Monitor] -.->|Enriched Stream| CHANNELS NET --> THREAT_INTEL[Threat Intelligence] THREAT_INTEL --> IP_REP[IP Reputation Feed] THREAT_INTEL --> GEOIP[GeoIP Lookup] THREAT_INTEL --> BEACON[Beaconing Detection] ``` ## 🚀 安装与设置 按照以下步骤在本地启动并运行副本。 ### 前置条件 - Python 3.10+ - Node.js (v18 或更高版本) - Redis Server (运行在 `localhost:6379`) - **VirusTotal** 和 **Groq** 的 API 密钥 ### 1. 克隆仓库 ``` git clone https://github.com/your-username/Ransomware_Shield.git cd Ransomware_Shield ``` ### 2. 后端设置 ``` cd backend # 创建并激活虚拟环境 python -m venv venv # Windows 上:venv\Scripts\activate # Mac/Linux 上:source venv/bin/activate # 安装 requirements pip install -r requirements.txt # 设置环境变量 # 创建一个包含 GROQ_API_KEY 和 VT_API_KEY 的 .env 文件 # 运行 Database Migrations python manage.py migrate # 训练 ML Model(首次设置需要) python -m ai_engine.ml.train_model # 创建 Superuser(可选) python manage.py createsuperuser # 启动 Django/Daphne Server python manage.py runserver ``` ### 3. 后台服务设置(在单独的终端窗口中) ``` # 终端 2 - 启动 Redis(如果未作为服务原生运行) # 确保 redis 处于活动状态。 # 终端 3 - 启动 Celery Worker cd backend venv\Scripts\activate # Windows 上使用 pool=solo celery -A config worker -l info --pool=solo # 终端 4 - 启动 Honeyfile Ransomware Trap cd backend venv\Scripts\activate python manage.py run_honeyfile ``` ### 4. 前端设置(在新的终端窗口中) ``` cd frontend # 安装 Node modules npm install # 启动 Vite development server npm run dev ``` 在浏览器中访问 `http://localhost:5173`。 ### 5. 可选:GeoIP 设置 用于网络分析中的国家级 IP 解析: 1. 在 [MaxMind](https://www.maxmind.com/) 创建一个免费账户 2. 下载 `GeoLite2-Country.mmdb` 3. 将其放置在 `backend/geoip/` 中 ## 📊 ML 模型性能 集成分类器在合成数据上达到以下指标(15,550 个样本,分层 5 折交叉验证): | 指标 | 分数 | |--------|-------| | **精确度** | 99.96% | | **准确度** | ~99.9% | | **漏报率** | < 0.1% | 特征重要性主要由以下因素决定:熵、可疑导入计数、勒索软件字符串计数和节异常。 ## 📄 许可证 根据 MIT 许可证分发。更多信息请参见 `LICENSE`。 ## 由 Rudranil Goswami 开发。 ## 联系邮箱 : tatairudra39@gmail.com .
标签:Apex, API行为分析, BLAKE3哈希, C2信标检测, Celery, Cloudflare, DAST, Django, DNS 反向解析, GeoIP定位, HTTP工具, IP 地址批量处理, MITRE ATT&CK, PE文件分析, Python, React, Syscalls, TCP/IP协议栈, 中间人攻击检测, 云安全监控, 人工智能, 勒索软件检测, 反病毒, 威胁情报, 威胁解释器, 开发者工具, 异常检测, 恶意软件分析, 搜索引擎查询, 无后门, 时间线生成, 机器学习, 深度学习, 生成式AI, 用户模式Hook绕过, 端点防护, 索引, 网络安全, 网络安全审计, 网络安全平台, 网络流量分析, 蜜文件, 蜜罐, 证书利用, 逆向工具, 隐私保护, 静态分析, 风险评分