Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

nvd логотип

CVE-2021-3711

Опубликовано: 24 авг. 2021
Источник: nvd
CVSS3: 9.8
CVSS2: 7.5
EPSS Низкий

Уязвимость переполнения буфера в процессе расшифровки данных с использованием SM2 из-за некорректного расчета размера буфера в OpenSSL

Описание

В процессе расшифровки данных, зашифрованных с помощью SM2, приложение использует API функцию EVP_PKEY_decrypt(). Обычно приложение вызывает эту функцию дважды. При первом вызове параметр out может быть равен NULL, и на выходе параметр outlen заполняется размером буфера, необходимого для хранения расшифрованного текста. Затем приложение выделяет буфер соответствующего размера и вызывает EVP_PKEY_decrypt() снова, на этот раз передавая ненулевое значение для параметра out. Из-за ошибки в коде расшифровки SM2, расчет размера буфера, необходимого для хранения текста, который возвращается первым вызовом EVP_PKEY_decrypt(), может оказаться меньше реального размера, требуемого для второго вызова. Это приводит к переполнению буфера при втором вызове EVP_PKEY_decrypt(), если буфер оказывается слишком мал. Злоумышленник, способный предоставить специально подготовленные SM2-данные для расшифровки, может вызвать выполнение произвольного кода или нарушение работы приложения.

Тип уязвимости

Переполнение буфера

Ссылки

Уязвимые конфигурации

Конфигурация 1
cpe:2.3:a:openssl:openssl:*:*:*:*:*:*:*:*
Версия от 1.1.1 (включая) до 1.1.1l (исключая)
Конфигурация 2

Одно из

cpe:2.3:o:debian:debian_linux:10.0:*:*:*:*:*:*:*
cpe:2.3:o:debian:debian_linux:11.0:*:*:*:*:*:*:*
Конфигурация 3

Одно из

cpe:2.3:a:netapp:active_iq_unified_manager:-:*:*:*:*:vmware_vsphere:*:*
cpe:2.3:a:netapp:active_iq_unified_manager:-:*:*:*:*:windows:*:*
cpe:2.3:a:netapp:clustered_data_ontap:-:*:*:*:*:*:*:*
cpe:2.3:a:netapp:clustered_data_ontap_antivirus_connector:-:*:*:*:*:*:*:*
cpe:2.3:a:netapp:e-series_santricity_os_controller:*:*:*:*:*:*:*:*
Версия от 11.0 (включая) до 11.50.2 (включая)
cpe:2.3:a:netapp:hci_management_node:-:*:*:*:*:*:*:*
cpe:2.3:a:netapp:manageability_software_development_kit:-:*:*:*:*:*:*:*
cpe:2.3:a:netapp:oncommand_insight:-:*:*:*:*:*:*:*
cpe:2.3:a:netapp:oncommand_workflow_automation:-:*:*:*:*:*:*:*
cpe:2.3:a:netapp:santricity_smi-s_provider:-:*:*:*:*:*:*:*
cpe:2.3:a:netapp:snapcenter:-:*:*:*:*:*:*:*
cpe:2.3:a:netapp:solidfire:-:*:*:*:*:*:*:*
cpe:2.3:a:netapp:storage_encryption:-:*:*:*:*:*:*:*
Конфигурация 4

Одно из

