🇰🇷 한글 설명
s2n-tls의 TLS 1.3 암호화 레코드 구현에서 외부 content_type 바이트에 대한 검증이 누락되어 발생합니다. 공격자가 중간자 공격(MitM)을 통해 인증 태그의 보호를 받지 않는 content_type 바이트를 조작하거나 특정 애플리케이션 데이터를 탐지되지 않고 삭제할 수 있습니다. 이로 인해 HTTP 요청/응답 비동기화 또는 데이터 손실이 발생할 수 있습니다.
💡 쉬운 설명
통신 암호화 과정에서 데이터의 종류를 나타내는 표시 부분이 제대로 보호되지 않는 결함입니다. 해커가 중간에서 특정 데이터를 몰래 삭제하더라도 사용자는 연결이 끊기지 않아 데이터가 사라진 것을 알 수 없습니다.
🇺🇸 원문 (English)
Missing validation of the outer content_type byte on TLS 1.3 encrypted records in s2n-tls allows an active man-in-the-middle to silently discard individual application data records without either endpoint detecting the modification. RFC 8446 Section 5.2 requires that the outer content_type of all encrypted TLS 1.3 records must be application_data (0x17). The s2n-tls AEAD implementation hardcodes this value in the additional authenticated data rather than using the actual wire byte, so the outer content_type is not covered by the authentication tag.
This enables selective suppression of application data. In HTTP pipelining scenarios, dropping a TLS record containing an HTTP request can cause request/response desynchronization, where subsequent responses are delivered to the wrong requests. In write-heavy workloads, a dropped record containing a write request can result in undetectable data loss when the client interprets a subsequent success response as confirmation of the dropped write.
All TLS 1.3 connections are affected. Both TLS clients and servers are affected. TLS 1.2 and QUIC connections are not affected.
We recommend you upgrade s2n-tls to version v1.7.6
📍 영향받는 시스템
s2n-tls TLS 1.3를 사용하는 모든 클라이언트 및 서버 (TLS 1.2 및 QUIC 제외)
⚔️ 공격 벡터
중간자 공격(Man-in-the-Middle)을 통한 TLS 1.3 애플리케이션 데이터 레코드의 선택적 삭제 및 조작
🛡️ 대응 방법
s2n-tls를 v1.7.6 버전 이상으로 업그레이드하십시오.
🔧 검증 코드
명령어 실행 결과가 v1.7.6 이상인 버전 번호를 출력하면 안전하며, 그 미만이면 취약한 상태입니다.
git describe --tags --match 'v*' | grep -E 'v1.7.6|v[1-9]\.[7-9]\.[0-9]+|v[2-9]\.'
📊 CVSS Vector String
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:L
💻 영향받는 소프트웨어
IBM WebSphere Application Server