🇰🇷 한글 설명
PHP의 Fileinfo 컴포넌트에 있는 cdf_read_property_info 함수가 CDF 파일의 속성 길이를 검증하지 않아, 길이가 0이거나 과도하게 긴 속성을 처리할 때 무한 루프 또는 메모리 접근 오류를 유발한다. 원격 공격자가 악의적인 CDF 파일을 제공하여 서비스 거부 공격을 수행할 수 있다.
💡 쉬운 설명
PHP가 특정 파일 형식을 처리하는 과정에서 버그가 있어, 악의적으로 조작된 파일을 열면 프로그램이 멈추거나 충돌한다. 공격자가 이 파일을 웹서버에 업로드하면 서버가 응답 불가 상태에 빠질 수 있다.
🇺🇸 원문 (English)
The cdf_read_property_info function in cdf.c in the Fileinfo component in PHP before 5.4.29 and 5.5.x before 5.5.13 allows remote attackers to cause a denial of service (infinite loop or out-of-bounds memory access) via a vector that (1) has zero length or (2) is too long.
📍 영향받는 시스템
PHP 5.4.29 이전 버전 및 5.5.0 ~ 5.5.12 버전
⚔️ 공격 벡터
원격 공격자가 악의적으로 조작된 CDF/OLE2 형식의 파일을 업로드하거나 제공하여 Fileinfo 모듈이 처리하도록 유도
🛡️ 대응 방법
PHP를 5.4.29 이상 또는 5.5.13 이상으로 업그레이드
🔧 검증 코드
Safe가 출력되면 안전, Vulnerable이 출력되면 해당 PHP 버전에 취약점 존재 - PHP 버전 업그레이드 필요
php -v | grep -E '5\.(4\.(2[0-9]|[3-9][0-9])|5\.1[3-9]|[6-9])' && echo 'Safe' || echo 'Vulnerable'