ELK日志分析实战
ELK日志分析实战:从异常流量定位提权攻击
摘要:本文通过模拟真实攻防场景,结合ELK技术栈(Elasticsearch+Logstash+Kibana),演示如何从海量服务器日志中快速定位异常流量并追踪提权攻击行为。包含完整的日志收集方案、攻击特征分析及可视化告警实践。
一、环境准备与数据采集
1.1 实验组件
- 攻击机:Kali Linux 2023
- 靶机:CentOS 7.6(暴露Web服务)
- ELK集群:Elasticsearch 8.5 + Logstash 8.5 + Kibana 8.5
- 数据采集器:Filebeat 8.5
1.2 日志收集配置
通过Filebeat采集关键日志源:
# filebeat.yml
filebeat.inputs:
- type: filestreamid: nginx-accesspaths:- /var/log/nginx/access.logfields:log_type: "nginx_access"- type: filestreamid: syslogpaths:- /var/log/secure- /var/log/messagesfields:log_type: "system"
Logstash添加安全日志解析规则:
filter {if [fields][log_type] == "system" {grok {match => { "message" => "%{SYSLOGTIMESTAMP:timestamp} %{SYSLOGHOST:hostname} %{DATA:process}\[%{POSINT:pid}\]: %{GREEDYDATA:message}" }}date {match => [ "timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss" ]}}
}
二、异常流量特征分析
2.1 高频404错误(漏洞探测)
在Kibana中创建统计视图:
{"query": {"bool": {"must": [{ "match": { "response_code": "404" } },{ "range": { "@timestamp": { "gte": "now-15m" } } }]}},"aggs": {"src_ip": {"terms": { "field": "source.ip.keyword", "size": 10 }}}
}
攻击特征:同一IP在5分钟内触发超过100次404响应,且请求路径包含/wp-admin、/phpmyadmin等敏感路径。
2.2 Webshell上传行为识别
Nginx日志关键字段过滤:
filter {if [request] =~ "(\.php|\.jsp|\.war)(\?|$)" {mutate { add_tag => [ "webshell_upload" ] }}
}
三、提权攻击行为追踪
3.1 可疑特权操作
在系统日志中监控sudo提权:
process.name: "sudo" AND message: ("/bin/bash" OR "chmod +s" OR "passwd")
3.2 异常用户创建检测
通过audit日志捕获用户变更:
{"query": {"match": {"message": {"query": "useradd|usermod","operator": "OR"}}}
}
3.3 SUID权限异常变更
设置定时检测任务:
*/10 * * * * find / -perm -4000 -type f -exec ls -l {} \; | diff /etc/suid.list -
四、攻击场景复现与分析
4.1 攻击链还原
- 攻击者通过
/manager/html爆破进入Tomcat后台 - 上传包含反弹Shell的WAR包
- 通过
sudo -l探测可用特权 - 利用CVE-2021-3156进行本地提权
4.2 日志关联分析
在Kibana中构建关联视图:
{"query": {"bool": {"must": [{ "match": { "source.ip": "192.168.1.100" } },{ "range": { "@timestamp": { "gte": "now-30m" } } }],"should": [{ "match": { "tags": "webshell_upload" } },{ "match": { "event.type": "privilege_escalation" } }]}}
}
五、防御加固建议
- 实时告警配置:使用ElastAlert对关键事件设置阈值告警
- 日志存储优化:敏感操作日志单独存储,保留至少180天
- 权限最小化:定期审计sudoers文件和SUID/SGID权限
- 进程监控:使用Auditd记录所有特权命令执行
附录:常用安全分析语句
// 检测密码暴力破解
event.category: "authentication" AND event.outcome: "failure" | stats count by source.ip// 查找短时间内多主机登录
user.name: "root" | timechart span=10m count by host.name
相关文章:
ELK日志分析实战
ELK日志分析实战:从异常流量定位提权攻击 摘要:本文通过模拟真实攻防场景,结合ELK技术栈(ElasticsearchLogstashKibana),演示如何从海量服务器日志中快速定位异常流量并追踪提权攻击行为。包含完整的日志收…...
阿里云操作系统控制台实战评测:提升云资源管理与监控效率
文章目录 前言产品介绍操作系统控制台体验阿里云操作系统开通 帮助与总结建议 前言 随着云计算和虚拟化技术的发展,操作系统控制台作为运维管理的核心工具之一,在现代IT环境中发挥着越来越重要的作用。它提供了一种更加直观、高效的方式来管理操作系统&…...
Docker构建启动jar包
Docker构建启动jar包 1、首先是把java服务打包成jar包 mvn clean install -Dmaven.skip.testtrue package -Pprod这个命令的意思是,跳过测试,打包prod环境。 2、编写Dockerfile文件 # 拉取jdk8作为基础镜像 FROM registry.supos.ai/library/openjdk:…...
微信小程序使用的SSL证书在哪里申请?
在数字化时代,微信小程序已成为众多企业和个人开发者触达用户的重要平台。然而,随着网络安全威胁的日益严峻,确保小程序数据传输的安全性显得尤为重要。SSL证书,作为加密通信的基石,是保障小程序安全不可或缺的一环。 …...
基于langchain+llama2的本地私有大语言模型实战
Langchain功能 LangChian 作为一个大语言模型(LLM, Large Language Model)开发框架,是 LLM 应用架构的重要一环。借助 LangChain,我们可以创建各种应用程序,包括聊天机器人和智能问答工具。 AI模型:包含各…...
如何使用postman来测试接口
一、postman的介绍与下载 可参考: https://blog.csdn.net/freeking101/article/details/80774271 二、api获取网站 阿里云API应用市场 地址:云市场_镜像市场_软件商店_建站软件_服务器软件_API接口_应用市场 - 阿里云 三、具体测试过程 可模拟浏览…...
深入剖析B树、B+树与B*树:从二叉树到多叉树的演进
引言 在计算机科学中,树结构是数据存储和检索的核心工具之一。从二叉树到二叉排序树,再到平衡二叉树,我们已经看到了这些数据结构在高效处理数据方面的优势。然而,随着数据量的爆炸式增长,二叉树的局限性逐渐显现出来…...
《算法篇:三数之和问题的两种解法》
问题描述 给定一个包含 n 个整数的数组 nums,判断 nums 中是否存在三个元素 a,b,c ,使得 a b c 0 ?找出所有满足条件且不重复的三元组。 注意:答案中不可以包含重复的三元组。 给定数组 nums [-1, 0,…...
【2025】基于springboot+uniapp的乡村旅游小程序系统统(源码、万字文档、图文修改、调试答疑)农家乐预约
乡村旅游小程序系统通过 Spring Boot 与 uniapp 技术栈的深度整合,为乡村旅游产业打造了一个功能全面、交互流畅、性能稳定的综合服务平台。系统根据不同角色(管理员、商家、用户)的业务需求,提供了针对性的功能模块,实…...
DeepSeek Kimi详细生成PPT的步骤
以下是使用 DeepSeek 和 Kimi 协作生成 PPT 的详细步骤,结合了两者的优势实现高效创作: 第一步:使用 DeepSeek 生成 PPT 大纲或内容 明确需求并输入提示词 在 DeepSeek 的对话界面中,输入具体指令,要求生成 PPT 大纲或…...
【Film】MM-StoryAgent:沉浸式叙事故事书视频生成,具有跨文本、图像和音频的多代理范式
MM-StoryAgent:沉浸式叙事故事书视频生成,具有跨文本、图像和音频的多代理范式 https://arxiv.org/abs/2503.05242 MM-StoryAgent: Immersive Narrated Storybook Video Generation with a Multi-Agent Paradigm across Text, Image and Audio The rapid advancement of larg…...
Tweak Power:全方位电脑系统优化的高效工具
在日常使用电脑时,系统性能的下降、垃圾文件的堆积以及硬盘的老化等问题常常困扰着用户。为了提升电脑性能、优化系统运行,许多人会选择系统优化工具。然而,国内一些系统优化软件常常因为广告过多或功能冗杂而让人望而却步。此时,…...
LVDS系列3:Xilinx的IOBUFDS原语
前面两节讲解了差分转单端的IBUFDS原语和单端转差分的OBUFDS原语,今天来讲一个同时带有两者功能的原语IOBUFDS; 前述的IBUFDS原语只能接收外部差分信号,此时连接管脚为input管脚,OBUFDS只能向外部输出差分信号,此时连接…...
Git和GitHub基础教学
文章目录 1. 前言2. 历史3. 下载安装Git3.1 下载Git3.2 安装Git3.3 验证安装是否成功 4. 配置Git5. Git基础使用5.1 通过Git Bash使用5.1.1 创建一个新的仓库。5.1.1.1 克隆别人的仓库5.1.1.2 自己创建一个本地仓库 5.1.2 管理存档 5.2 通过Visual Studio Code使用 6. Git完成远…...
Django-ORM-select_related
Django-ORM-select_related 作用使用场景示例无 select_related 的查询有 select_related 的查询 如何理解 "只发起一次查询,包含所有相关作者信息"1. select_related 的工作原理2. 具体示例解析3. 为什么只发起一次查询 数据库中的books量巨大࿰…...
蓝桥杯 k倍区间
题目描述 给定一个长度为 NN 的数列,A1,A2,⋯ANA1,A2,⋯AN,如果其中一段连续的子序列 Ai,Ai1,⋯AjAi,Ai1,⋯Aj ( i≤ji≤j ) 之和是 KK 的倍数,我们就称这个区间 [i,j][i,j] 是 K 倍区间。 你能求出数列中总共有多少个 KK 倍区间…...
数据结构(蓝桥杯常考点)
数据结构 前言:这个是针对于蓝桥杯竞赛常考的数据结构内容,基础算法比如高精度这些会在下期给大家总结 数据结构 竞赛中,时间复杂度不能超过10的7次方(1秒)到10的8次方(2秒) 空间限制&#x…...
Tomcat+Servlet运行后出现404错误解决方案
TomcatServlet运行后出现404错误解决方案 一、错误效果复现 后续的解决方案,仅仅针对我遇到的情况。对不能涵盖大部分情况感到抱歉。 二、错误分析 先看看源代码? package com.example.secondclass.Servlet; import java.io.*; import jakarta.servl…...
论文摘要生成器:用TextRank算法实现文献关键信息提取
我们基于python代码,使用PyQt5创建图形用户界面(GUI),同时支持中英文两种语言的文本论文文献关键信息提取。 PyQt5:用于创建GUI应用程序。 jieba:中文分词库,用于中文文本的处理。 reÿ…...
Flutter中网络图片加载显示Image.network的具体用法
Image.network的具体用法 Image.network 是 Flutter 中用于从网络加载图片的便捷方法。它基于 NetworkImage,可以快速加载并显示网络图片。以下是 Image.network 的具体用法和常见参数说明。 基本用法 最简单的用法是提供一个图片的 URL: dart 复制 …...
Cursor实现用excel数据填充word模版的方法
cursor主页:https://www.cursor.com/ 任务目标:把excel格式的数据里的单元格,按照某一个固定模版填充到word中 文章目录 注意事项逐步生成程序1. 确定格式2. 调试程序 注意事项 直接给一个excel文件和最终呈现的word文件的示例,…...
渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止
<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet: https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...
蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练
前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...
服务器硬防的应用场景都有哪些?
服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式,避免服务器受到各种恶意攻击和网络威胁,那么,服务器硬防通常都会应用在哪些场景当中呢? 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...
三体问题详解
从物理学角度,三体问题之所以不稳定,是因为三个天体在万有引力作用下相互作用,形成一个非线性耦合系统。我们可以从牛顿经典力学出发,列出具体的运动方程,并说明为何这个系统本质上是混沌的,无法得到一般解…...
CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...
ip子接口配置及删除
配置永久生效的子接口,2个IP 都可以登录你这一台服务器。重启不失效。 永久的 [应用] vi /etc/sysconfig/network-scripts/ifcfg-eth0修改文件内内容 TYPE"Ethernet" BOOTPROTO"none" NAME"eth0" DEVICE"eth0" ONBOOT&q…...
2023赣州旅游投资集团
单选题 1.“不登高山,不知天之高也;不临深溪,不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...
JAVA后端开发——多租户
数据隔离是多租户系统中的核心概念,确保一个租户(在这个系统中可能是一个公司或一个独立的客户)的数据对其他租户是不可见的。在 RuoYi 框架(您当前项目所使用的基础框架)中,这通常是通过在数据表中增加一个…...
git: early EOF
macOS报错: Initialized empty Git repository in /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core/.git/ remote: Enumerating objects: 2691797, done. remote: Counting objects: 100% (1760/1760), done. remote: Compressing objects: 100% (636/636…...
