17611538698
info@21cto.com

AI 发现 PostgreSQL 和 MariaDB 中20多年历史的漏洞

安全 0 14 10小时前
图片

导读:真的要感谢人工智能,它发现 PostgreSQL和MariaDB 数据库中影响核心组件和扩展的关键缺陷可以允许远程代码执行。这些漏洞有些已经有20多年历史,现在终于被发现并被修复了。

图片


开源的数据库系统正面临一些内存问题,人工智能帮助它们揭示了广泛使用组件中数十年前的缓冲区溢出问题。安全研究人员根据细节披露了一系列影响PostgreSQL和MariaDB的高严重性漏洞,其中有两个漏洞据称根源可追溯到20多年前。

在Wiz的 zeroday.cloud 黑客活动中,研究人员使用AI驱动的安全分析工具“Xint Code”发现了PostgreSQL的“pgcrypto”扩展中的高严重零日漏洞,以及MariaDB的JSON模式验证逻辑中的堆缓冲区溢出,这两者都允许在各自的数据库服务器上远程执行代码(RCE)。

Xint Code 团队还发现了 PostgreSQL 中隐藏了 20 年的缺失验证漏洞,这允许攻击者编写任意代码。

所有这些缺陷都已发布补丁,PostgreSQL和MariaDB维护者敦促用户立即升级到固定版本。

PostgreSQL 出现了不止一次“裂缝”

在PostgreSQL零日漏洞中更紧迫的是基于堆的缓冲区溢出问题,其编号为CVE-2026-2005,存在于“pgcrypto”扩展库中。研究人员在博客中表示,通过使用专门设计的输入,攻击者可以触发大小不匹配,导致堆上写入溢出边界。

在pgcrypto处理用户控制输入的环境中,可以利用这一点实现数据库服务器上的远程代码执行。

该漏洞影响了所有在支持的版本,并在包括v18.2、v17.8、v16.12、v15.16和v14.21等更新中得到修复。该病获得了CVSS高严重程度评级,评分为8.8分(满分10分)。研究人员补充道:“自2005年pgcrypto首次贡献以来,这个易受攻击的代码就一直存在,已经超过20年了。”

另一组以“Team Bugz Bunnies”身份参加Wiz活动的研究人员发现了一个缺失的验证漏洞,编号为CVE-2026-2006,允许执行任意代码。该漏洞被评为接近9级CVSS严重程度,并在修复CVE-2026-2005的同一更新中进行了修补。

PostgreSQL的维护者敦促用户和开发者迅速修补漏洞,因为这些漏洞在多年未被注意后公开,攻击者也能访问利用代码。这些缺陷在二月被修复,但Wiz的分析发现80%的云环境使用PostgreSQL,45%直接暴露于互联网。

JSON解析不足,MariaDB服务器上允许RCE

在MariaDB中,Xint Code发现了一个缓冲区溢出漏洞,编号为CVE-2026-32710,存在于JSON_SCHEMA_VALID()函数中。该漏洞允许认证用户触发崩溃,在受控条件下,崩溃可能升级为远程代码执行。

与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 则将其评为 9.9 分。

你的数据库安全吗?

首先,请先确认和定位版本:

-- PostgreSQLSELECT version();-- MariaDBSELECT VERSION();
现在,升级到安全版本。
# PostgreSQL(yum)yum update postgresql-server# MariaDB(apt)apt update && apt install mariadb-server

临时防护措施(当无法立即升级时):

  • 禁止普通用户创建 / 加载 pgcrypto 等扩展

  • 审计日志,监控异常 PGP 解密、JSON 验证请求

  • 限制数据库服务器公网暴露,启用 IP 白名单


作者:洛逸

评论

我要赞赏作者

请扫描二维码,使用微信支付哦。

分享到微信