anaszahid07/AI-PCAP-Analyzer

GitHub: anaszahid07/AI-PCAP-Analyzer

基于随机森林机器学习模型的网络流量取证分析平台,可自动解析 PCAP 文件并检测 DDoS、僵尸网络等恶意攻击模式。

Stars: 0 | Forks: 0

# AI-PCAP 分析器 ![版本](https://img.shields.io/badge/version-1.0.0-blue.svg) ![许可证](https://img.shields.io/badge/license-MIT-green.svg) ![React](https://img.shields.io/badge/frontend-React_%7C_Vite-61DAFB) ![Node](https://img.shields.io/badge/backend-Node.js-339933) ![Python](https://img.shields.io/badge/AI-Python_%7C_Scikit_Learn-3776AB) **一款由机器学习驱动的下一代网络取证分析工具。** ## 📖 概述 **AI-PCAP Analyzer** 是一款强大的数字取证仪表板,旨在自动化网络流量捕获(PCAP 文件)的提取与分析。通过结合传统的数据包解析与预训练的随机森林机器学习模型,该工具允许安全分析师可视化网络行为,并自动检测诸如 DDoS 攻击、僵尸网络活动和未经授权的入侵等恶意模式。 该项目弥合了原始数据与可执行情报之间的鸿沟,为网络调查提供了一个现代化的 Web 界面。 ## 🔍 在数字取证中的重要性 在不断演变的网络安全领域中,使用 Wireshark 等工具进行手动数据包分析虽然强大,但通常非常耗时且容易出错,特别是在处理大型数据集时。AI-PCAP Analyzer 满足了现代取证的关键需求: * **自动化异常检测:** 传统取证严重依赖于基于特征签名的检测。该工具利用**机器学习**来识别静态签名可能遗漏的行为异常(例如,不规则的数据包时间、大小变化)。 * **快速分流:** 该工具提供即时的“恶意置信度评分”,而无需手动筛选成千上万的数据包,允许分析师优先处理高风险的捕获文件。 * **可视化上下文:** **地理映射**和**协议分布**图等功能允许调查人员即时可视化攻击的“谁、什么和在哪里”,显著减少平均理解时间 (MTTU)。 * **证据展示:** 集成的报告功能简化了取证报告的创建,将技术性的数据包数据转化为利益相关者可读的摘要。 ## 🌟 核心功能 * **📂 拖放分析:** 无缝上传 `.pcap` 或 `.pcapng` 文件以进行即时后端处理。 * **🤖 AI 驱动的威胁预测:** 使用在网络流上训练的随机森林分类器来预测攻击类型(DDoS、探测等)。 * **📊 交互式仪表板:** * **流量:** 显示数据包频率的时间序列图表。 * **协议细分:** TCP、UDP 和 ICMP 流量的可视化分布。 * **地理空间智能:** 精确定位 IP 地址物理来源的交互式地图。 * **🚨 IOC 浏览器:** 包含严重性评级的入侵指标 (IOC) 详细表格。 * **📑 报告:** (进行中)生成取证发现的 PDF 摘要。 ## 🛠️ 技术栈 ### **前端** * **框架:** React 18 (TypeScript) * **构建工具:** Vite * **样式:** Tailwind CSS + Shadcn UI * **可视化:** Recharts (图表), React-Leaflet (地图) ### **后端** * **运行时:** Node.js * **框架:** Express.js * **API:** 用于文件处理和数据桥接的 RESTful 端点。 ### **AI 与分析引擎** * **语言:** Python 3.x * **库:** Pandas, Scikit-learn, NumPy, Scapy * **模型:** 随机森林 (`best_random_forest_model.pkl`) ## 🚀 安装与设置 按照以下步骤在本地设置环境。 ### 前置条件 * **Node.js** (v18+) * **Python** (v3.10+) * **npm** 或 **yarn** ### 1. 克隆仓库 ``` git clone https://github.com/your-username/ai-pcap-analyzer.git cd ai-pcap-analyzer bash ``` ### 2. 安装 Node 依赖 ``` npm install ``` ### 3. 安装 Python 依赖 为 AI 引擎设置 Python 环境。建议使用虚拟环境。 ### 导航至 models 目录 cd models ### (可选) 创建虚拟环境 ``` python -m venv venv ``` ### Windows: ``` venv\Scripts\activate ``` ### Mac/Linux: ``` source venv/bin/activate ``` ### 安装依赖项 ``` pip install -r requirements.txt ``` # 注意:请确保已安装 scapy、pandas、scikit-learn 和 numpy。 # 🏃‍♂️ 使用说明 启动开发服务器: ``` npm run dev ``` 访问仪表板:打开浏览器并导航至 http://localhost:5000(或终端中指定的端口)。 上传文件:点击上传区域并选择一个 PCAP 文件。 查看结果:等待分析完成。仪表板将填充攻击预测、图表和地图数据。

Landing Page

Dashboard

IOC Explorer

GeoIP Map

## 📂 项目结构 ``` ai-pcap-analyzer/ ├── client/ # React Frontend │ ├── src/ │ │ ├── components/ # UI Components (Charts, MapView, IOCTable) │ │ ├── pages/ # Dashboard & Landing Page │ │ └── lib/ # Utility functions ├── server/ # Express Backend │ ├── routes.ts # API Routes │ └── pcap-analyzer.ts # Logic to spawn Python process ├── models/ # AI Engine │ ├── pcap_parser.py # Main script for parsing & inference │ ├── best_random_forest_model.pkl # Trained ML Model │ └── RF_Parser.ipynb # Jupyter Notebook for training └── package.json # Project Dependencies ``` # 🤝 贡献 ## 贡献者 | 姓名 | 贡献 | |--------|--------| | Anas Zahid | 前端, CTI 功能, MITRE ATT&CK 映射, 仪表板开发 | | Junaid Arshad | 后端集成, MITRE ATT&CK 映射, 测试与评估 | | Muhammad Talha | 机器学习模型开发, 数据集准备, 训练与评估 | # 📄 许可证 本项目基于 MIT 许可证授权 - 详情请参阅 LICENSE 文件。
标签:Apex, GNU通用公共许可证, IP 地址批量处理, MITM代理, Node.js, Python, React, Syscalls, 威胁情报, 开发者工具, 数字取证, 无后门, 机器学习, 网络流量分析, 自动化攻击, 自动化脚本, 逆向工具, 防御绕过