NagaRajuDharavath/EDR-Log-Analysis-and-Risk-Scoring-System
GitHub: NagaRajuDharavath/EDR-Log-Analysis-and-Risk-Scoring-System
EDR日志分析与风险评分系统,用于安全事件快速识别和优先排序。
Stars: 0 | Forks: 0
```
# EDR Log Analysis and Risk Scoring System
```
## 项目描述
EDR 日志分析与风险评分系统是一个网络安全监控项目,旨在收集、处理、分析和优先排序端点安全事件。该系统从 LimaCharlie EDR 接收日志,标准化原始事件数据,执行基于规则的网络安全分析,计算风险评分,并通过交互式仪表板展示结果。
本项目的首要目标是帮助安全分析师快速识别可疑活动并根据风险级别优先排序事件。系统通过提供警报分析、严重程度分类和分析师结论管理来模拟 SOC(安全运营中心)的工作流程。
## 问题陈述
现代组织每天都会生成大量端点安全日志。安全分析师经常面临以下挑战:
- 安全警报数量庞大
- 警报疲劳
- 人工调查工作量
- 事件优先级排序困难
- 缺乏明确的风险评估
本项目通过自动分析安全事件并根据预定义的检测规则分配风险评分来解决这些挑战。
## 目标
本项目的目标主要包括:
- 从 LimaCharlie EDR 收集端点安全日志
- 将原始安全事件标准化为标准格式
- 使用基于规则的检测技术分析安全事件
- 根据可疑指标计算风险评分
- 将事件分类为严重程度级别
- 通过仪表板显示警报
- 支持分析师调查和结论管理
## 系统架构
本项目遵循以下架构:
端点设备
↓
LimaCharlie EDR
↓
Webhook
↓
事件标准化
↓
基于规则的分析引擎
↓
风险评分
↓
SQLite 数据库
↓
仪表板
↓
分析师结论
## 项目工作流程
### 第 1 步:事件收集
端点由 LimaCharlie EDR 监控。每当进程、文件、网络或检测事件发生时,LimaCharlie 会生成安全日志。
### 第 2 步:日志摄取
生成的日志通过 HTTP POST 请求发送到 Flask Webhook。
### 第 3 步:事件标准化
将原始事件数据转换为结构化格式。提取以下重要字段进行分析:
- 主机名
- 用户名
- 进程名称
- 命令行
- 源 IP
- 目标 IP
- 文件路径
### 第 4 步:威胁分析
AI 引擎使用预定义的检测规则分析标准化的事件。
### 第 5 步:风险评分
每个可疑指标都对整体风险评分做出贡献。
示例:
- 可疑进程 → +15
- 外部连接 → +20
- 可疑命令行 → +20
总评分决定事件严重程度。
### 第 6 步:警报生成
具有可疑指标的事件被转换为警报。
### 第 7 步:仪表板可视化
所有事件和警报都在 SOC 风格的仪表板中显示。
### 第 8 步:分析师结论
分析师可以将事件标记为:
- 无害
- 可疑
- 恶意
- 假阳性
## 功能
### 事件收集
- 实时日志收集
- LimaCharlie 集成
- 基于 Webhook 的摄取
### 事件标准化
- 标准化事件格式
- 提取重要字段
- 事件分类
### 威胁分析
- 基于规则的检测引擎
- 进程行为分析
- 网络活动分析
- 文件活动分析
### 风险评分
- 动态风险评分计算
- 严重程度分类
### 仪表板
- 警报概述
- 事件详情
- 分析师操作
- 风险评分可视化
## 使用的检测规则
本项目使用多种基于规则的检测技术。
### 可疑进程检测
检测以下进程:
- powershell.exe
- cmd.exe
- rundll32.exe
### 命令行分析
检测:
- 编码命令
- 混淆执行
- 可疑执行模式
### 网络分析
检测:
- 外部 IP 连接
- 可疑端口
- 不寻常的网络行为
### 文件活动分析
检测:
- 可疑可执行文件
- 在临时目录中创建的文件
### 持久性检测
检测:
- 启动文件夹修改
- 计划任务
- 注册表自动运行
### 凭据访问检测
检测:
- LSASS 访问尝试
- 凭据转储行为
### 防御规避检测
检测:
- 安全工具禁用
- 清除日志活动
## 使用的技术
| 技术 | 目的 |
|------------|----------|
| Python | 后端开发 |
| Flask | Web 框架 |
| SQLite | 数据库 |
| HTML | 用户界面 |
| CSS | 仪表板样式 |
| LimaCharlie | EDR 平台 |
| Ngrok | 公共 Webhook 访问 |
## 项目结构
```
2_EDR/
│
├── webhook_app.py
├── collector.py
├── normalizer.py
├── ai_engine.py
├── db.py
├── dashboard.py
│
├── templates/
│ ├── dashboard.html
│ └── alert_detail.html
│
└── README.md
```
## 风险评分分类
| 风险评分 | 严重程度 |
| ---------- | -------- |
| 0 - 34 | 低 |
| 35 - 64 | 中等 |
| 65 - 84 | 高 |
| 85 - 100 | 严重 |
## 优势
- 易于理解
- 实时事件分析
- SOC 风格的工作流程
- 基于风险优先排序
- 轻量级架构
- 教育和研究友好
## 局限性
- 单个端点监控
- 仅基于规则的检测
- 没有机器学习模型
- 没有自动响应操作
- 扩展性有限
## 未来方向
本项目可以通过以下方式得到增强:
- 集成机器学习
- 异常检测
- 多端点支持
- 威胁情报源
- 自动化事件响应
- 云部署
## 结论
EDR 日志分析与风险评分系统为监控和分析端点安全事件提供了一种实用的方法。通过结合事件标准化、基于规则的分析、风险评分和仪表板可视化,该系统帮助安全分析师高效地识别和优先排序可疑活动。该项目为未来增强提供了基础,例如基于机器学习的威胁检测和企业级监控。
## 作者
Naga Raju Dharavath
计算机科学与工程学士
网络安全项目
标签:EDR, LimaCharlie, Webhooks, 事件归一化, 事件收集, 仪表盘, 分析师工作流, 反取证, 多模态安全, 威胁情报, 安全事件管理, 安全响应, 安全评估, 安全运营中心, 开发者工具, 数据库, 终端检测响应, 网络安全, 网络映射, 脆弱性评估, 规则检测, 逆向工具, 隐私保护, 风险评分