CVE-2026-6476PostgreSQL的`pg_createsubscriber`组件存在严重的SQL注入漏洞。具备`pg_create_subscription`权限的攻击者可利用此漏洞,在`pg_createsubscriber`下次运行时注入并执行任意SQL语句,从而获得超级用户权限。该漏洞影响PostgreSQL 17(17.10之前)和18(18.4之前)版本。攻击通过网络进行,无需用户交互,成功利用可导致系统完全沦陷,严重影响数据的机密性、完整性和可用性。
该漏洞的核心在于PostgreSQL的`pg_createsubscriber`工具在构建内部SQL命令时存在输入验证缺陷。`pg_createsubscriber`是一个用于管理逻辑复制订阅的工具,它需要连接数据库并执行特定的维护任务。漏洞允许拥有`pg_create_subscription`特权的攻击者操纵传递给该工具的参数,从而注入恶意的SQL命令。虽然攻击者需要特定的数据库权限(PR:H),但该工具通常以高权限运行。当`pg_createsubscriber`被触发执行时,它会拼接用户可控的输入到SQL查询中,攻击者注入的SQL代码随之被执行。由于执行上下文通常继承自超级用户或具有提升权限的数据库角色,攻击者可以执行任意操作,包括读取、修改或删除所有数据,甚至控制底层操作系统(通过SQL扩展)。