🇰🇷 한글 설명
Apache HTTP Server 2.0.x와 2.2.x의 mod_setenvif 모듈에서 ap_pregsub 함수가 환경변수 값의 크기를 제한하지 않아 발생하는 취약점입니다. 공격자가 .htaccess 파일의 SetEnvIf 지시문과 특정 HTTP 요청 헤더를 조합하여 메모리 고갈 또는 NULL 포인터 역참조를 유발할 수 있습니다.
💡 쉬운 설명
Apache 웹서버에서 특정 설정 파일을 통해 메모리를 무제한 사용하게 만들어 서버를 멈추게 할 수 있는 취약점입니다. 로컬 사용자가 악의적인 파일과 요청을 조합하여 서버 서비스를 중단시킬 수 있습니다.
🇺🇸 원문 (English)
The ap_pregsub function in server/util.c in the Apache HTTP Server 2.0.x through 2.0.64 and 2.2.x through 2.2.21, when the mod_setenvif module is enabled, does not restrict the size of values of environment variables, which allows local users to cause a denial of service (memory consumption or NULL pointer dereference) via a .htaccess file with a crafted SetEnvIf directive, in conjunction with a crafted HTTP request header, related to (1) the "len +=" statement and (2) the apr_pcalloc function call, a different vulnerability than CVE-2011-3607.
📍 영향받는 시스템
Apache HTTP Server 2.0.0-2.0.64, 2.2.0-2.2.21 (mod_setenvif 모듈 활성화 상태)
⚔️ 공격 벡터
.htaccess 파일에 특정 SetEnvIf 지시문 작성 + 특수 구성의 HTTP 요청 헤더 전송 (로컬 접근 필요)
🛡️ 대응 방법
Apache HTTP Server를 2.0.65 이상 또는 2.2.22 이상으로 업그레이드하거나 mod_setenvif 모듈 비활성화
🔧 검증 코드
현재 설치된 Apache 버전이 2.0.65 이상 또는 2.2.22 이상이면 안전하고, 그 이하 버전이면 즉시 업그레이드 필요
apachectl -v | grep -oP 'Apache/\K[0-9.]+'