A7med668/LlamaRAG-Hunter

GitHub: A7med668/LlamaRAG-Hunter

基于Ollama+Llama3和RAG架构的AI威胁狩猎工具,可对日志、PCAP、EVTX、APK等多类安全工件进行自动化分析并映射MITRE ATT&CK技术。

Stars: 0 | Forks: 0

# 🛡️ AI Threat Hunter

### 面向日志、PCAP、EVTX、JSON、TXT 和 APK 分析的 AI 驱动威胁狩猎助手

专为蓝队、SOC 分析师、DFIR 工程师和移动安全研究人员设计。

## 📌 概述 **AI Threat Hunter** 是一个基于 **Streamlit**、**Ollama (Llama3)**、**ChromaDB** 和 **MITRE ATT&CK RAG** 构建的模块化网络安全分析工具。 它允许分析师上传以下安全工件: - Windows 事件日志 (`.evtx`) - 网络数据包捕获 (`.pcap`) - JSON / TXT / LOG 文件 - Android APK 文件 (`.apk`) 系统会对上传的文件进行解析,执行 AI 辅助分析,检索相关的 **MITRE ATT&CK 技术**,并生成包含警报和调查支持的简明威胁狩猎报告。 ## ✨ 主要功能 ### 🔍 威胁分析 - 使用 **Ollama + Llama3** 进行 AI 驱动的日志和工件分析 - 可疑行为检测 - 基于置信度的发现结果 - 攻击模式解读 ### 🎯 MITRE ATT&CK 映射 - 使用 **ChromaDB** 构建的内置 **RAG 管道** - 检索相关的 **Enterprise + Mobile ATT&CK 技术** - 技术感知的上下文响应生成 ### 📱 APK 静态分析 - 提取包元数据 - 列出权限并标记危险权限 - 检测可疑 API 使用情况 - 查找硬编码的 URL 和电子邮件 - 突出显示以下指标: - 动态代码加载 - 高级短信滥用 - 设备 ID 收集 - WebView 风险模式 ### 📡 多格式支持 - EVTX 解析 - PCAP 汇总 - JSON / TXT / LOG 提取 - APK 检查 ### 💬 分析师问答 - 向上传的文件提出后续问题 - 使用 LLM + MITRE 技术检索提供上下文感知的答案 ### 🎨 专业深色 UI - 自定义 Streamlit 深色主题 - 现代 SOC 风格视觉效果 - 简洁的面板、警报、标签页和指标 ## 🖼️ 界面风格 该应用程序包含一个针对网络安全工作流程定制的**专业深色主题**: - 深深蓝色背景 - 霓虹青色操作强调色 - 专业警报块 - 样式化的上传区域和指标卡片 - 现代悬停效果和标签页布局 ## 🏗️ 项目结构 ``` ai_threat_hunter/ ├── app.py # Main Streamlit entry point ├── config.py # Configuration constants ├── theme.py # Professional dark theme CSS ├── llm_client.py # Ollama wrapper ├── rag.py # ChromaDB + embeddings + MITRE knowledge base ├── parsers/ │ ├── __init__.py │ ├── evtx_parser.py │ ├── pcap_parser.py │ ├── apk_parser.py │ └── file_reader.py # Dispatcher for all file types ├── analysis.py # LLM analysis, report generation, Q&A ├── requirements.txt # Dependencies └── README.md # Documentation ``` ## ⚙️ 技术栈 | 层级 | 技术 | |------|------------| | UI | Streamlit | | LLM | Ollama + Llama3 | | 向量数据库 | ChromaDB | | 嵌入模型 | Sentence Transformers | | 威胁知识库 | MITRE ATT&CK | | APK 分析 | Androguard | | PCAP 分析 | Scapy | | EVTX 解析 | python-evtx | ## 🚀 工作原理 ``` Upload File ↓ Parser Selects File Type ↓ Content Extracted / Summarized ↓ Llama3 Performs Threat Analysis ↓ Keywords Sent to RAG Layer ↓ Relevant MITRE ATT&CK Techniques Retrieved ↓ Security Report + Alerts + Q&A ``` ## 📂 支持的文件类型 | 文件类型 | 用途 | |----------|---------| | `.evtx` | Windows 事件日志分析 | | `.pcap` | 网络流量摘要 | | `.json` | 结构化日志提取 | | `.txt` / `.log` | 原始文本日志分析 | | `.apk` | 静态 Android 恶意软件 / 风险分析 | ## 🧠 示例功能 ### 针对 Windows / 日志 - 检测可能的 PowerShell 滥用 - 标记 LSASS 转储指标 - 识别失败的登录活动 - 汇总可疑模式 ### 针对 PCAP - 提取源/目标通信 - 识别 DNS 查询 - 提供快速网络行为摘要 ### 针对 APK - 检查危险权限 - 检测可疑 API,例如: - `Runtime.exec` - `DexClassLoader` - `sendTextMessage` - `getDeviceId` - `WebView.loadUrl` - 提取硬编码的基础设施指标 ## 📦 安装 ### 1. 克隆仓库 ``` git clone https://github.com/your-username/ai_threat_hunter.git cd ai_threat_hunter ``` ### 2. 安装 Python 依赖 ``` pip install -r requirements.txt ``` ### 3. 安装并启动 Ollama 确保 Ollama 已安装并正在运行: ``` ollama serve ``` 然后拉取所需的模型: ``` ollama pull llama3 ``` ### 4. 运行应用 ``` streamlit run app.py ``` ## 🧾 要求 ``` streamlit ollama chromadb sentence-transformers androguard scapy Evtx ``` ## 🔧 配置 编辑 `config.py` 以自定义核心设置: ``` MODEL_NAME = "llama3" CHROMA_DB_PATH = "./chroma_db" MAX_LOG_LEN = 3000 RAG_TOP_K = 3 ``` ### 配置选项 | 变量 | 描述 | |----------|-------------| | `MODEL_NAME` | 要使用的 Ollama 模型 | | `CHROMA_DB_PATH` | 向量数据库的持久化路径 | | `MAX_LOG_LEN` | 传递给 LLM 的最大内容长度 | | `RAG_TOP_K` | 检索的 MITRE 技术数量 | ## 🧪 示例用例 - 可疑日志的蓝队分类 - 异常 Windows 事件的调查 - 快速审查小型 PCAP 捕获 - Android 应用的静态检查 - 展示 AI 辅助的 SOC 工作流程 - MITRE 映射的事件审查原型 ## 📋 示例输出 生成的报告包括: - **分析时间戳** - **检测到的文件类型** - **LLM 生成的威胁评估** - **相关的 MITRE ATT&CK 技术** - **自动警报指标** - **后续问答支持** 示例发现可能包括: - 异常的 PowerShell 使用 - LSASS 转储尝试 - 危险的 APK 权限 - 高级短信滥用可能性 - 动态代码执行 - 设备标识符收集 ## 💬 交互式问答 分析后,分析师可以提出问题,例如: - `此 APK 是否包含危险权限?` - `是否有任何 LSASS 访问?` - `哪些 MITRE 技术与此相关?` - `此行为是可疑还是良性?` 助手使用以下内容回答: - 上传文件的上下文 - 检索到的 MITRE 知识 - Llama3 推理 ## 🎨 深色主题详情 `theme.py` 中的自定义 UI 主题包括: - 深海军蓝背景 - 青色主强调色 - 样式化的侧边栏 - 霓虹风格按钮 - 抛光的标签页和展开器 - 自定义输入样式 - 安全仪表板风格的指标卡片 这为应用提供了简洁专业的**网络防御美学**。 ## 📸 推荐的 GitHub 增强功能 要使此仓库更好,请考虑添加: - 仪表板截图 - 示例 EVTX / PCAP / APK 报告 - 动画 GIF 演示 - 架构图 - 路线图部分 - 示例恶意 APK 案例研究 您可以创建 `/screenshots` 文件夹并按以下方式引用图像: ``` ## Dashboard Preview

