🇰🇷 한글 설명
PHP의 Zend Engine이 파서 에러를 올바르게 처리하지 못하여, 악의적으로 구성된 함수 정의를 통해 메모리 소비 및 애플리케이션 크래시를 유발하는 서비스 거부(DoS) 공격이 가능한 취약점입니다. 공유 웹 호스팅 환경에서 특히 위험합니다.
💡 쉬운 설명
PHP의 오류 처리 방식의 문제로, 특정 코드로 프로그램을 의도적으로 다운시킬 수 있습니다. 여러 사용자가 같은 서버를 사용하는 웹 호스팅에서 다른 사용자의 서비스를 중단시킬 수 있습니다.
🇺🇸 원문 (English)
The Zend Engine in PHP before 5.4.16 RC1, and 5.5.0 before RC2, does not properly determine whether a parser error occurred, which allows context-dependent attackers to cause a denial of service (memory consumption and application crash) via a crafted function definition, as demonstrated by an attack within a shared web-hosting environment. NOTE: the vendor's http://php.net/security-note.php page says "for critical security situations you should be using OS-level security by running multiple web servers each as their own user id.
📍 영향받는 시스템
PHP 5.4.16 RC1 미만, PHP 5.5.0 RC2 미만 버전
⚔️ 공격 벡터
공유 호스팅 환경에서 악의적 함수 정의를 포함한 PHP 코드 업로드 또는 실행
🛡️ 대응 방법
PHP를 5.4.16 RC1 이상 또는 5.5.0 RC2 이상으로 업그레이드하거나, OS 레벨에서 웹 서버를 별도 사용자로 실행
🔧 검증 코드
PHP 버전이 5.4.16 미만(5.4계열)이거나 5.5.0 미만(5.5계열)이면 vulnerable으로 표시되며, 업그레이드가 필요합니다.
php -v | grep -oP 'PHP \K[0-9.]+' | awk '{if ($1 < "5.4.16") print "vulnerable"; else print "patched"}'