🔍 CVE-2025-14180

7.5
CVSS Score
HIGH
2025-12-27
2026-10-13 09:10
✅ 완료

🇰🇷 한글 설명

PHP의 PDO PostgreSQL 드라이버에서 PDO::ATTR_EMULATE_PREPARES 옵션이 활성화된 경우, 준비된 문(prepared statement) 매개변수에 잘못된 문자 시퀀스가 포함되면 PQescapeStringConn 함수가 NULL을 반환할 수 있습니다. 이로 인해 pdo_parse_params() 함수에서 Null 포인터 역참조가 발생하여 세그멘테이션 결함(Segmentation fault)과 함께 서버 가용성에 영향을 줄 수 있습니다.

💡 쉬운 설명

PHP에서 데이터베이스를 사용할 때 특수한 문자를 입력하면 프로그램이 갑자기 종료될 수 있는 오류입니다. 이로 인해 웹 서버가 멈추거나 서비스가 중단될 위험이 있습니다.

🇺🇸 원문 (English)

In PHP versions 8.1.* before 8.1.34, 8.2.* before 8.2.30, 8.3.* before 8.3.29, 8.4.* before 8.4.16, 8.5.* before 8.5.1 when using the PDO PostgreSQL driver with PDO::ATTR_EMULATE_PREPARES enabled, an invalid character sequence (such as \x99) in a prepared statement parameter may cause the quoting function PQescapeStringConn to return NULL, leading to a null pointer dereference in pdo_parse_params() function. This may lead to crashes (segmentation fault) and affect the availability of the target server.

📍 영향받는 시스템

PHP 8.1 < 8.1.34, 8.2 < 8.2.30, 8.3 < 8.3.29, 8.4 < 8.4.16, 8.5 < 8.5.1 (PDO PostgreSQL 사용 시)

⚔️ 공격 벡터

준비된 문(Prepared Statement)의 매개변수에 유효하지 않은 문자 시퀀스(\x99 등)를 삽입하여 서버 프로세스를 강제 종료

🛡️ 대응 방법

PHP를 취약점이 해결된 최신 보안 패치 버전(8.1.34, 8.2.30, 8.3.29, 8.4.16, 8.5.1 이상)으로 업데이트하십시오.

🔧 검증 코드

출력된 PHP 버전이 취약 버전 범위(예: 8.1.33 이하 등)에 해당하면 보안 업데이트가 필요합니다.

Shell / Script
php -v | grep -E 'PHP (8\[\[1-4\]\]\.[0-9]{2}|8\.5\.[0-9]{2})' | awk '{print $2}'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

PHP