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).
Project Subscriptions
| Vendors | Products |
|---|---|
|
Debian
Subscribe
|
Debian Linux
Subscribe
|
|
Netapp
Subscribe
|
Active Iq Unified Manager
Subscribe
Clustered Data Ontap
Subscribe
Clustered Data Ontap Antivirus Connector
Subscribe
E-series Santricity Os Controller
Subscribe
Hci Management Node
Subscribe
Manageability Software Development Kit
Subscribe
Oncommand Insight
Subscribe
Oncommand Workflow Automation
Subscribe
Santricity Smi-s Provider
Subscribe
Snapcenter
Subscribe
Solidfire
Subscribe
Storage Encryption
Subscribe
|
|
Openssl
Subscribe
|
Openssl
Subscribe
|
|
Oracle
Subscribe
|
Communications Cloud Native Core Security Edge Protection Proxy
Subscribe
Communications Cloud Native Core Unified Data Repository
Subscribe
Communications Session Border Controller
Subscribe
Communications Unified Session Manager
Subscribe
Enterprise Communications Broker
Subscribe
Enterprise Session Border Controller
Subscribe
Essbase
Subscribe
Health Sciences Inform Publisher
Subscribe
Jd Edwards Enterpriseone Tools
Subscribe
Jd Edwards World Security
Subscribe
Mysql Connectors
Subscribe
Mysql Enterprise Monitor
Subscribe
Mysql Server
Subscribe
Peoplesoft Enterprise Peopletools
Subscribe
Zfs Storage Appliance Kit
Subscribe
|
|
Redhat
Subscribe
|
Acm
Subscribe
|
|
Tenable
Subscribe
|
Advisories
| Source | ID | Title |
|---|---|---|
Debian DSA |
DSA-4963-1 | openssl security update |
EUVD |
EUVD-2022-2673 | 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). |
Github GHSA |
GHSA-5ww6-px42-wc85 | SM2 Decryption Buffer Overflow |
Ubuntu USN |
USN-5051-1 | OpenSSL vulnerabilities |
Fixes
Solution
No solution given by the vendor.
Workaround
No workaround given by the vendor.
References
History
Wed, 16 Jul 2025 13:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
epss
|
epss
|
Sun, 08 Sep 2024 18:30:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Redhat
Redhat acm |
|
| CPEs | cpe:/a:redhat:acm:2.4::el8 | |
| Vendors & Products |
Redhat
Redhat acm |
Mon, 19 Aug 2024 22:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| CPEs | ||
| Vendors & Products |
Redhat
Redhat acm |
Projects
Sign in to view the affected projects.
Status: PUBLISHED
Assigner: openssl
Published:
Updated: 2024-09-16T18:29:03.742Z
Reserved: 2021-08-16T00:00:00
Link: CVE-2021-3711
No data.
Status : Modified
Published: 2021-08-24T15:15:09.133
Modified: 2024-11-21T06:22:12.960
Link: CVE-2021-3711
OpenCVE Enrichment
No data.
Debian DSA
EUVD
Github GHSA
Ubuntu USN