LutfiAds/ai-soc-log-analyzer
GitHub: LutfiAds/ai-soc-log-analyzer
基于混合检测pipeline的轻量级Linux SSH认证日志分析器,结合机器学习异常检测、Sigma规则引擎和关联分析实现自动化安全告警与可视化。
Stars: 0 | Forks: 0
# AI SOC 日志分析器
用于 Linux 身份验证监控的 AI 驱动安全日志分析器。
本项目实现了一个受现代 SIEM 架构启发的轻量级混合检测 pipeline。它分析 SSH 身份验证日志(`auth.log`),并使用异常检测、基于规则的检测、关联逻辑和严重性评分来检测可疑行为。
本项目被设计为一个检测工程组合项目和 SOC 身份验证监控模块的原型。
# 功能特性
- 针对 Linux SSH 身份验证事件的日志解析
- 使用 IsolationForest 进行异常检测
- 基于 Sigma 规则的检测引擎
- 暴力破解关联检测逻辑
- 严重性评分系统 (LOW / HIGH)
- Streamlit 仪表盘可视化
- 模块化检测 pipeline 架构
# 检测 Pipeline 架构
```
Log ingestion
↓
Parsing engine
↓
Structured dataframe (pandas)
↓
Anomaly detection (IsolationForest)
↓
Sigma rule detection
↓
Correlation engine (bruteforce detection)
↓
Risk scoring engine
↓
Dashboard visualization
```
该架构反映了现代 SIEM 平台中使用的检测工作流。
# 检测能力示例
### SSH 登录失败检测
检测重复的身份验证失败:
```
Failed password for root from 192.168.1.10
```
### 暴力破解检测
检测来自同一 IP 的多次失败登录尝试:
```
FAILED_LOGIN × 3
→ BRUTEFORCE ALERT
```
### 异常登录检测
根据基线行为标记异常的登录来源:
```
internal subnet → normal
external IP → suspicious
```
# 技术栈
| 组件 | 用途 |
|----------|---------|
Python | 检测引擎核心 |
Pandas | 结构化日志处理 |
Scikit-learn | IsolationForest 异常检测 |
Sigma Rules | 基于规则的检测 |
Streamlit | 仪表盘可视化 |
YAML | 检测配置 |
# 项目结构
```
ai-soc-log-analyzer/
│
├── parser/
│ └── log_parser.py
│
├── detection/
│ ├── anomaly_detector.py
│ ├── sigma_rules_engine.py
│ └── bruteforce_detector.py
│
├── scoring/
│ └── risk_score.py
│
├── dashboard/
│ └── app.py
│
├── config/
│ └── multiple_failed_login.yaml
│
├── main.py
└── requirements.txt
```
# 工作流示例
身份验证日志示例:
```
Failed password for root from 192.168.1.10
Failed password for root from 192.168.1.10
Failed password for root from 192.168.1.10
```
检测输出:
```
SIGMA_ALERT
BRUTEFORCE_ALERT
Severity: HIGH
```
# 真实世界用例
该系统可集成到:
- Linux SSH 监控 pipeline
- SOC 身份验证监控工作流
- 安全实验室环境
- 检测工程研究原型
- SIEM 预处理层
企业场景示例:
```
Multiple Linux servers
↓
Log forwarder (Filebeat / rsyslog)
↓
Detection engine (this project)
↓
SIEM / Dashboard
```
# 未来改进
计划的增强功能:
- GeoIP 富化检测
- 受信子网感知
- UEBA 风格的行为分析
- MITRE ATT&CK 技术映射
- 用于 SIEM 集成的 JSON 告警导出
- Docker 容器化部署架构
# 检测策略
本项目结合了三个检测层:
### 1. 异常检测
使用机器学习检测异常的登录行为:
```
IsolationForest
```
### 2. 基于规则的检测
使用 Sigma 规则检测可疑的身份验证模式:
```
FAILED_LOGIN
ROOT_LOGIN
SUDO_EXECUTION
```
### 3. 关联引擎
检测行为攻击模式:
```
FAILED_LOGIN × N
→ BRUTEFORCE ATTACK
```
# 严重性评分逻辑
严重性级别根据综合信号进行分配:
| 条件 | 严重性 |
|----------|----------|
单次登录失败 | LOW |
异常登录行为 | HIGH |
多次登录失败 | HIGH |
检测到暴力破解模式 | HIGH |
# 作者
本项目作为检测工程组合项目开发,专注于混合 SIEM 风格的身份验证监控。
GitHub:
https://github.com/LutfiAds
标签:AI安全, AMSI绕过, Chat Copilot, IsolationForest, Kubernetes, Linux认证日志, PB级数据处理, Python, Scikit-learn, SIEM原型, Sigma规则, SOC日志分析, SSH安全监控, Streamlit仪表板, YAML配置, 严重性评分, 免杀技术, 关联分析引擎, 威胁检测, 安全运维, 异常检测, 无后门, 日志解析, 暴力破解检测, 混合检测, 目标导入, 端点安全, 网络安全, 补丁管理, 证书伪造, 逆向工具, 隐私保护