🇰🇷 한글 설명
Undertow HTTP 서버의 응답 헤더 작성 과정에서 16비트 유니코드 문자를 8비트 바이트로 변환할 때 데이터가 손실되는 취약점이 발견되었습니다. 공격자가 특수 유니코드 문자를 포함한 입력을 전송하면 헤더 값이 ASCII 제어 문자로 변환되어 데이터 무결성 저해나 정보 유출을 초래할 수 있습니다.
💡 쉬운 설명
웹 서버가 글자를 처리할 때 큰 글자를 작은 글자 규격으로 강제로 줄이면서 글자가 깨지는 문제입니다. 이 과정에서 글자가 특수 기호로 변해 보안 설정을 무력화하거나 정보를 노출할 위험이 있습니다.
🇺🇸 원문 (English)
A flaw was found in Undertow, an HTTP server, within its HTTP response header writing path. The `writeString()` method performs a silent narrowing cast from 16-bit Unicode characters to 8-bit bytes when writing HTTP response header values. A remote attacker can exploit this by supplying specific Unicode characters in user-controlled input that an application places into response headers. This can lead to the truncation of these characters into ASCII control characters or special symbols, potentially resulting in limited integrity impact or information disclosure if the application does not properly sanitize user input.
📍 영향받는 시스템
Undertow HTTP Server (특정 버전 미상, writeString() 메서드 사용 버전)
⚔️ 공격 벡터
사용자 입력값이 응답 헤더에 포함될 때 특수 유니코드 문자를 주입하는 원격 공격
🛡️ 대응 방법
Undertow를 최신 보안 패치가 적용된 버전으로 업데이트하거나 입력값에 대한 유니코드 검증 로직을 추가합니다.
🔧 검증 코드
출력된 결과에서 현재 프로젝트에 사용 중인 Undertow의 버전을 확인하여 취약 버전 여부를 판단합니다.
mvn dependency:tree | grep undertow
📊 CVSS Vector String
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
💻 영향받는 소프트웨어
IBM WebSphere Application Server