AI Threat Hunter Dashboard

``` ## 🛣️ 路线图 - [ ] 添加 Sigma 规则建议 - [ ] 添加 IOC 提取面板 - [ ] 添加 YARA 风格模式检测 - [ ] 添加报告导出为 PDF / JSON - [ ] 添加严重性评分 - [ ] 添加 MITRE ATT&CK 矩阵可视化 - [ ] 添加 VT / OSINT 丰富化 - [ ] 添加多文件关联 ## 🤝 欢迎贡献 欢迎对此项目做出改进。 如果您想改进项目: 1. Fork 仓库 2. 创建功能分支 3. 提交您的更改 4. 打开 Pull Request 贡献想法: - 新解析器 - 更好的 APK 启发式方法 - 更强的 MITRE 映射 - 改进的 UI/UX - 导出/报告功能 ## ⚠️ 免责声明 此项目适用于: - 研究 - 教育 - 防御性安全分析 - 内部工具原型 它不应作为事件响应决策的唯一事实依据。始终通过手动调查和额外遥测数据验证发现结果。 ## 📄 许可证 您可以使用 MIT 许可证或您首选的开源许可证。 示例: ``` MIT License ``` ## 👨‍💻 作者 **AI Threat Hunter** 为现代蓝队工作流程、恶意软件分类和 AI 辅助威胁分析而构建。
### ⭐ 如果您喜欢此项目,请考虑给它一个星标。
标签:AI安全, AI风险缓解, APK分析, APT检测, Chat Copilot, ChromaDB, Cloudflare, DAST, DLL 劫持, EVTX分析, HTTP工具, Kubernetes, Llama3, LLM, LLM评估, MITRE ATT&CK, Ollama, PCAP分析, PE 加载器, Python安全工具, RAG, SOC工具, Streamlit, Unmanaged PE, 人工智能, 大语言模型, 安全报告, 开源搜索引擎, 恶意软件分析, 文本生成, 无线安全, 暗色主题, 检索增强生成, 漏洞发现, 用户模式Hook绕过, 目录枚举, 移动安全, 网络信息收集, 网络安全, 网络安全审计, 访问控制, 逆向工具, 隐私保护