CVE-2026-8086OSGeo GDAL 3.13.0dev-4及之前版本被发现存在安全漏洞,该漏洞位于文件frmts/hdf4/hdf-eos/SWapi.c的SWnentries函数中。由于程序未正确验证DimensionName参数的长度,攻击者可通过本地操作触发基于堆的缓冲区溢出。此漏洞需要本地访问权限和低权限用户,无需用户交互即可被利用,可能导致信息泄露、完整性破坏或服务拒绝。
该漏洞的根源在于GDAL库处理HDF4(分层数据格式)文件时的输入验证缺失。具体受影响的组件是frmts/hdf4/hdf-eos/SWapi.c文件中的SWnentries函数,该函数负责处理HDF-EOS API中的Swath数据结构。在处理DimensionName参数时,代码未能对输入数据的长度进行有效校验,直接将其复制到固定大小的堆缓冲区中。攻击者可以通过本地环境,利用低权限账户传递特制的超长字符串作为DimensionName参数。由于缺乏边界检查,该操作会覆盖堆内存中的相邻数据,导致堆缓冲区溢出。这种内存破坏行为可能覆盖关键的管理数据或函数指针,从而允许攻击者在本地上下文中执行任意代码,或导致应用程序崩溃(拒绝服务)。鉴于利用代码已公开,风险较为实际。