CVE-2021-3711
Fixed in a distro release EPSS 88%
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 data to overflow the buffer by up to a maximum of 62 bytes altering the contents of other data held after the buffer, possibly changing application behaviour or causing the application to crash. The location of the buffer is application dependent but is typically heap allocated. Fixed in OpenSSL 1.1.1l (Affected 1.1.1-1.1.1k).
Products: OpenSSL
Fixed upstream
| Ecosystem | Package | Fixed in |
|---|---|---|
| crates.io | openssl-src | 111.16.0 |
Distro releases
| Release | Package | Fixed in |
|---|---|---|
| Alpine 3.11 | openssl | 1.1.1l-r0 |
| Alpine 3.12 | openssl | 1.1.1l-r0 |
| Alpine 3.13 | openssl | 1.1.1l-r0 |
| Alpine 3.14 | openssl | 1.1.1l-r0 |
| Alpine 3.15 | openssl | 1.1.1l-r0 |
| Alpine 3.15 | openssl3 | 1.1.1l-r0 |
| Alpine 3.16 | openssl | 1.1.1l-r0 |
| Alpine 3.16 | openssl3 | 1.1.1l-r0 |
| Alpine 3.17 | openssl | 1.1.1l-r0 |
| Alpine 3.18 | openssl | 1.1.1l-r0 |
| Alpine 3.19 | openssl | 1.1.1l-r0 |
| Alpine 3.20 | openssl | 1.1.1l-r0 |
| Alpine 3.21 | openssl | 1.1.1l-r0 |
| Alpine 3.22 | openssl | 1.1.1l-r0 |
| Alpine 3.23 | openssl | 1.1.1l-r0 |
| Alpine 3.24 | openssl | 1.1.1l-r0 |
| Debian 10 | openssl | 1.1.1d-0+deb10u7 |
| Debian 11 | openssl | 1.1.1k-1+deb11u1 |
| Debian 12 | openssl | 1.1.1l-1 |
| Debian 13 | openssl | 1.1.1l-1 |
| Debian 14 | openssl | 1.1.1l-1 |
| SUSE Enterprise Storage 6 | grafana | 8.5.13-150100.3.12.1 |
| SUSE HPE Helion OpenStack 8 | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE Linux Enterprise Micro 5.0 | openssl-1_1 | 1.1.1d-11.27.1 |
| SUSE Linux Enterprise Module for Basesystem 15 SP2 | openssl-1_1 | 1.1.1d-11.27.1 |
| SUSE Linux Enterprise Module for Basesystem 15 SP3 | openssl-1_1 | 1.1.1d-11.27.1 |
| SUSE Linux Enterprise Module for Package Hub 15 SP4 | grafana | 8.5.13-150200.3.29.5 |
| SUSE Linux Enterprise Server 12 SP3-BCL | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE Linux Enterprise Server 12 SP3-LTSS | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE Linux Enterprise Server 12 SP4-LTSS | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE Linux Enterprise Server 12 SP4-LTSS | openssl-1_1 | 1.1.1d-2.36.2 |
| SUSE Linux Enterprise Server 12 SP5 | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE Linux Enterprise Server 12 SP5 | openssl-1_1 | 1.1.1d-2.36.2 |
| SUSE Linux Enterprise Server for SAP Applications 12 SP3 | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE Linux Enterprise Server for SAP Applications 12 SP4 | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE Linux Enterprise Server for SAP Applications 12 SP4 | openssl-1_1 | 1.1.1d-2.36.2 |
| SUSE Linux Enterprise Server for SAP Applications 12 SP5 | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE Linux Enterprise Server for SAP Applications 12 SP5 | openssl-1_1 | 1.1.1d-2.36.2 |
| SUSE Linux Enterprise Software Development Kit 12 SP5 | openssl-1_1 | 1.1.1d-2.36.2 |
| SUSE Manager Client Tools 12 | golang-github-QubitProducts-exporter_exporter | 0.4.0-1.6.1 |
| SUSE Manager Client Tools 12 | golang-github-boynux-squid_exporter | 1.6-1.9.1 |
| SUSE Manager Client Tools 12 | golang-github-prometheus-alertmanager | 0.23.0-1.12.3 |
| SUSE Manager Client Tools 12 | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE Manager Client Tools 12 | grafana | 8.3.5-1.30.3 |
| SUSE Manager Client Tools 12 | grafana | 8.5.13-1.36.2 |
| SUSE Manager Client Tools 12 | mgr-cfg | 4.3.6-1.27.4 |
| SUSE Manager Client Tools 12 | mgr-custom-info | 4.3.3-1.18.1 |
| SUSE Manager Client Tools 12 | mgr-daemon | 4.3.4-1.32.3 |
| SUSE Manager Client Tools 12 | mgr-osad | 4.3.6-1.39.4 |
| SUSE Manager Client Tools 12 | mgr-push | 4.3.4-1.21.4 |
| SUSE Manager Client Tools 12 | mgr-virtualization | 4.3.5-1.29.3 |
| SUSE Manager Client Tools 12 | prometheus-blackbox_exporter | 0.19.0-1.14.1 |
| SUSE Manager Client Tools 12 | prometheus-blackbox_exporter | 0.19.0-1.8.2 |
| SUSE Manager Client Tools 12 | prometheus-postgres_exporter | 0.10.0-1.8.2 |
| SUSE Manager Client Tools 12 | python-hwdata | 2.3.5-12.9.1 |
| SUSE Manager Client Tools 12 | rhnlib | 4.3.4-21.43.3 |
| SUSE Manager Client Tools 12 | spacecmd | 4.3.11-38.103.3 |
| SUSE Manager Client Tools 12 | spacecmd | 4.3.16-38.112.1 |
| SUSE Manager Client Tools 12 | spacewalk-client-tools | 4.3.13-52.80.1 |
| SUSE Manager Client Tools 12 | spacewalk-client-tools | 4.3.9-52.71.3 |
| SUSE Manager Client Tools 12 | spacewalk-koan | 4.3.5-24.33.3 |
| SUSE Manager Client Tools 12 | spacewalk-oscap | 4.3.5-19.27.1 |
| SUSE Manager Client Tools 12 | spacewalk-remote-utils | 4.3.3-24.24.3 |
| SUSE Manager Client Tools 12 | supportutils-plugin-salt | 1.2.0-6.16.1 |
| SUSE Manager Client Tools 12 | supportutils-plugin-susemanager-client | 4.3.2-6.24.1 |
| SUSE Manager Client Tools 12 | suseRegisterInfo | 4.3.3-25.27.3 |
| SUSE Manager Client Tools 12 | uyuni-common-libs | 4.3.4-1.21.3 |
| SUSE Manager Client Tools 12-BETA | golang-github-QubitProducts-exporter_exporter | 0.4.0-4.6.2 |
| SUSE Manager Client Tools 12-BETA | golang-github-boynux-squid_exporter | 1.6-4.9.2 |
| SUSE Manager Client Tools 12-BETA | golang-github-lusitaniae-apache_exporter | 1.0.0-4.12.4 |
| SUSE Manager Client Tools 12-BETA | golang-github-prometheus-alertmanager | 0.26.0-4.12.4 |
| SUSE Manager Client Tools 12-BETA | golang-github-prometheus-node_exporter | 1.5.0-4.15.4 |
| SUSE Manager Client Tools 12-BETA | golang-github-prometheus-prometheus | 2.45.0-4.33.3 |
| SUSE Manager Client Tools 12-BETA | golang-github-prometheus-promu | 0.14.0-4.12.2 |
| SUSE Manager Client Tools 12-BETA | grafana | 9.5.8-4.21.2 |
| SUSE Manager Client Tools 12-BETA | kiwi-desc-saltboot | 0.1.1687520761.cefb248-4.15.2 |
| SUSE Manager Client Tools 12-BETA | mgr-push | 5.0.1-4.21.4 |
| SUSE Manager Client Tools 12-BETA | prometheus-blackbox_exporter | 0.24.0-3.6.3 |
| SUSE Manager Client Tools 12-BETA | prometheus-postgres_exporter | 0.10.1-3.6.4 |
| SUSE Manager Client Tools 12-BETA | python-hwdata | 2.3.5-15.12.2 |
| SUSE Manager Client Tools 12-BETA | rhnlib | 5.0.1-24.30.3 |
| SUSE Manager Client Tools 12-BETA | spacecmd | 5.0.1-41.42.3 |
| SUSE Manager Client Tools 12-BETA | supportutils-plugin-salt | 1.2.2-9.9.2 |
| SUSE Manager Client Tools 12-BETA | supportutils-plugin-susemanager-client | 5.0.1-9.15.2 |
| SUSE Manager Client Tools 12-BETA | system-user-grafana | 1.0.0-3.7.2 |
| SUSE Manager Client Tools 12-BETA | system-user-prometheus | 1.0.0-3.7.2 |
| SUSE Manager Client Tools 12-BETA | uyuni-common-libs | 5.0.1-3.33.3 |
| SUSE Manager Client Tools 15 | dracut-saltboot | 0.1.1665997480.587fa10-150000.1.41.1 |
| SUSE Manager Client Tools 15 | golang-github-boynux-squid_exporter | 1.6-150000.1.9.1 |
| SUSE Manager Client Tools 15 | grafana | 8.3.5-150000.1.30.1 |
| SUSE Manager Client Tools 15 | grafana | 8.5.13-150000.1.36.3 |
| SUSE Manager Client Tools 15 | mgr-cfg | 4.2.8-150000.1.24.1 |
| SUSE Manager Client Tools 15 | mgr-osad | 4.2.8-150000.1.36.1 |
| SUSE Manager Client Tools 15 | mgr-push | 4.2.5-150000.1.18.2 |
| SUSE Manager Client Tools 15 | mgr-virtualization | 4.2.4-150000.1.26.1 |
| SUSE Manager Client Tools 15 | prometheus-blackbox_exporter | 0.19.0-150000.1.14.3 |
| SUSE Manager Client Tools 15 | prometheus-postgres_exporter | 0.10.0-150000.1.3.1 |
| SUSE Manager Client Tools 15 | rhnlib | 4.2.6-150000.3.34.1 |
| SUSE Manager Client Tools 15 | spacecmd | 4.2.16-150000.3.77.1 |
| SUSE Manager Client Tools 15 | spacecmd | 4.3.16-150000.3.89.1 |
| SUSE Manager Client Tools 15 | spacewalk-client-tools | 4.2.18-150000.3.59.1 |
| SUSE Manager Client Tools 15 | spacewalk-client-tools | 4.3.13-150000.3.71.3 |
| SUSE Manager Client Tools 15 | spacewalk-koan | 4.2.6-150000.3.27.1 |
| SUSE Manager Client Tools 15 | spacewalk-oscap | 4.2.4-150000.3.18.1 |
| SUSE Manager Client Tools 15 | suseRegisterInfo | 4.2.6-150000.3.21.1 |
| SUSE Manager Client Tools 15 | uyuni-proxy-systemd-services | 4.3.7-150000.1.9.3 |
| SUSE Manager Client Tools 15-BETA | ansible | 2.9.27-159000.3.9.1 |
| SUSE Manager Client Tools 15-BETA | dracut-saltboot | 0.1.1681904360.84ef141-159000.3.30.1 |
| SUSE Manager Client Tools 15-BETA | golang-github-QubitProducts-exporter_exporter | 0.4.0-159000.4.6.1 |
| SUSE Manager Client Tools 15-BETA | golang-github-boynux-squid_exporter | 1.6-159000.4.9.1 |
| SUSE Manager Client Tools 15-BETA | golang-github-lusitaniae-apache_exporter | 1.0.0-159000.4.12.1 |
| SUSE Manager Client Tools 15-BETA | golang-github-prometheus-prometheus | 2.45.0-159000.6.33.1 |
| SUSE Manager Client Tools 15-BETA | grafana | 9.5.8-159000.4.24.1 |
| SUSE Manager Client Tools 15-BETA | mgr-push | 5.0.1-159000.4.21.1 |
| SUSE Manager Client Tools 15-BETA | prometheus-blackbox_exporter | 0.24.0-159000.3.6.1 |
| SUSE Manager Client Tools 15-BETA | prometheus-postgres_exporter | 0.10.1-159000.3.6.1 |
| SUSE Manager Client Tools 15-BETA | python-hwdata | 2.3.5-159000.5.13.1 |
| SUSE Manager Client Tools 15-BETA | python-pyvmomi | 6.7.3-159000.3.6.1 |
| SUSE Manager Client Tools 15-BETA | rhnlib | 5.0.1-159000.6.30.1 |
| SUSE Manager Client Tools 15-BETA | spacecmd | 5.0.1-159000.6.42.1 |
| SUSE Manager Client Tools 15-BETA | spacewalk-client-tools | 5.0.1-159000.6.48.1 |
| SUSE Manager Client Tools 15-BETA | supportutils-plugin-salt | 1.2.2-159000.5.9.1 |
| SUSE Manager Client Tools 15-BETA | supportutils-plugin-susemanager-client | 5.0.1-159000.6.15.1 |
| SUSE Manager Client Tools 15-BETA | uyuni-common-libs | 5.0.1-159000.3.33.1 |
| SUSE Manager Client Tools 15-BETA | uyuni-proxy-systemd-services | 5.0.1-159000.3.9.1 |
| SUSE Manager Client Tools Beta for SLE Micro 5 | dracut-saltboot | 0.1.1681904360.84ef141-159000.3.30.1 |
| SUSE Manager Client Tools Beta for SLE Micro 5 | golang-github-QubitProducts-exporter_exporter | 0.4.0-159000.4.6.1 |
| SUSE Manager Client Tools Beta for SLE Micro 5 | prometheus-blackbox_exporter | 0.24.0-159000.3.6.1 |
| SUSE Manager Client Tools Beta for SLE Micro 5 | uyuni-proxy-systemd-services | 5.0.1-159000.3.9.1 |
| SUSE Manager Client Tools for SLE Micro 5 | dracut-saltboot | 0.1.1665997480.587fa10-150000.1.41.1 |
| SUSE Manager Client Tools for SLE Micro 5 | prometheus-blackbox_exporter | 0.19.0-150000.1.14.3 |
| SUSE Manager Client Tools for SLE Micro 5 | uyuni-proxy-systemd-services | 4.3.7-150000.1.9.3 |
| SUSE Manager Proxy Module 4.2 | golang-github-boynux-squid_exporter | 1.6-150000.1.9.1 |
| SUSE Manager Proxy Module 4.2 | prometheus-blackbox_exporter | 0.19.0-150000.1.14.3 |
| SUSE Manager Proxy Module 4.3 | golang-github-boynux-squid_exporter | 1.6-150000.1.9.1 |
| SUSE Manager Proxy Module 4.3 | prometheus-blackbox_exporter | 0.19.0-150000.1.14.3 |
| SUSE Manager Server Module 4.2 | prometheus-postgres_exporter | 0.10.0-150000.1.3.1 |
| SUSE OpenStack Cloud 8 | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE OpenStack Cloud 9 | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE OpenStack Cloud 9 | openssl-1_1 | 1.1.1d-2.36.2 |
| SUSE OpenStack Cloud Crowbar 8 | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE OpenStack Cloud Crowbar 9 | golang-github-prometheus-node_exporter | 1.3.0-1.15.3 |
| SUSE OpenStack Cloud Crowbar 9 | openssl-1_1 | 1.1.1d-2.36.2 |
| Ubuntu 18.04 LTS | openssl | 1.1.1-1ubuntu2.1~18.04.13 |
| Ubuntu 20.04 LTS | openssl | 1.1.1f-1ubuntu2.8 |
| Ubuntu 22.04 LTS | openssl | 1.1.1l-1ubuntu1 |
| Ubuntu Pro FIPS-updates 18.04 LTS | openssl | 1.1.1-1ubuntu2.fips.2.1~18.04.13.2 |
| Ubuntu Pro FIPS-updates 20.04 LTS | openssl | 1.1.1f-1ubuntu2.fips.7.2 |
| Ubuntu Pro FIPS 18.04 LTS | openssl | no fix |
| Ubuntu Pro FIPS 20.04 LTS | openssl | no fix |
| openSUSE Leap 15.2 | openssl-1_1 | 1.1.1d-lp152.7.21.1 |
| openSUSE Leap 15.3 | dracut-saltboot | 0.1.1665997480.587fa10-150000.1.41.1 |
| openSUSE Leap 15.3 | golang-github-boynux-squid_exporter | 1.6-150000.1.9.1 |
| openSUSE Leap 15.3 | golang-github-prometheus-promu | 0.13.0-150000.3.9.1 |
| openSUSE Leap 15.3 | grafana | 8.5.13-150200.3.29.5 |
| openSUSE Leap 15.3 | grafana | 8.3.5-150200.3.21.1 |
| openSUSE Leap 15.3 | openssl-1_1 | 1.1.1d-11.27.1 |
| openSUSE Leap 15.3 | prometheus-postgres_exporter | 0.10.0-150000.1.3.1 |
| openSUSE Leap 15.3 | rhnlib | 4.2.6-150000.3.34.1 |
| openSUSE Leap 15.3 | spacecmd | 4.3.16-150000.3.89.1 |
| openSUSE Leap 15.3 | spacecmd | 4.2.16-150000.3.77.1 |
| openSUSE Leap 15.4 | dracut-saltboot | 0.1.1665997480.587fa10-150000.1.41.1 |
| openSUSE Leap 15.4 | golang-github-boynux-squid_exporter | 1.6-150000.1.9.1 |
| openSUSE Leap 15.4 | golang-github-prometheus-promu | 0.13.0-150000.3.9.1 |
| openSUSE Leap 15.4 | grafana | 8.3.5-150200.3.21.1 |
| openSUSE Leap 15.4 | grafana | 8.5.13-150200.3.29.5 |
| openSUSE Leap 15.4 | prometheus-blackbox_exporter | 0.19.0-150000.1.14.3 |
| openSUSE Leap 15.4 | spacecmd | 4.3.16-150000.3.89.1 |
| openSUSE Leap 15.4 | wire | 0.5.0-150000.1.9.3 |
| openSUSE Tumbleweed | grafana | 8.3.4-1.1 |
| openSUSE Tumbleweed | grype | 0.92.1-1.1 |
| openSUSE Tumbleweed | openssl-1_1 | 1.1.1l-1.2 |