jesusalvarezaguilar0/RAG-Security-Knowledge-Assistant
GitHub: jesusalvarezaguilar0/RAG-Security-Knowledge-Assistant
基于 Flowise 和 Groq 构建的 RAG 聊天机器人,通过从 MITRE ATT&CK 文档中检索上下文来回答网络安全问题,解决安全分析师手动查阅大量威胁情报文档效率低下的问题。
Stars: 0 | Forks: 0
# RAG 安全知识助手
## 概述
RAG 安全知识助手是一个检索增强生成 (RAG) 聊天机器人,旨在使用 MITRE ATT&CK 知识源回答网络安全问题。该聊天机器人并非仅仅依赖大型语言模型的通用知识,而是从网络安全文档集中检索相关信息,并利用该上下文来生成更准确的回答。
该项目展示了在处理特定领域的网络安全信息时,检索系统如何提高 AI 生成答案的可靠性并减少幻觉。
## 问题陈述
安全分析师经常需要搜索大量的威胁情报和 MITRE ATT&CK 文档,以了解攻击者的技术和战术。手动查找相关信息可能既耗时又低效。
该项目探索了检索增强生成 (RAG) 如何通过将文档检索与大型语言模型推理相结合,帮助分析师快速获取相关的网络安全信息。
## 使用技术
- Flowise
- Groq API
- Llama 3.3 70B Versatile
- Hugging Face Embeddings
- sentence-transformers/all-MiniLM-L6-v2
- 内存向量存储
- 检索增强生成 (RAG)
- MITRE ATT&CK Framework
## 系统架构
1. 用户提交网络安全问题。
2. 将问题转换为 embeddings。
3. 从向量存储中检索相关的文档块。
4. 将检索到的上下文发送给 LLM。
5. LLM 利用检索到的信息生成回答。
6. 将最终答案返回给用户。
## 知识库
该聊天机器人是使用涵盖以下内容的 MITRE ATT&CK 相关文档构建的:
- 初始访问
- 凭据访问
- 横向移动
包含的示例主题:
- 有效账户
- 额外的云凭据
- 暴力破解攻击
- 远程桌面协议 (RDP)
- 邪恶双子无线攻击
## 测试的示例问题
- 对手如何利用有效的云账户来实现持久化或横向移动?
- 攻击者通过 Wi-Fi 网络获取初始访问权限的不同方式有哪些?
- 暴力破解密码猜测是如何工作的?
- 攻击者如何使用远程桌面协议 (RDP) 进行横向移动?
- 什么是信任关系攻击?
## 评估结果
该聊天机器人利用从提供的网络安全文档中检索到的信息,成功回答了大多数问题。
### 成功表现
- 从 MITRE ATT&CK 文档中检索到准确的信息
- 引用了相关的网络安全技术
- 拒绝了不相关的问题,例如天气查询请求
- 为记录在案的攻击技术生成了详细的回答
### 观察到的局限性
- 当文档中不存在相关信息时,偶尔会基于模型通用知识生成答案
- 较高的 temperature 设置会增加幻觉风险
- 较大的检索设置有时会引入冗余信息
## 参数实验
### 温度
- 0.3:更专注和有依据的回答
- 0.7:更详细但增加了幻觉风险
### Chunk Size
- 1000:更广泛的上下文检索
- 500:更精确和专注的检索
### Top K
- 4:简洁的回答
- 6:更详细的回答,但存在一些重复
## 经验总结
这个项目让我了解到检索增强生成与传统提示有何不同。我认识到,文档检索的质量对答案的质量有重大影响,并且调整 chunk size、检索设置和 temperature 会显著影响性能。通过测试和评估,我获得了将知识检索与语言模型推理相结合构建 AI 系统的实践经验。
## 未来改进
- 扩展网络安全知识库
- 添加 CVE 和威胁情报源
- 实现来源引用
- 改进幻觉预防
- 将其部署为网络安全分析师助手
## 演示
Flowise 聊天机器人:
[https://cloud.flowiseai.com/chatbot/7f436a8e-24f9-473a-8f23-1adfcf8c4187](https://cloud.flowiseai.com/chatbot/66930e87-cf2d-41e7-a149-73d74f0628bd)
标签:Cloudflare, Flowise, MITRE ATT&CK, RAG, Sysdig, 人工智能, 威胁情报, 开发者工具, 用户模式Hook绕过, 网络安全, 隐私保护