IPBUF安全漏洞报告
English
CVE-2026-42191 CVSS 6.5 中危

CVE-2026-42191 OpenTelemetry本地权限提升漏洞

披露日期: 2026-05-12

漏洞信息

漏洞编号
CVE-2026-42191
漏洞类型
权限提升
CVSS评分
6.5 中危
攻击向量
本地 (AV:L)
认证要求
低权限 (PR:L)
用户交互
无需交互 (UI:N)
影响产品
OpenTelemetry.Exporter.OpenTelemetryProtocol

相关标签

OpenTelemetry权限提升本地文件包含DotNetCVE-2026-42191

漏洞概述

OpenTelemetry .NET OTLP导出器在1.8.0至1.15.2版本中存在漏洞。当启用磁盘重试但未配置特定路径时,系统默认使用共享临时目录存储数据。在多用户系统中,本地攻击者可利用此缺陷读取、篡改敏感数据或消耗磁盘资源。

技术细节

该漏洞源于OTLP导出器在处理磁盘重试时的不安全回退机制。当配置环境变量OTEL_DOTNET_EXPERIMENTAL_OTLP_RETRY=disk且未指定OTEL_DOTNET_EXPERIMENTAL_OTLP_DISK_RETRY_DIRECTORY_PATH时,组件默认使用Path.GetTempPath()作为存储根目录,并在其下创建固定的子目录(如traces, metrics)存放.blob文件。在多用户操作系统上,此临时路径通常可被其他本地账户访问。攻击者可利用预测的路径结构,在应用写入失败重试期间读取敏感遥测数据(C:H),写入恶意文件影响数据完整性(I:H),或通过大量文件占满磁盘(A:L)。

攻击链分析

STEP 1
1. 信息收集
攻击者获得目标系统的本地访问权限,并确认目标应用程序运行了易受攻击版本的OpenTelemetry .NET库且启用了磁盘重试功能。
STEP 2
2. 路径预测
攻击者确定系统临时目录路径(如C:\Users\Public\AppData\Local\Temp或/tmp),并预测OTLP导出器使用的固定子目录名称(traces, metrics, logs)。
STEP 3
3. 恶意利用
攻击者在该临时目录中读取其他用户进程留下的*.blob文件以获取敏感信息,或写入伪造的*.blob文件以在应用程序重试导出时被加载。
STEP 4
4. 拒绝服务
攻击者在该目录下创建大量或超大文件,耗尽磁盘空间,导致应用程序因无法写入重试数据而性能下降或崩溃。

PoC / 利用代码

⚠️ 仅供安全研究
以下代码仅用于安全研究和授权测试,未经授权使用属于违法行为。
PoC
/* * PoC for CVE-2026-42191 * This script demonstrates checking for the existence of the insecure * default retry directory in the system temp path. */ using System; using System.IO; public class CheckOTLPPoC { public static void Main(string[] args) { // Simulate the vulnerable library's default path logic string tempPath = Path.GetTempPath(); string[] signalDirs = { "traces", "metrics", "logs" }; Console.WriteLine($"[+] Checking System Temp Path: {tempPath}"); foreach (string dir in signalDirs) { string fullPath = Path.Combine(tempPath, dir); if (Directory.Exists(fullPath)) { Console.WriteLine($"[!] Found vulnerable directory: {fullPath}"); // Attempt to list files to demonstrate read access try { string[] files = Directory.GetFiles(fullPath, "*.blob"); Console.WriteLine($" - Found {files.Length} blob files accessible."); } catch (UnauthorizedAccessException) { Console.WriteLine(" - Access denied (securely configured)."); } } else { Console.WriteLine($"[-] Directory not found: {fullPath}"); } } } }

影响范围

OpenTelemetry.Exporter.OpenTelemetryProtocol >= 1.8.0, <= 1.15.2

防御指南

临时缓解措施
如无法立即升级,请确保显式设置环境变量OTEL_DOTNET_EXPERIMENTAL_OTLP_DISK_RETRY_DIRECTORY_PATH,避免使用默认的共享临时路径;或者在非必要时禁用磁盘重试功能。

参考链接

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