Fluent Bit五大安全漏洞深度解析:缓冲区溢出与认证绕过全揭秘

本文详细分析了Fluent Bit日志处理器中发现的五个高危漏洞,包括栈缓冲区溢出、认证绕过和路径遍历等,这些漏洞可导致远程代码执行和服务拒绝,影响云环境和容器网络的安全运行。

概述

Fluent Bit是一款用于各种云和容器网络环境的日志和指标处理器与转发器。该软件中发现的多个漏洞可能允许认证绕过、远程代码执行(RCE)和拒绝服务(DoS),这些漏洞主要由各种Fluent Bit插件及其标签处理方式引发。多数漏洞要求攻击者具有对Fluent Bit实例的网络访问权限。这些漏洞已在Fluent Bit 4.1.0及更高版本中修复。

描述

Fluent Bit是一款用于各种云和容器环境的日志和指标处理器与转发器,通常用于将流量转发到安全信息和事件管理(SIEM)服务(如Splunk)进行进一步分析。Fluent Bit使用标签系统来处理和管理其移动的流量。在Fluent Bit中发现了多个漏洞,主要由操作或支持标签的各种插件引发。

各个漏洞如下:

CVE-2025-12972

Fluent Bit out_file插件在派生输出文件名时未正确清理标签值。当省略File选项时,插件使用不受信任的标签输入来构建文件路径。这使得具有网络访问权限的攻击者能够构造包含路径遍历序列的标签,导致Fluent Bit在预期输出目录之外写入文件。

CVE-2025-12970

Fluent Bit in_docker输入插件中的extract_name()函数将容器名称复制到固定大小的栈缓冲区中,但未验证长度。能够创建容器或控制容器名称的攻击者可以提供长名称来溢出缓冲区,导致进程崩溃或任意代码执行。

CVE-2025-12969

Fluent Bit in_forward输入插件在某些配置条件下未正确强制执行security.users认证机制。这使得具有对暴露forward输入的Fluent Bit实例网络访问权限的远程攻击者能够发送未经认证的数据。通过绕过认证控制,攻击者可以注入伪造的日志记录、淹没警报系统或操纵路由决策,从而损害摄入日志的真实性和完整性。

CVE-2025-12977

Fluent Bit in_http、in_splunk和in_elasticsearch输入插件未能清理tag_key输入。具有网络访问权限或能够将记录写入Splunk或Elasticsearch的攻击者可以提供包含特殊字符(如换行符或../)的tag_key值,这些值被视为有效标签。由于标签影响路由,并且某些输出从标签派生文件名或内容,这可能允许换行注入、路径遍历、伪造记录注入或日志误路由,从而影响数据完整性和日志路由。

CVE-2025-12978

Fluent Bit in_http、in_splunk和in_elasticsearch输入插件在tag_key验证逻辑中存在缺陷,未能强制执行精确的键长度匹配。这导致精心构造的输入中标签前缀被错误地视为完全匹配。具有对这些输入端点的认证或暴露访问权限的远程攻击者可以利用此行为操纵标签并将记录重定向到意外目的地。这损害了摄入日志的真实性,并可能允许注入伪造数据、警报淹没和路由操纵。

影响

这些漏洞可用于认证绕过、RCE、DoS和标签操纵,导致Fluent Bit功能异常。

解决方案

所有漏洞已在Fluent Bit 4.1.0及更高版本中修复。用户应尽快下载并安装最新版本的Fluent Bit。最新版本的Fluent Bit可在https://fluentbit.io/announcements/ 获取。

致谢

感谢报告者Oligo Security的Uri Katz。本文档由Christopher Cullen编写。

供应商信息

  • Amazon:未知状态
  • FluentBit:未知状态

参考信息

其他信息

CVE ID

  • CVE-2025-12969
  • CVE-2025-12970
  • CVE-2025-12972
  • CVE-2025-12977
  • CVE-2025-12978

公开日期:2025-11-18
首次发布:2025-11-24
最后更新:2025-11-25
文档版本:2

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计