🇰🇷 한글 설명
OpenSSL 0.9.8h 이전 버전의 32비트 플랫폼에서 P-256/P-384 NIST 타원곡선 구현의 모듈러 감소 알고리즘 오류로 인해, ECDH/ECDHE 암호화 도중 다중 TLS 핸드셰이크 시도를 통해 서버의 개인 키 탈취가 가능합니다.
💡 쉬운 설명
OpenSSL의 고급 암호화 계산 부분에 수학적 오류가 있어서, 여러 번 연결을 시도하면 서버의 비밀키를 빼낼 수 있습니다. 32비트 시스템의 특정 OpenSSL 버전에서만 발생하는 문제입니다.
🇺🇸 원문 (English)
crypto/bn/bn_nist.c in OpenSSL before 0.9.8h on 32-bit platforms, as used in stunnel and other products, in certain circumstances involving ECDH or ECDHE cipher suites, uses an incorrect modular reduction algorithm in its implementation of the P-256 and P-384 NIST elliptic curves, which allows remote attackers to obtain the private key of a TLS server via multiple handshake attempts.
📍 영향받는 시스템
OpenSSL 0.9.8h 이전 버전 (32비트 플랫폼), stunnel 및 이를 사용하는 모든 제품
⚔️ 공격 벡터
다중 TLS 핸드셰이크 시도를 통한 원격 공격 (ECDH/ECDHE 암호화 스위트 대상)
🛡️ 대응 방법
OpenSSL을 0.9.8h 이상으로 업그레이드하거나 64비트 플랫폼으로 전환
🔧 검증 코드
취약한 버전(0.9.8h 미만)이 출력되면 취약함. openssl version으로 전체 버전 확인 후 0.9.8h 이상 필요
openssl version | grep -oE '0\.9\.8[a-g]|0\.9\.[0-7]'