¡¾·ì϶¹«¸æ¡¿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ÈÕ£¬OG¶«·½Ìü¼¯ÍÅ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