🇰🇷 한글 설명
Netty의 MqttEncoder가 클라이언트 식별자, 토픽, 사용자 이름 등을 인코딩하기 전에 검증하지 않아 발생하는 취약점입니다. 이로 인해 MQTT UTF-8 문자열 필드에 금지된 널 바이트(null bytes)가 포함될 수 있으며, 이는 하위 브로커에서 라우팅, 접근 제어 또는 신원 불일치 문제를 일으킬 수 있습니다.
💡 쉬운 설명
메시지를 만들 때 잘못된 특수 문자가 섞여 들어가는 것을 막지 못하는 문제입니다. 이로 인해 시스템이 엉뚱한 곳으로 메시지를 보내거나 보안 규칙을 우회할 위험이 있습니다.
🇺🇸 원문 (English)
Netty is an asynchronous, event-driven network application framework. Prior to versions 4.1.137.Final and 4.2.17.Final, MqttEncoder does not validate client identifiers, will topics, usernames, and PUBLISH topic names before encoding, allowing prohibited null bytes in MQTT UTF-8 string fields and potentially causing routing, access-control, or identity mismatches in downstream brokers. The vulnerability is exploitable when an application uses Netty's MQTT encoder to construct messages from user-controlled input. This issue is fixed in versions 4.1.137.Final and 4.2.17.Final.
📍 영향받는 시스템
Netty versions prior to 4.1.137.Final and 4.2.17.Final
⚔️ 공격 벡터
사용자 입력값이 포함된 데이터를 Netty의 MQTT 인코더를 통해 메시지로 구성할 때 발생
🛡️ 대응 방법
Netty를 4.1.137.Final 또는 4.2.17.Final 이상의 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 Netty 버전이 4.1.137.Final 또는 4.2.17.Final보다 낮은지 확인하십시오.
mvn dependency:tree | grep -E 'netty-codec-mqtt:[0-9]+\.[0-9]+\.[0-9]+'
📊 CVSS Vector String
CVSS:3.1/AV:A/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N
💻 영향받는 소프트웨어
IBM Verify Identity Access