Tori-Tech/LLM-Log-Analyzer
GitHub: Tori-Tech/LLM-Log-Analyzer
该项目利用本地运行的LLM分析pcap/pcapng网络抓包文件,以自然语言向非技术人员解释网络活动并辅助识别异常。
Stars: 0 | Forks: 0
## LLM Log Analyzer
### 它能做什么?
LLM Log Analyzer 接收 `.pcapng` 或 `.pcap` 文件,并使用 LLM 进行分析,然后以通俗易懂的英文解释网络活动,使非技术专业人员也能够理解日志。
### 它是如何工作的?
LLM Log Analyzer 使用基于 Python 的 Streamlit 来提供简洁、易于导航的 UI,并使用来自 ollama 的 ```qwen2.5-coder:7B``` 模型。在实际运行中,该 LLM 已成功从 USB 驱动器运行,但如果您的系统具备适当的资源,完全可以将其在本地运行。唯一的权衡是,从 USB 驱动器运行 LLM 响应 prompt 的时间会稍长一些。无论您如何存储 LLM,该项目都是完全离线的,且对话记录存储在 Streamlit 的 session state 中,每次重新加载页面时都会被清除。这意味着您可以将原始的、未过滤的数据上传给 LLM 并接收分析结果,而无需担心 IP 和 MAC 地址等敏感信息被存储在其内存中。
### 前置条件:
此项目需要处于活动状态的 Ollama 安装。假设您使用的是 Windows 环境,其设置说明如下:
下载 Ollama 的官方安装程序,并使用以下命令拉取 qwen2.5 模型:
```ollama pull qwen2.5-coder:7B```
请注意,这只是我为特定需求选择的模型。该项目可与任何 Ollama 模型配合使用,尽管 LLM 本身的性能取决于其参数和训练情况。
下载完成后,通过运行以下命令验证模型是否有效:
```ollama run qwen2.5-coder:7B```
如果安装成功,您应该能够与 LLM 进行对话。您会注意到,此时它只能输出通用的、往往不准确的回复,但在接收到它的 system prompt 后,这种情况就会改变。输入:```/bye``` 退出聊天。
接下来请继续查看设置指南。
### 设置指南:
克隆该代码仓库并 cd 进入其中。您会发现已经为您创建好了一个 modelfile,其中包含了针对该 LLM 的 system prompt。您可以根据需要自行编辑 system prompt,但出于初步测试的目的,建议在您亲眼观察其能力之前,保持原样不变。
运行以下命令以使用提供的 modelfile 创建自定义 LLM(networkLog 是在实际运行期间选择的名称。您可以为了满足自身需求对其进行更改,但您必须在源代码中同步修改 MODEL_NAME 变量。):
```ollama create networkLog -f Modelfile```
最后,运行:
```streamlit run log_analyzer.py```
Web 应用程序应该会立即启动。您可以直接通过聊天界面发送日志片段,也可以上传大小不超过 200MB 的 `.pcap` 或 `.pcapng` 文件。观察 LLM 的回复,享受更轻松的日志分析体验。
### 注意:
如果您缺乏用于测试 LLM 的日志数据,可以使用提供的 [normal.txt](normal.txt) 和 [attack.txt](attack.txt)。前者模拟正常的网络活动,而后者模拟一次尝试的 DDoS 攻击。您可以使用这些文件来直接判断 LLM 识别问题的准确程度。
### 免责声明:
AI 容易出现幻觉,并且即使在有严格的 system prompt 的情况下,偶尔也可能不准确。无法绝对保证 LLM 会始终遵循指令、完全保持在范围内,或以 100% 的准确率识别复杂的网络异常。此工具旨在辅助而非取代人类分析师。上下文评估和最终验证仍需要人类的专业知识。
标签:AI风险缓解, DLL 劫持, Kubernetes, LLM评估, Ollama, Streamlit, 人工智能, 大语言模型, 本地部署, 用户模式Hook绕过, 网络日志分析, 访问控制, 逆向工具