English
◀◁ 뒤로
취약점ID 22982
위험도 40
포트 80, ...
프로토콜 TCP
분류 WWW
상세설명 원격 호스트에 설치된 OpenSSL 버전은 1.0.2za 이전 버전입니다. 따라서 1.0.2za 권고에 언급된 취약점의 영향을 받습니다.

- ASN.1 문자열은 문자열 데이터를 보유하는 버퍼와 버퍼 길이를 보유하는 필드를 포함하는 ASN1_STRING 구조로 OpenSSL 내에서 내부적으로 표현됩니다. 이것은 NUL(0) 바이트로 끝나는 문자열 데이터에 대한 버퍼로 다시 나타나는 일반 C 문자열과 대조됩니다. 엄격한 요구 사항은 아니지만 OpenSSL의 자체 d2i 함수(및 기타 유사한 구문 분석 기능)를 사용하여 구문 분석되는 ASN.1 문자열과 ASN1_STRING_set() 함수로 값이 설정된 문자열은 추가로 NUL에서 바이트 배열을 종료합니다. ASN1_STRING 구조. 그러나 응용 프로그램이 ASN1_STRING 배열에서 데이터 및 길이 필드를 직접 설정하여 바이트 배열을 NUL 종료하지 않는 유효한 ASN1_STRING 구조를 직접 구성할 수 있습니다. 이것은 ASN1_STRING_set0() 함수를 사용하여 발생할 수도 있습니다. ASN.1 데이터를 인쇄하는 수많은 OpenSSL 함수는 ASN1_STRING 바이트 배열이 NUL 종료될 것이라고 가정하는 것으로 나타났습니다. 비록 이것이 직접 구성된 문자열에 대해 보장되지는 않지만. 응용 프로그램이 인쇄할 ASN.1 구조를 요청하고 해당 ASN.1 구조가 데이터 필드를 종료하는 NUL 없이 응용 프로그램에 의해 직접 구성된 ASN1_STRING을 포함하는 경우 읽기 버퍼 오버런이 발생할 수 있습니다. 인증서의 이름 제약 처리 중에도 동일한 일이 발생할 수 있습니다(예: 인증서가 OpenSSL 구문 분석 기능을 통해 로드하는 대신 애플리케이션에 의해 직접 구성되고 인증서에 NUL로 종료되지 않은 ASN1_STRING 구조가 포함된 경우). X509_get1_email(), X509_REQ_get1_email() 및 X509_get1_ocsp() 함수에서도 발생할 수 있습니다. 악의적인 행위자가 응용 프로그램이 ASN1_STRING을 직접 구성한 다음 영향을 받는 OpenSSL 기능 중 하나를 통해 처리하도록 하면 이 문제가 발생할 수 있습니다. 이로 인해 충돌이 발생할 수 있습니다(서비스 거부 공격 유발).
또한 개인 메모리 콘텐츠(예: 개인 키 또는 민감한 일반 텍스트)가 공개될 수 있습니다. OpenSSL 1.0.2za에서 수정되었습니다(1.0.2-1.0.2y에 영향을 받음). (CVE-2021-3712)
* 참고 사이트:
https://github.com/openssl/openssl/commit/ccb0a11145ee72b042d10593a64eaf9e8a55ec12
https://www.openssl.org/news/secadv/20210824.txt

* 영향을 받는 플랫폼:
1.0.2za 이전의 OpenSSL 1.0.2x
Linux Any version
Unix Any version
Microsoft Windows Any version
해결책 OpenSSL 웹 사이트인 http://www.openssl.org/ 에서 구할 수 있는 OpenSSL의 가장 최신 버전(1.0.2za 또는 이후)으로 업그레이드 하여야 한다.
관련 URL CVE-2021-3712 (CVE)
관련 URL (SecurityFocus)
관련 URL (ISS)