🇰🇷 한글 설명
Apache HTTP Server 2.4.12의 read_request_line 함수에서 protocol 구조체 멤버가 초기화되지 않아 발생하는 취약점입니다. INCLUDES 필터가 활성화되고 ErrorDocument 400 지시문이 설정된 상태에서 메서드가 없는 HTTP 요청을 전송하면 NULL 포인터 역참조로 인해 프로세스가 충돌합니다.
💡 쉬운 설명
Apache 웹 서버가 특정 설정에서 잘못된 HTTP 요청을 받으면 메모리를 제대로 초기화하지 않아 서버가 충돌합니다. 공격자가 이를 악용해 웹사이트를 다운시킬 수 있습니다.
🇺🇸 원문 (English)
The read_request_line function in server/protocol.c in the Apache HTTP Server 2.4.12 does not initialize the protocol structure member, which allows remote attackers to cause a denial of service (NULL pointer dereference and process crash) by sending a request that lacks a method to an installation that enables the INCLUDES filter and has an ErrorDocument 400 directive specifying a local URI.
📍 영향받는 시스템
Apache HTTP Server 2.4.12
⚔️ 공격 벡터
메서드가 없는 HTTP 요청을 원격으로 전송 (INCLUDES 필터 및 ErrorDocument 400 설정 필요)
🛡️ 대응 방법
Apache HTTP Server를 2.4.13 이상으로 업그레이드하거나 INCLUDES 필터 모듈 비활성화
🔧 검증 코드
2.4.13 이상 버전이 출력되면 패치됨, 2.4.12 이하면 취약
httpd -v 2>/dev/null | grep 'Server version' | grep -oP '2\.4\.(1[3-9]|[2-9]\d)' && echo 'PATCHED' || echo 'VULNERABLE'