Avinash-05-web/Centralized-Log-Analytics-for-Cyber-Attack-Detection-Using-ELK-Stack_CY-6TH

GitHub: Avinash-05-web/Centralized-Log-Analytics-for-Cyber-Attack-Detection-Using-ELK-Stack_CY-6TH

这是一个基于ELK Stack的集中式日志分析项目,通过模拟和检测暴力破解与SQL注入攻击,实现网络安全威胁的实时监控与可视化。

Stars: 0 | Forks: 0

🚨 Quantarix 实验室 SIEM 项目 🛡️ 使用 ELK Stack 实现多向量网络攻击检测的集中式日志分析 «🔍 一个完整的安全信息与事件管理解决方案,基于 ELK Stack、Docker 构建,并利用一个存在漏洞的 Node.js 应用程序来模拟和检测真实的网络攻击。» 📌 项目概述 本项目展示了组织如何利用开源技术集中处理应用程序日志、实时检测网络攻击并可视化安全事件。 我们使用 Node.js 和 Express.js 开发了一个存在漏洞的网络应用程序,将其部署在 Docker 容器中,并通过暴力破解登录尝试、SQL注入和成功认证等方式发起攻击。日志由 Filebeat 收集,经 Logstash 处理,存储在 Elasticsearch 中,并通过 Kibana 的自定义仪表板和检测规则进行可视化展示。 🎯 目标 - 🧱 开发一个用于攻击模拟的脆弱 Web 应用程序 - 📄 为多种攻击向量生成安全日志 - 🚚 使用 Filebeat 收集日志 - 🔄 使用 Logstash 处理日志 - 🗄️ 使用 Elasticsearch 存储事件 - 📊 在 Kibana 中可视化攻击活动 - 🚨 创建检测规则和告警 - 🧠 将攻击映射到 MITRE ATT&CK 框架 - 🔗 将攻击阶段映射到网络杀伤链 🏗️ 系统架构 攻击者机器 (Kali Linux / PowerShell) │ ▼ 恶意 HTTP 请求 │ ▼ 存在漏洞的 Web 应用程序 (Node.js + Express) │ ▼ app.log 文件 │ ▼ Filebeat │ ▼ Logstash │ ▼ Elasticsearch │ ▼ Kibana 仪表板与告警 🌐 使用的网络端口 端口| 服务| 描述 3000| 🌍 Web 应用程序| 存在漏洞的 Node.js 应用程序 5044| 📥 Logstash| 用于 Filebeat 的 Beats 输入 9200| 🗄️ Elasticsearch| 日志存储与索引 5601| 📊 Kibana| 仪表板与分析 🧰 使用的技术 - 🐳 Docker & Docker Compose - 🟢 Node.js & Express.js - 📦 Filebeat 7.17.0 - 🔄 Logstash 7.17.0 - 🔍 Elasticsearch 7.17.0 - 📈 Kibana 7.17.0 - 🖥️ PowerShell / Git Bash / Kali Linux - 🪟 Windows 11 ⚔️ 模拟的攻击 🔐 暴力破解攻击 使用无效密码进行重复登录尝试。 💉 SQL注入 使用的 Payload: ' OR 1=1 ✅ 成功登录 有效凭证: 用户名: admin 密码: admin123 🚫 未授权访问 尝试在没有授权的情况下访问受限资源。 📄 示例日志事件 LOGIN ATTEMPT: admin - wrong15 无效凭证 LOGIN SUCCESSFUL: admin SEARCH QUERY: ' OR 1=1 📊 Kibana 仪表板功能 - 📈 日志总记录数 - 🔐 暴力破解攻击计数 - 💉 SQL注入攻击计数 - ✅ 成功登录计数 - 🕒 攻击活动时间线 - 🚨 安全告警 🚨 检测规则 规则名称| 检测逻辑| 严重性 🔐 暴力破解检测| 多个“无效凭证”事件| 高 💉 SQL注入检测| 查询包含 "OR 1=1"| 严重 ✅ 成功登录检测| 消息包含 "Login successful"| 中 🚫 未授权访问检测| 尝试访问受限资源| 高 🧠 MITRE ATT&CK 映射 攻击| 技术ID| 技术名称| 战术 🔐 暴力破解| T1110| 暴力破解| 凭证访问 💉 SQL注入| T1190| 利用面向公众的应用程序| 初始访问 ✅ 成功登录| T1078| 有效账户| 持久化 🚫 未授权访问| T1078| 有效账户| 权限提升 🔗 网络杀伤链映射 1. 🕵️ 侦察 2. 🛠️ 武器化 3. 📤 投递 4. 💥 利用 5. 📥 安装 6. 📡 命令与控制(可选) 7. 🎯 目标行动 📈 项目成果 - 📄 吸收了 296+ 条日志事件 - 🔐 检测到 132 次暴力破解尝试 - 💉 识别出 10 次 SQL注入尝试 - ✅ 捕获了成功登录事件 - 📊 交互式仪表板已投入运行 - 🚨 实时告警已启用 📂 项目结构 quantarix-labs-project/ ├── app/ │ ├── app.js │ ├── package.json │ └── Dockerfile ├── filebeat/ │ └── filebeat.yml ├── logstash/ │ └── logstash.conf ├── logs/ │ └── app.log ├── docker-compose.yml └── README.md ▶️ 运行方法 1️⃣ 克隆仓库 git clone cd quantarix-labs-project 2️⃣ 启动项目 docker compose up -d 3️⃣ 打开服务 - 🌍 Web 应用: "http://localhost:3000" - 📊 Kibana: "http://localhost:5601" 🧪 攻击模拟命令 🔐 暴力破解 curl -X POST http://localhost:3000/login -d "username=admin&password=wrong1" ✅ 成功登录 curl -X POST http://localhost:3000/login -d "username=admin&password=admin123" 💉 SQL注入 curl "http://localhost:3000/search?q=' OR 1=1" 📘 学术意义 本项目展示了以下方面的实践知识: - 🛡️ 安全信息与事件管理 - 📈 日志分析与威胁检测 - 🐳 容器化部署 - 🔍 威胁情报映射 - 🚨 告警与事件监控 🚀 未来增强 - 📧 电子邮件和 Slack 通知 - 🌐 集成 Suricata 或 Zeek - 🤖 机器学习异常检测 - 🔐 TLS 和基于角色的访问控制 - ☁️ 云部署 (AWS/Azure) 👨‍🎓 作者 Avinash Das Manikpuri 🎓 计算机科学与工程(网络安全)学士 🏫 Quantarix 实验室项目 🆔 ERP: 6604666 📜 许可证 本项目仅供教育和研究目的使用。 ⭐ 致谢 - Elastic Stack (ELK) - Docker - MITRE ATT&CK 框架 - 洛克希德·马丁网络杀伤链 «🛡️ “集中式日志记录将原始的应用程序事件转化为可操作的安全情报。”»
标签:AMSI绕过, CISA项目, Cloudflare, Cyber Kill Chain, Docker, DOE合作, Elasticsearch, ELK Stack, Express.js, Filebeat, GNU通用公共许可证, Logstash, MITM代理, MITRE ATT&CK, Mutation, Node.js, OISF, SQL注入检测, 事件管理, 代理支持, 内容过滤, 可视化, 告警, 威胁情报, 威胁检测, 安全事件管理, 安全防御评估, 开发者工具, 开源技术, 攻击模拟, 日志处理, 日志收集, 日志管理, 暴力攻击检测, 红队行动, 网络安全, 网络攻击模拟, 请求拦截, 越狱测试, 隐私保护, 集中安全监控, 集中式日志分析, 驱动签名利用