RodrigoVzz/windows-log-analyzer
GitHub: RodrigoVzz/windows-log-analyzer
一个基于 Streamlit 和 Google Gemini 的学术原型工具,利用 AI 自动分析 Windows 安全事件日志并生成结构化报告。
Stars: 0 | Forks: 0
# windows-log-analyzer
# Windows Log Analyzer AI
用于通过数据处理和人工智能技术自动化分析 Windows 安全事件日志的原型。
该系统允许加载 XML 格式的 Windows 事件日志,处理其中包含的信息,识别从安全角度来看可能相关的事件,并借助人工智能生成技术分析报告。
## 主要功能
* 加载 `.xml` 格式的 Windows 事件日志。
* 自动化处理安全事件。
* 识别相关事件。
* 对日志进行统计分析。
* 对事件进行分类和分组,依据:
* Event ID。
* 严重级别。
* 日志通道。
* 生成结构化的安全摘要。
* 借助人工智能进行分析。
* 历史分析记录。
* 生成 PDF 格式报告。
* 生成执行摘要报告。
* 使用 Streamlit 开发的 Web 界面。
## 使用技术
* **Python**
* **Streamlit**
* **Pandas**
* **Google Gemini API**
* **ReportLab**
* **Python-dotenv**
## 环境要求
* Python 3.10 或更高版本。
* 用于进行人工智能分析的 Google Gemini API 密钥。
## 安装说明
克隆仓库:
```
git clone
```
进入项目目录:
```
cd windows-log-analyzer
```
创建虚拟环境:
### Windows
```
python -m venv .venv
```
激活虚拟环境:
```
.venv\Scripts\activate
```
安装依赖项:
```
pip install -r requirements.txt
```
## 配置
在项目根目录下创建 `.env` 文件:
```
GOOGLE_API_KEY=tu_api_key_aqui
```
将 `tu_api_key_aqui` 替换为有效的 Google Gemini 密钥。
## 运行
使用以下命令运行应用程序:
```
streamlit run app.py
```
也可以使用辅助文件:
```
python run_app.py
```
应用程序启动后,访问 Streamlit 提供的本地地址。
## 使用方法
1. 访问应用程序。
2. 加载 `.xml` 格式的 Windows 事件日志。
3. 开始分析。
4. 查看被识别为相关的事件。
5. 查阅生成的统计信息和摘要。
6. 执行人工智能辅助分析。
7. 查看历史分析记录。
8. 生成并下载 PDF 格式的报告。
## 分析历史
每个已处理的分析都可以连同以下信息一起存储在系统历史记录中:
* 分析的日期和时间。
* 已处理文件的名称。
* 事件总数。
* 相关事件数量。
* 识别出的 Event ID。
* 检测到的事件级别。
* 结构化的安全摘要。
* 人工智能分析结果(如果可用)。
历史记录还允许重新查看已执行的分析,并根据存储的信息生成报告。
## 当前局限性
* 目前实现的处理主要针对 XML 格式的日志。
* 直接处理 `.evtx` 文件可能还需要额外的转换或集成步骤。
* 人工智能辅助分析的质量取决于已处理日志中可用的信息。
* 该系统是一个学术原型,不能替代 SIEM 平台或专业的安全监控系统。
## 原型目标
本项目旨在演示基于人工智能的原型如何促进对 Windows 安全事件日志的分析和解释,降低手动分析的复杂性,并为识别相关发现提供技术支持信息。
## 项目状态
作为关于利用人工智能对 Windows 安全事件日志进行自动化分析的研究项目的一部分而开发的学术原型。
标签:Kubernetes, Python, Streamlit, Windows事件日志, 人工智能, 安全运营, 扫描框架, 无后门, 用户模式Hook绕过, 访问控制, 逆向工具