PostgreSQL SQL注入漏洞 (CVE-2025-1094)

一、漏洞概述

近日,绿盟科技CERT监测到PostgreSQL发布安全公告,修复了PostgreSQL SQL注入漏洞(CVE-2025-1094),CVSS评分8.1;由于PostgreSQL的psql工具对无效UTF-8字符(例如 hax\xC0′; \! id #)的处理缺陷,导致SQL语句被意外分割,未经身份验证的攻击者可通过构造特制的输入实现SQL注入,从而利用PostgreSQL交互式终端psql来执行任意代码。目前漏洞细节与PoC已公开,且发现在野利用,请相关用户尽快采取措施进行防护。

PostgreSQL是一款功能强大、灵活可定制的开源关系型数据库管理系统(RDBMS),支持Windows、Linux、UNIX、Mac OS X、BSD等多种操作系统。

 

参考链接:

https://www.postgresql.org/support/security/CVE-2025-1094

 

二、影响范围

受影响版本

17 <= PostgreSQL < 17.3

16 <= PostgreSQL < 16.7

15 <= PostgreSQL < 15.11

14 <= PostgreSQL < 14.16

13 <= PostgreSQL < 13.19

 

不受影响版本

PostgreSQL >= 17.3

PostgreSQL >= 16.7

PostgreSQL >= 15.11

PostgreSQL >= 14.16

PostgreSQL >= 13.19

 

三、漏洞检测

版本检测

相关用户可以通过下列命令查看当前使用的PostgreSQL版本是否在影响范围:

SQL查询:

 

四、暴露面资产排查

绿盟科技自动化渗透测试工具(EZ)支持PostgreSQL的服务识别,可直接使用web模块进行扫描检测。

工具下载链接:https://github.com/m-sec-org/EZ/releases

新用户请注册M-SEC社区(https://msec.nsfocus.com)申请证书进行使用:

 

五、漏洞防护

官方升级

目前官方已发布新版本修复此漏洞,请受影响的用户尽快升级防护,下载链接:https://www.postgresql.org/download

临时防护措施

若相关用户暂时无法进行升级操作,可使用下列措施进行临时缓解:

1、验证UTF-8编码:在传递给psql之前清理包含无效UTF-8序列的输入;

2、避免动态SQL:使用参数化查询或ORM框架来最大限度地减少对原始输入的直接psql使用;

3、在不影响业务的情况下,将psql工具的访问权限进行白名单限制。

 

声明

本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,绿盟科技以及安全公告作者不为此承担任何责任。

绿盟科技拥有对此安全公告的修改和解释权。如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经绿盟科技允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。

Spread the word. Share this post!

Meet The Author