🔍 CVE-2012-1823

9.8
CVSS Score
CRITICAL
2012-05-11
2026-04-21 20:28
✅ 완료

🇰🇷 한글 설명

PHP CGI 모드에서 = 부호 없는 쿼리 문자열을 제대로 처리하지 않아, 공격자가 커맨드라인 옵션을 주입하여 임의 코드를 실행할 수 있는 취약점입니다. PHP 5.3.12 이전 버전과 5.4.2 이전 5.4.x 버전이 영향을 받습니다.

💡 쉬운 설명

PHP 웹 서버가 잘못된 웹 요청을 처리할 때, 공격자가 해킹 명령어를 숨겨서 보낼 수 있습니다. 이를 통해 서버의 파일을 변경하거나 시스템을 장악할 수 있습니다.

🇺🇸 원문 (English)

sapi/cgi/cgi_main.c in PHP before 5.3.12 and 5.4.x before 5.4.2, when configured as a CGI script (aka php-cgi), does not properly handle query strings that lack an = (equals sign) character, which allows remote attackers to execute arbitrary code by placing command-line options in the query string, related to lack of skipping a certain php_getopt for the 'd' case.

📍 영향받는 시스템

PHP < 5.3.12 및 PHP 5.4.x < 5.4.2 (CGI 모드로 구동되는 환경)

⚔️ 공격 벡터

= 부호 없는 쿼리 문자열에 커맨드라인 옵션(예: ?-d auto_prepend_file=shell.php)을 포함시켜 전송

🛡️ 대응 방법

PHP를 5.3.12 이상 또는 5.4.2 이상으로 즉시 업그레이드

🔧 검증 코드

출력된 버전이 5.3.12 미만이거나 5.4.0~5.4.1이면 취약한 상태입니다.

Shell / Script
php -v 2>/dev/null | grep -oP 'PHP \K[0-9]+\.[0-9]+\.[0-9]+' | head -1

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

PHP