PostgreSQL和MariaDB现严重漏洞
PostgreSQL和MariaDB的核心组件及扩展存在严重漏洞,可能导致远程代码执行。这些漏洞中,有些已经存在了20多年,目前均已修复。
随着人工智能帮助发现广泛使用的组件中存在的数十年之久的缓冲区溢出问题,开源数据库正面临着一些内存方面的问题。安全研究人员披露了一组影响PostgreSQL和MariaDB的高严重级别漏洞,据报道,其中两个漏洞的根源可追溯到20多年前。
在Wiz的zeroday.cloud黑客活动中,研究人员使用人工智能驱动的安全分析工具“Xint Code”,在PostgreSQL的“pgcrypto”扩展中发现了一个高严重级别的零日漏洞,同时在MariaDB的JSON模式验证逻辑中发现了一个堆缓冲区溢出漏洞,这两个漏洞都允许在各自的数据库服务器上执行远程代码(RCE)。Xint Code团队还发现了PostgreSQL中一个隐藏了20年的验证缺失漏洞,攻击者可利用该漏洞写入任意代码。针对这些漏洞的补丁均已发布,PostgreSQL和MariaDB的维护者都敦促用户立即升级到修复版本。
PostgreSQL根基上的多处裂缝
PostgreSQL零日漏洞中较为紧迫的是“pgcrypto”扩展中一个基于堆的缓冲区溢出问题,编号为CVE - 2026 - 2005。研究人员在一篇博客文章中指出,攻击者可以通过精心构造输入,触发大小不匹配问题,从而导致在堆上进行越界写入。在pgcrypto处理用户可控输入的环境中,攻击者可利用此漏洞在数据库服务器上实现远程代码执行。该漏洞影响了所有受支持的版本,在v18.2、v17.8、v16.12、v15.16和v14.21等更新版本中已得到修复。其严重级别评分为CVSS 8.8(满分10分)。研究人员补充道:“自2005年pgcrypto首次引入以来,这段有漏洞的代码就一直存在,至今已有20多年。”
这并非PostgreSQL中报告的唯一漏洞。在Wiz活动中以“Team Bugz Bunnies”参赛的另一组研究人员发现了一个验证缺失漏洞,编号为CVE - 2026 - 2006,该漏洞允许执行任意代码。此漏洞的严重级别接近9分(CVSS),在修复CVE - 2026 - 2005的同一更新中得到修复。PostgreSQL维护者敦促客户尽快修复这些漏洞,因为这些漏洞多年来未被发现,如今已公开,攻击者可以获取利用代码。这些漏洞在2月份得到修复,但Wiz的分析发现,80%使用PostgreSQL的云环境中,有45%直接暴露在互联网上。这难道不让人担忧吗?
MariaDB服务器因JSON解析不足导致RCE
在MariaDB中,使用Xint Code在JSON_SCHEMA_VALID()函数中发现了一个缓冲区溢出漏洞,编号为CVE - 2026 - 32710。该漏洞允许经过身份验证的用户触发崩溃,在可控条件下,这可能会升级为远程代码执行。与PostgreSQL的漏洞相比,这里的漏洞利用并不那么直接。成功执行代码需要对内存布局进行操作,这只有在“实验室环境”中才能实现。Xint Code团队在另一篇博客文章中表示:“任何能够打开SQL会话的用户——无论是通过窃取的凭证、SQL注入还是横向移动——都可以通过一次函数调用触及此代码路径。”
受影响的MariaDB版本为11.4.1 - 11.4.9和11.8.1 - 11.8.5,分别在11.4.10和11.8.6版本中推出了修复补丁。GitHub对该漏洞的严重级别评估为8.5分,而美国国家标准与技术研究院(NIST)将其基础CVSS评分为9.9分(满分10分)。那么,这些修复补丁是否能真正保障数据库的安全呢?