🇰🇷 한글 설명
PHP의 str_replace 함수에서 정수 오버플로우 취약점이 발생합니다. 1글자 검색 문자열과 긴 교체 문자열을 조합하면 32비트 길이 카운터가 오버플로우되어 임의 코드 실행이 가능합니다. CVE-2007-0906과 동일한 것으로 추정됩니다.
💡 쉬운 설명
PHP의 str_replace 함수가 문자를 바꿀 때 매우 큰 숫자를 제대로 처리하지 못해 오류가 발생합니다. 공격자는 이를 악용하여 서버에서 임의의 코드를 실행할 수 있습니다.
🇺🇸 원문 (English)
Integer overflow in the str_replace function in PHP 4 before 4.4.5 and PHP 5 before 5.2.1 allows context-dependent attackers to execute arbitrary code via a single character search string in conjunction with a long replacement string, which overflows a 32 bit length counter. NOTE: this is probably the same issue as CVE-2007-0906.6.
📍 영향받는 시스템
PHP 4.0.0~4.4.4, PHP 5.0.0~5.2.0
⚔️ 공격 벡터
str_replace() 함수에 1문자 검색 문자열과 길이가 매우 긴 교체 문자열을 입력하여 32비트 정수 오버플로우 발생
🛡️ 대응 방법
PHP를 4.4.5 이상 또는 5.2.1 이상으로 즉시 업그레이드
🔧 검증 코드
출력된 PHP 버전이 4.4.4 이하 또는 5.2.0 이하면 취약 상태이며, 4.4.5 이상 또는 5.2.1 이상이면 패치됨
php -v | grep -oE 'PHP [0-9]+\.[0-9]+\.[0-9]+' && echo 'Check if version is 4.4.5+ or 5.2.1+'