🇰🇷 한글 설명
PHP 5.2.0~5.2.1의 FILTER_VALIDATE_EMAIL 필터에 CRLF 주입 취약점이 존재하여, 이메일 주소에 개행문자('\n')를 삽입하면 정규표현식이 뒷부분을 무시한다. 이를 악용하여 공격자는 임의의 이메일 헤더를 주입하고 스팸, 피싱 등의 부정한 메일을 발송할 수 있다.
💡 쉬운 설명
PHP의 이메일 검증 기능이 개행문자를 포함한 이메일을 제대로 검증하지 못한다. 이를 악용하면 공격자가 원하는 내용의 이메일을 보낼 수 있다.
🇺🇸 원문 (English)
CRLF injection vulnerability in the FILTER_VALIDATE_EMAIL filter in ext/filter in PHP 5.2.0 and 5.2.1 allows context-dependent attackers to inject arbitrary e-mail headers via an e-mail address with a '\n' character, which causes a regular expression to ignore the subsequent part of the address string.
📍 영향받는 시스템
PHP 5.2.0, 5.2.1
⚔️ 공격 벡터
이메일 주소 입력란에 개행문자(\n)를 포함한 주소를 입력하여 메일 헤더 주입 공격 수행
🛡️ 대응 방법
PHP를 5.2.2 이상으로 즉시 업그레이드하거나 입력 검증 함수를 교체
🔧 검증 코드
출력값이 5.2.0 또는 5.2.1이면 취약하며, 5.2.2 이상이면 패치된 상태
php -v 2>/dev/null | grep -oE '[0-9]+\.[0-9]+\.[0-9]+' | head -1