🇰🇷 한글 설명
PHP 4.3.0~5.2.6의 mbstring 확장에서 HTML 엔티티 처리 중 발생하는 힙 기반 버퍼 오버플로우 취약점입니다. Unicode 변환 과정에서 경계 검사 실패로 인해 메모리 영역을 초과해 쓸 수 있습니다. 공격자가 악의적인 문자열을 mb_convert_encoding, mb_check_encoding 등의 함수로 처리하도록 유도하면 임의의 코드 실행이 가능합니다.
💡 쉬운 설명
PHP의 텍스트 변환 기능에서 특정 형식의 텍스트를 처리할 때 메모리 보호 범위를 벗어나는 문제입니다. 공격자가 조작된 텍스트를 입력하면 서버에서 원하는 프로그램을 실행할 수 있습니다.
🇺🇸 원문 (English)
Heap-based buffer overflow in ext/mbstring/libmbfl/filters/mbfilter_htmlent.c in the mbstring extension in PHP 4.3.0 through 5.2.6 allows context-dependent attackers to execute arbitrary code via a crafted string containing an HTML entity, which is not properly handled during Unicode conversion, related to the (1) mb_convert_encoding, (2) mb_check_encoding, (3) mb_convert_variables, and (4) mb_parse_str functions.
📍 영향받는 시스템
PHP 4.3.0 ~ 5.2.6 (mbstring 확장 활성화된 경우)
⚔️ 공격 벡터
악의적인 HTML 엔티티를 포함한 문자열을 mb_convert_encoding, mb_check_encoding, mb_convert_variables, mb_parse_str 함수로 처리하도록 유도
🛡️ 대응 방법
PHP를 5.2.7 이상으로 업그레이드하거나 mbstring 확장 비활성화
🔧 검증 코드
버전 4.3~5.2가 출력되면 취약하므로 즉시 업그레이드 필요, 5.2.7 이상이면 안전
php -v 2>/dev/null | grep -oP '(4\.[3-9]|5\.[0-2])' && echo '취약함' || echo '안전함'