🇰🇷 한글 설명
PHP 7.0.10 이전 버전의 ext/curl/interface.c에서 libcurl의 정수 오버플로우 취약점이 처리되지 않아 발생하는 문제입니다. curl_escape 함수에 긴 문자열을 전달할 때 힙 기반 버퍼 오버플로우가 발생하여 서비스 거부 또는 임의 코드 실행을 초래할 수 있습니다.
💡 쉬운 설명
PHP의 curl 함수가 매우 긴 URL을 처리할 때 메모리 오버플로우가 발생합니다. 공격자가 특별히 만든 긴 문자열을 보내면 웹 서버가 충돌하거나 악의적 코드가 실행될 수 있습니다.
🇺🇸 원문 (English)
ext/curl/interface.c in PHP 7.x before 7.0.10 does not work around a libcurl integer overflow, which allows remote attackers to cause a denial of service (allocation error and heap-based buffer overflow) or possibly have unspecified other impact via a long string that is mishandled in a curl_escape call.
📍 영향받는 시스템
PHP 7.0.0~7.0.9 버전 (curl 확장 포함)
⚔️ 공격 벡터
원격 공격자가 curl_escape() 함수로 처리되는 긴 문자열을 입력하여 서비스 거부 또는 코드 실행 유도
🛡️ 대응 방법
PHP를 7.0.10 이상으로 업그레이드하거나 libcurl을 최신 버전으로 패치 적용
🔧 검증 코드
PHP 버전이 7.0.10 미만이면 취약함. 7.0.10 이상이거나 7.1 이상이면 안전함.
php -r "echo phpversion('curl'); echo '\n'; echo PHP_VERSION;" | grep -E '7\.0\.[0-9]'