Retegui492/Rule-Based-Log-Analyzer
GitHub: Retegui492/Rule-Based-Log-Analyzer
一个用 Python 编写的轻量级安全日志分析引擎,通过 JSON 规则匹配模拟事件来演示 SIEM 平台中基于规则的威胁检测原理。
Stars: 0 | Forks: 0
# 🛡️ 基于规则的日志分析器
## 📖 概述
**Rule-Based Log Analyzer** 是一个 Python 项目,它使用基于规则的检测来模拟一个轻量级的安全日志分析引擎。
该应用程序读取模拟的日志事件,根据 JSON 文件中定义的检测规则对其进行评估,并在识别到可疑行为时生成安全警报。
本项目出于教育目的而开发,旨在演示**日志分析**、**事件关联**和**基于规则的威胁检测**的基础知识,这些概念在 SIEM 平台中得到了广泛应用。
## 🎯 目标
* 了解基于规则的日志分析的工作原理
* 学习事件关联的基础知识
* 使用 Python 应用网络安全检测概念
* 构建一个实用的 Blue Team 作品集项目
## ⚙️ 功能
* 📄 读取模拟的安全事件
* 📜 存储在 JSON 中的外部检测规则
* 🚨 检测多次登录失败尝试
* 🔐 检测管理员事件
* 📊 生成具有严重性级别的警报
* 🏗️ 模块化的项目结构
## 🧠 工作原理
将系统想象为一名安全分析师:
* 📄 日志代表了所发生的一切事件。
* 📜 规则定义了哪些行为被认为是可疑的。
* 🧠 检测引擎将日志与规则进行比对。
* 🚨 如果规则匹配到了事件,就会生成警报。
## 📂 项目结构
```
rule-based-log-analyzer/
│
├── logs/
│ └── events.json
│
├── rules.json
├── detector.py
├── main.py
└── README.md
```
## 📝 检测规则示例
```
{
"id": "R001",
"name": "Multiple Failed Logins",
"description": "Detect multiple failed login attempts",
"keyword": "FAILED_LOGIN",
"severity": "high"
}
```
## 🚨 警报示例
```
[ALERT] Multiple Failed Logins | IP: 192.168.0.10 | Severity: high
```
## ▶️ 运行项目
### 环境要求
* Python 3.x
### 克隆仓库
```
git clone https://github.com/Retegui492/rule-based-log-analyzer.git
```
### 进入项目目录
```
cd rule-based-log-analyzer
```
### 执行
```
python main.py
```
## 🛠️ 技术栈
* Python
* JSON
* 基于规则的检测
* 日志分析
* 防御性安全概念
## 🔮 未来改进
* 为每个规则配置可自定义的阈值
* 将警报日志记录到外部文件
* 添加更多事件类型
* 简单的可视化仪表板
* 与真实日志源集成
## 👨💻 作者
由 **Jhonatan Ribeiro** 出于教育目的和网络安全作品集项目开发。
标签:AMSI绕过, Homebrew安装, Python, SIEM组件, 事件关联, 云计算, 威胁检测, 安全日志分析, 无后门, 规则引擎, 逆向工具