Anonymous Intelligence Signal
OpenTelemetry Go SDK 安全更新:CVE-2026-39883 修复 BSD/Solaris 平台 PATH 劫持漏洞
OpenTelemetry Go SDK 发布关键安全更新,修复了一个影响 BSD 和 Solaris 平台的 PATH 环境变量劫持漏洞。该漏洞被追踪为 CVE-2026-39883,源于对先前一个类似 Darwin 系统漏洞(CVE-2026-24051)的不完整修复。攻击者可能通过控制系统的 PATH 环境变量,诱使 SDK 执行恶意程序,从而获取主机标识符等敏感信息。
漏洞根源于 `sdk/resource/host_id.go` 文件第 42 行的代码逻辑。在修复 Darwin 系统的 `ioreg` 命令调用时,开发者将其改为使用绝对路径以防止 PATH 劫持。然而,在同一文件中,用于 BSD 和 Solaris 系统以获取主机 UUID 的 `kenv` 命令调用(`r.execCommand("kenv", "-q", "smbios.system.uuid")`)却仍使用相对路径。这种不一致的修复留下了安全后门,使得攻击者可以在 PATH 中优先放置同名的恶意 `kenv` 可执行文件,实现命令注入。
此次更新将 SDK 版本从 v1.40.0 提升至 v1.43.0,旨在彻底封堵这一攻击向量。依赖 OpenTelemetry Go SDK 进行应用性能监控和分布式追踪的 Go 语言项目需立即评估并应用此更新。该漏洞凸显了在跨平台软件开发中,安全修复需要全面审视所有受影响代码路径的重要性,任何遗漏都可能使整个修复工作前功尽弃。