cpe:2.3:a:oracle:communications_cloud_native_core_security_edge_protection_proxy:1.7.0:*:*:*:*:*:*:*
cpe:2.3:a:oracle:communications_cloud_native_core_unified_data_repository:1.15.0:*:*:*:*:*:*:*
cpe:2.3:a:oracle:communications_session_border_controller:8.4:*:*:*:*:*:*:*
cpe:2.3:a:oracle:communications_session_border_controller:9.0:*:*:*:*:*:*:*
cpe:2.3:a:oracle:communications_unified_session_manager:8.2.5:*:*:*:*:*:*:*
cpe:2.3:a:oracle:communications_unified_session_manager:8.4.5:*:*:*:*:*:*:*
cpe:2.3:a:oracle:enterprise_communications_broker:3.2.0:*:*:*:*:*:*:*
cpe:2.3:a:oracle:enterprise_communications_broker:3.3.0:*:*:*:*:*:*:*
cpe:2.3:a:oracle:enterprise_session_border_controller:8.4:*:*:*:*:*:*:*
cpe:2.3:a:oracle:enterprise_session_border_controller:9.0:*:*:*:*:*:*:*
cpe:2.3:a:oracle:essbase:*:*:*:*:*:*:*:*
Версия до 11.1.2.4.47 (исключая)
cpe:2.3:a:oracle:essbase:*:*:*:*:*:*:*:*
Версия от 21.1 (включая) до 21.3 (исключая)
cpe:2.3:a:oracle:health_sciences_inform_publisher:6.2.1.1:*:*:*:*:*:*:*
cpe:2.3:a:oracle:health_sciences_inform_publisher:6.3.1.1:*:*:*:*:*:*:*
cpe:2.3:a:oracle:jd_edwards_enterpriseone_tools:*:*:*:*:*:*:*:*
Версия до 9.2.6.3 (исключая)
cpe:2.3:a:oracle:jd_edwards_world_security:a9.4:*:*:*:*:*:*:*
cpe:2.3:a:oracle:mysql_connectors:*:*:*:*:*:*:*:*
Версия до 8.0.27 (включая)
cpe:2.3:a:oracle:mysql_enterprise_monitor:*:*:*:*:*:*:*:*
Версия до 8.0.25 (включая)
cpe:2.3:a:oracle:mysql_server:*:*:*:*:*:*:*:*
Версия от 5.7.0 (включая) до 5.7.35 (включая)
cpe:2.3:a:oracle:mysql_server:*:*:*:*:*:*:*:*
Версия от 8.0.0 (включая) до 8.0.26 (включая)
cpe:2.3:a:oracle:peoplesoft_enterprise_peopletools:8.57:*:*:*:*:*:*:*
cpe:2.3:a:oracle:peoplesoft_enterprise_peopletools:8.58:*:*:*:*:*:*:*
cpe:2.3:a:oracle:peoplesoft_enterprise_peopletools:8.59:*:*:*:*:*:*:*
cpe:2.3:a:oracle:zfs_storage_appliance_kit:8.8:*:*:*:*:*:*:*
Конфигурация 5

Одно из

cpe:2.3:a:tenable:nessus_network_monitor:*:*:*:*:*:*:*:*
Версия до 5.13.1 (включая)
cpe:2.3:a:tenable:tenable.sc:*:*:*:*:*:*:*:*
Версия от 5.16.0 (включая) до 5.19.1 (включая)

EPSS

Процентиль: 85%
0.02752
Низкий

9.8 Critical

CVSS3

7.5 High

CVSS2

Дефекты

CWE-120

Связанные уязвимости

CVSS3: 9.8
ubuntu
почти 4 года назад

In order to decrypt SM2 encrypted data an application is expected to call the API function EVP_PKEY_decrypt(). Typically an application will call this function twice. The first time, on entry, the "out" parameter can be NULL and, on exit, the "outlen" parameter is populated with the buffer size required to hold the decrypted plaintext. The application can then allocate a sufficiently sized buffer and call EVP_PKEY_decrypt() again, but this time passing a non-NULL value for the "out" parameter. A bug in the implementation of the SM2 decryption code means that the calculation of the buffer size required to hold the plaintext returned by the first call to EVP_PKEY_decrypt() can be smaller than the actual size required by the second call. This can lead to a buffer overflow when EVP_PKEY_decrypt() is called by the application a second time with a buffer that is too small. A malicious attacker who is able present SM2 content for decryption to an application could cause attacker chosen dat...

CVSS3: 9.8
redhat
почти 4 года назад

In order to decrypt SM2 encrypted data an application is expected to call the API function EVP_PKEY_decrypt(). Typically an application will call this function twice. The first time, on entry, the "out" parameter can be NULL and, on exit, the "outlen" parameter is populated with the buffer size required to hold the decrypted plaintext. The application can then allocate a sufficiently sized buffer and call EVP_PKEY_decrypt() again, but this time passing a non-NULL value for the "out" parameter. A bug in the implementation of the SM2 decryption code means that the calculation of the buffer size required to hold the plaintext returned by the first call to EVP_PKEY_decrypt() can be smaller than the actual size required by the second call. This can lead to a buffer overflow when EVP_PKEY_decrypt() is called by the application a second time with a buffer that is too small. A malicious attacker who is able present SM2 content for decryption to an application could cause attacker chosen dat...

msrc
больше 3 лет назад

OpenSSL: CVE-2021-3711 SM2 Decryption Buffer Overflow

CVSS3: 9.8
debian
почти 4 года назад

In order to decrypt SM2 encrypted data an application is expected to c ...

CVSS3: 9.8
github
около 3 лет назад

SM2 Decryption Buffer Overflow

EPSS

Процентиль: 85%
0.02752
Низкий

9.8 Critical

CVSS3

7.5 High

CVSS2

Дефекты

CWE-120