🇰🇷 한글 설명
PHP 5.3.6 이전 버전의 strval 함수에서 precision 설정값이 클 때 발생하는 버퍼 오버플로우 취약점입니다. 작은 수치 값을 인자로 전달하면 애플리케이션 충돌을 유발하는 서비스 거부(DoS) 공격이 가능합니다.
💡 쉬운 설명
PHP에서 숫자를 문자열로 변환하는 함수에 문제가 있어서 프로그램이 멈출 수 있습니다. 특정 설정에서 작은 숫자를 입력하면 충돌이 발생합니다.
🇺🇸 원문 (English)
Buffer overflow in the strval function in PHP before 5.3.6, when the precision configuration option has a large value, might allow context-dependent attackers to cause a denial of service (application crash) via a small numerical value in the argument.
📍 영향받는 시스템
PHP 5.3.5 이전 버전 (5.2.x, 5.3.0-5.3.5)
⚔️ 공격 벡터
웹 애플리케이션에 작은 수치값을 포함한 요청을 전송하여 strval 함수 호출 시 오버플로우 트리거
🛡️ 대응 방법
PHP를 5.3.6 이상으로 업그레이드하거나 precision 설정값을 작은 값으로 조정
🔧 검증 코드
출력된 PHP 버전이 5.3.6 미만이면 취약하며, 5.3.6 이상이면 안전합니다.
php -v 2>/dev/null | grep -oE 'PHP [0-9]+\.[0-9]+\.[0-9]+'