¡¾Â©¶´Í¨¸æ¡¿PostgreSQL SQL×¢Èë©¶´(CVE-2025-1094)

Ðû²¼Ê±¼ä 2025-02-21

Ò»¡¢Â©¶´¸ÅÊö


©¶´Ãû³Æ

PostgreSQL SQL×¢Èë©¶´

CVE   ID

CVE-2025-1094

©¶´ÀàÐÍ

SQL×¢Èë

·¢ÏÖʱ¼ä

2025-02-21

©¶´ÆÀ·Ö

8.1

©¶´Æ·¼¶

¸ßΣ

¹¥»÷ÏòÁ¿

ÍøÂç

ËùÐèȨÏÞ

ÎÞ

ÀûÓÃÄѶÈ

¸ß

Óû§½»»¥

ÎÞ

PoC/EXP

ÒѹûÈ»

ÔÚÒ°ÀûÓÃ

δ·¢ÏÖ


PostgreSQLÊÇÒ»¸ö¿ªÔ´¡¢Ç¿´óµÄ¹ØÏµÐÍÊý¾Ý¿â¹ÜÀíϵͳ £¬Ö§³ÖSQL³ß¶È¼°À©Õ¹ £¬¹ã·ºÓ¦ÓÃÓÚÆóÒµ¼¶Ó¦Óá£Ëü¾ß±¸¸ß¿É¿¿ÐÔ¡¢¿ÉÀ©Õ¹ÐÔ¡¢Êý¾ÝÍêÕûÐԺͲ¢·¢¿ØÖƹ¦Ð§ £¬Ö§³Ö¶àÖÖ±à³ÌÓïÑÔºÍÀ©Õ¹»úÖÆ¡£PostgreSQLµÄÌØµã°üÂÞACIDÊÂÎñÖ§³Ö¡¢ÅÓ´ó²éѯÓÅ»¯¡¢JSONÊý¾ÝÀàÐÍ´¦Öá¢È«ÎÄËÑË÷µÈ¡£ËüÊÊÓÃÓÚ´ÓСÐÍÓ¦Óõ½´óÐÍÊý¾Ý¶ÑÕ»µÄÖÖÖÖ³¡¾°¡£


2025Äê2ÔÂ21ÈÕ £¬¶«É­Æ½Ì¨¼¯ÍÅVSRC¼à²âµ½PostgreSQLÐû²¼Á˹ØÓÚCVE-2025-1094©¶´µÄÄþ¾²Í¨¸æ¡£Í¨¸æÖ¸³ö £¬PostgreSQLµÄlibpqº¯Êý£¨ÈçPQescapeLiteral()¡¢PQescapeIdentifier()¡¢PQescapeString()ºÍPQescapeStringConn()£©ÔÚijЩʹÓÃģʽÏÂδÄÜÕýÈ·´¦ÖÃÒýºÅÓï·¨ £¬¿ÉÄܵ¼ÖÂSQL×¢Èë©¶´¡£¹¥»÷Õß¿ÉÒÔͨ¹ý½á¹¹¶ñÒâÊäÈë £¬ÀûÓÃÕâЩº¯ÊýµÄ·µ»Ø½á¹ûÔÚPostgreSQL½»»¥ÖÕ¶ËpsqlÖÐÖ´ÐжñÒâSQLÓï¾ä¡£´ËÍâ £¬PostgreSQLÃüÁîÐй¤¾ßÔÚÌØ¶¨×Ö·û±àÂë»·¾³Ï£¨Èçclient_encodingΪBIG5¡¢server_encodingΪEUC_TW»òMULE_INTERNALʱ£©Ò²¿ÉÄÜÊܵ½ÀàËÆSQL×¢Èë¹¥»÷µÄÍþв¡£¸Ã©¶´µÄCVSSÆÀ·ÖΪ8.1·Ö £¬Â©¶´Æ·¼¶Îª¸ßΣ¡£


¶þ¡¢Ó°Ï췶Χ


17 <= PostgreSQL < 17.3
16 <= PostgreSQL < 16.7
15 <= PostgreSQL < 15.11
14 <= PostgreSQL < 14.16
13 <= PostgreSQL < 13.19


Èý¡¢Äþ¾²´ëÊ©


3.1 Éý¼¶°æ±¾


¹Ù·½ÒÑÓÚ2025Äê2ÔÂ13ÈÕÐû²¼ÁËÐÞ¸´²¹¶¡ £¬½¨ÒéÊÜÓ°Ïì°æ±¾µÄÓû§¾¡¿ì½øÐÐÉý¼¶¡£¾ßÌåÐÞ¸´°æ±¾ÈçÏ£º

PostgreSQL 17ÒÑÔÚ17.3°æ±¾ÖÐÐÞ¸´¸Ã©¶´
PostgreSQL 16ÒÑÔÚ16.7°æ±¾ÖÐÐÞ¸´¸Ã©¶´
PostgreSQL 15ÒÑÔÚ15.11°æ±¾ÖÐÐÞ¸´¸Ã©¶´
PostgreSQL 14ÒÑÔÚ14.16°æ±¾ÖÐÐÞ¸´¸Ã©¶´
PostgreSQL 13ÒÑÔÚ13.19°æ±¾ÖÐÐÞ¸´¸Ã©¶´


ÏÂÔØÁ´½Ó£º

https://github.com/postgres/postgres/tags/


3.2 ÁÙʱ´ëÊ©


? ʹÓòÎÊý»¯²éѯ»òÔ¤±àÒëÓï¾ä £¬ÖÆÖ¹Ö±½ÓÆ´½ÓÓû§ÊäÈë¡£
ÑϸñÑéÖ¤²¢¹ýÂËÓû§ÊäÈë £¬ÖÆÖ¹¶ñÒâ×Ö·û¡£
ÏÞÖÆÊý¾Ý¿âÓû§È¨ÏÞ £¬È·±£×îµÍÐëҪȨÏÞ¡£


3.4 ²Î¿¼Á´½Ó


https://www.postgresql.org/support/security/CVE-2025-1094/
https://www.postgresql.org/support/security/CVE-2025-1094
https://nvd.nist.gov/vuln/detail/CVE-2025-1094