🔍 CVE-2021-23840

7.5
CVSS Score
HIGH
2021-02-16
2026-06-17 03:38
✅ 완료

🇰🇷 한글 설명

OpenSSL의 EVP_CipherUpdate, EVP_EncryptUpdate, EVP_DecryptUpdate 함수에서 입력 길이가 정수 최대값에 가까울 때 출력 길이 인자 오버플로우가 발생한다. 함수는 성공(1)을 반환하지만 출력 길이 값이 음수가 되어 애플리케이션의 비정상 동작이나 크래시를 유발할 수 있다.

💡 쉬운 설명

OpenSSL 암호화 함수에서 매우 큰 데이터를 처리할 때 내부 계산 오류가 발생합니다. 이로 인해 프로그램이 멈추거나 잘못된 결과를 내보낼 수 있습니다.

🇺🇸 원문 (English)

Calls to EVP_CipherUpdate, EVP_EncryptUpdate and EVP_DecryptUpdate may overflow the output length argument in some cases where the input length is close to the maximum permissable length for an integer on the platform. In such cases the return value from the function call will be 1 (indicating success), but the output length value will be negative. This could cause applications to behave incorrectly or crash. OpenSSL versions 1.1.1i and below are affected by this issue. Users of these versions should upgrade to OpenSSL 1.1.1j. OpenSSL versions 1.0.2x and below are affected by this issue. However OpenSSL 1.0.2 is out of support and no longer receiving public updates. Premium support customers of OpenSSL 1.0.2 should upgrade to 1.0.2y. Other users should upgrade to 1.1.1j. Fixed in OpenSSL 1.1.1j (Affected 1.1.1-1.1.1i). Fixed in OpenSSL 1.0.2y (Affected 1.0.2-1.0.2x).

📍 영향받는 시스템

OpenSSL 1.1.1i 이하, 1.0.2x 이하 (패치: 1.1.1j, 1.0.2y)

⚔️ 공격 벡터

매우 큰 크기의 데이터를 EVP_CipherUpdate 함수 호출 시 정수 오버플로우 트리거

🛡️ 대응 방법

OpenSSL을 1.1.1j 이상(1.1.x) 또는 1.0.2y 이상(1.0.2x)으로 업그레이드

🔧 검증 코드

출력 버전이 1.1.1j 미만 또는 1.0.2y 미만이면 취약점 존재, 해당 버전 이상이면 패치됨

Shell / Script
openssl version

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

OpenSSL