Mrinalraj-Ofc/Loglens-

GitHub: Mrinalraj-Ofc/Loglens-

LogLens 是一个全栈轻量级 SIEM 项目,使用 Node.js 和 React 实现流式日志解析、威胁检测与可视化,帮助用户以教育规模理解安全日志分析的核心流程。

Stars: 0 | Forks: 0

# 🔍 LogLens — 简化的安全日志分析 一个全栈的轻量级 SIEM(安全信息与事件管理)实习项目,演示了如何使用 Node.js 和 React 实现**流式日志解析**、**基于 regex 的威胁检测**、**行为分析**以及**数据可视化**。 ## 目录 1. [案例研究 — 为什么日志分析很重要](#1-case-study) 2. [系统架构](#2-system-architecture) 3. [阶段 1 — 解析器引擎](#3-phase-1--the-parser-engine) 4. [阶段 2 — 威胁检测引擎](#4-phase-2--the-threat-detection-engine) 5. [阶段 3 — 行为分析](#5-phase-3--behavioral-analysis) 6. [阶段 4 — 任务队列模式](#6-phase-4--the-job-queue-pattern) 7. [特征数据库](#7-the-signature-database) 8. [性能:流式处理与一次性加载](#8-performance-streaming-vs-loading) 9. [入门指南](#9-getting-started) 10. [项目结构](#10-project-structure) 11. [攻击向量覆盖范围](#11-attack-vector-coverage) ## 1. 案例研究 ### 问题所在 生产环境 Web 服务器单日的流量会产生数百万行日志。这些日志中隐藏着每一次攻击企图的证据: ``` 203.0.113.45 - - [15/Jan/2024:08:02:02 +0000] "GET /login.php?user=admin'%20OR%201=1-- HTTP/1.1" 200 891 198.51.100.7 - - [15/Jan/2024:08:02:03 +0000] "GET /products?id=1%20UNION%20SELECT%20table_name,2,3%20FROM%20information_schema.tables-- HTTP/1.1" 500 233 192.0.2.88 - - [15/Jan/2024:08:03:01 +0000] "POST /login HTTP/1.1" 401 230 192.0.2.88 - - [15/Jan/2024:08:03:02 +0000] "POST /login HTTP/1.1" 401 230 ... (×50 more) ``` 人类分析师每天无法阅读 200 万行日志。昂贵的商业 SIEM 工具(Splunk、IBM QRadar)每年的成本在 50,000 到 500,000 美元之间。LogLens 是一个教育性质的实现:解析、检测和可视化 —— 免费、开源、易于理解。 ### LogLens 检测的内容 | 攻击类型 | 检测方法 | 示例 | |-------------|-----------------|---------| | SQL 注入 | Regex 模式匹配 | `UNION SELECT`, `OR 1=1`, `SLEEP()` | | XSS | Regex 模式匹配 | `