🇰🇷 한글 설명
OpenSSL의 SSLv2 구현 s2_srvr.c의 get_client_master_key 함수가 임의의 암호화 알고리즘에 대해 0이 아닌 CLIENT-MASTER-KEY CLEAR-KEY-LENGTH 값을 수용하여, 중간자 공격자가 Bleichenbacher RSA 패딩 오라클을 이용해 MASTER-KEY를 파악하고 TLS 암호문을 복호화할 수 있는 취약점입니다.
💡 쉬운 설명
OpenSSL의 구형 SSLv2 프로토콜에 암호화 약점이 있어서 해커가 네트워크 통신을 가로채고 비밀 키를 탈취하여 암호화된 데이터를 해독할 수 있습니다. 이는 RSA 암호화의 구조적 결함을 악용하는 고급 공격 기법입니다.
🇺🇸 원문 (English)
The get_client_master_key function in s2_srvr.c in the SSLv2 implementation in OpenSSL before 0.9.8zf, 1.0.0 before 1.0.0r, 1.0.1 before 1.0.1m, and 1.0.2 before 1.0.2a accepts a nonzero CLIENT-MASTER-KEY CLEAR-KEY-LENGTH value for an arbitrary cipher, which allows man-in-the-middle attackers to determine the MASTER-KEY value and decrypt TLS ciphertext data by leveraging a Bleichenbacher RSA padding oracle, a related issue to CVE-2016-0800.
📍 영향받는 시스템
OpenSSL 0.9.8zf 이전, 1.0.0r 이전, 1.0.1m 이전, 1.0.2a 이전 버전
⚔️ 공격 벡터
중간자 공격(MITM) 위치에서 SSLv2 핸드셰이크의 CLIENT-MASTER-KEY 메시지를 조작하여 Bleichenbacher 패딩 오라클 공격 수행
🛡️ 대응 방법
OpenSSL을 0.9.8zf 이상, 1.0.0r 이상, 1.0.1m 이상, 또는 1.0.2a 이상으로 업그레이드하고 SSLv2 프로토콜 비활성화
🔧 검증 코드
출력된 버전이 0.9.8zf, 1.0.0r, 1.0.1m, 1.0.2a 이상이면 안전하며, 그 이하면 취약점 존재