What is CVE-2021-3712?A high-severity flaw in OpenSSL, explained.

High severity32 affected products
The short answer

CVE-2021-3712 is a high-severity flaw (CVSS 7.4) in OpenSSL, published on 24 August 2021. It is not on the list of flaws known to be exploited today. The latest forecast puts its chance of use in the next 30 days at 50%. If you run an affected version, plan in the vendor’s fix.

Published 24 August 2021. Record last updated 21 June 2024. We keep this page's data up to date.

What it does

What is CVE-2021-3712? In plain terms.

It can be attacked from anywhere on the internet without logging in, and nobody has to click anything. If it works, the attacker can read data and take it offline.

The official description

ASN.1 strings are represented internally within OpenSSL as an ASN1_STRING structure which contains a buffer holding the string data and a field holding the buffer length. This contrasts with normal C strings which are repesented as a buffer for the string data which is terminated with a NUL (0) byte. Although not a strict requirement, ASN.1 strings that are parsed using OpenSSL's own "d2i" functions (and other similar parsing functions) as well as any string whose value has been set with the ASN1_STRING_set() function will additionally NUL terminate the byte array in the ASN1_STRING structure. However, it is possible for applications to directly construct valid ASN1_STRING structures which do not NUL terminate the byte array by directly setting the "data" and "length" fields in the ASN1_STRING array. This can also happen by using the ASN1_STRING_set0() function. Numerous OpenSSL functions that print ASN.1 data have been found to assume that the ASN1_STRING byte array will be NUL terminated, even though this is not guaranteed for strings that have been directly constructed. Where an application requests an ASN.1 structure to be printed, and where that ASN.1 structure contains ASN1_STRINGs that have been directly constructed by the application without NUL terminating the "data" field, then a read buffer overrun can occur. The same thing can also occur during name constraints processing of certificates (for example if a certificate has been directly constructed by the application instead of loading it via the OpenSSL parsing functions, and the certificate contains non NUL terminated ASN1_STRING structures). It can also occur in the X509_get1_email(), X509_REQ_get1_email() and X509_get1_ocsp() functions. If a malicious actor can cause an application to directly construct an ASN1_STRING and then process it through one of the affected OpenSSL functions then this issue could be hit. This might result in a crash (causing a Denial of Service attack). It could also result in the disclosure of private memory contents (such as private keys, or sensitive plaintext). Fixed in OpenSSL 1.1.1l (Affected 1.1.1-1.1.1k). Fixed in OpenSSL 1.0.2za (Affected 1.0.2-1.0.2y).

What kind of flaw is it?

  • CWE-125Out-of-bounds Read
CVSS 3.1 scoreHigh · 7.4

How an attack on it works

Read straight from its severity rating, translated out of the shorthand.

  • Where an attacker can beAnywhere on the internet
  • How hard it is to pull offHard: conditions must line up
  • Login needed firstNo login needed
  • Does someone have to clickNo, nobody has to do anything
  • What an attacker getsCan read data and take it offline

Severity vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H

Exploitation

Is CVE-2021-3712 being exploited? Not that we know of.

It is not on the list of flaws known to be exploited today. The latest forecast puts the chance of it being used in the next 30 days at 50%. That can change at any time, which is why we keep watching.

Known to be exploitedNoNot on the list of exploited flaws today
Chance of use in the next 30 days50%Its EPSS score, from the latest forecast

Timeline

  1. Published
  2. Record last updated
  3. Exploit likelihood jumped
How Precursor Intelligence ranks it
48out of 100Medium

CVE-2021-3712 scores 48. Action: Plan remediation.

We keep the score of every published flaw up to date as the evidence changes. Four things go into the score, and evidence that criminals are actually using it counts most. In order:

  • Evidence it is being exploitedBiggest factor
  • How severe it isStrong factor
  • How widely exposed it isSmaller factor
  • Threat activity around itSmaller factor

85 and above is Critical. Anything confirmed as exploited is always marked for an emergency patch, whatever its score.

When CVE-2021-3712 matches software you track, it lands in your list with its score and the reasons behind it.

See your own ranked list →
Affected products

Who is affected by CVE-2021-3712? 32 products.

The published record lists 32 products from 7 vendors. Versions are shown as published: "1.0.2 to before 1.0.2za" means from 1.0.2 up to, but not including, 1.0.2za. If you run one of these, check your version, then go to the fix below.

Remediation

How do I fix CVE-2021-3712? Four steps.

  1. Check whether you run itCompare your versions with the affected products above. Not sure what you run? Precursor Intelligence can work it out from your public website, or you can pick it from a list.
  2. Apply the vendor’s fixInstall the update named in the vendor’s advisory. We’ve put the advisories and patch notes first in the list.
  3. If you can’t patch todayFollow any mitigation the vendor publishes, and limit who can reach the affected system from the internet until the update is in.
  4. Keep an eye on itTrack the product and we tell you as soon as we spot this flaw on the list of exploited flaws, or a jump in its exploit likelihood.
Precursor Intelligence

Does CVE-2021-3712 affect you? We'll keep checking.

Looking flaws up one at a time doesn't scale. Tell us what you run once, and we tell you which flaws matter to you, in what order, and keep watching for new ones.

  1. Tell us what you runPick your software from a list, or let us work it out from your website.
  2. We match it to every flawOver 400,000 published flaws, checked against your list.
  3. Ranked by real-world riskA 0 to 100 score, led by evidence criminals are using it.
  4. Told as soon as we knowAn alert by email, in the app or by webhook to your own tools.

Free plan, no card needed. Nothing to install.

FAQ

Common questions, answered plainly.

Something else? Talk to the team →

CVE-2021-3712 is a high-severity flaw in OpenSSL, published on 24 August 2021. It can be attacked from anywhere on the internet without logging in, and nobody has to click anything. If it works, the attacker can read data and take it offline.

It scores 7.4 out of 10 on the CVSS severity scale, which is high. Our risk score for CVE-2021-3712 is 48 out of 100, which is Medium. Its action is "Plan remediation". Not confirmed as exploited yet, but serious or likely enough that it should not wait for a quiet month.

It is not on the list of flaws known to be exploited today. The latest forecast puts the chance of it being used in the next 30 days at 50%. That can change at any time, which is why we keep watching.

For OpenSSL: 1.0.2 to before 1.0.2za, 1.1.1 to before 1.1.1l. The record lists 32 products in all, each with its versions, under "Who is affected" on this page.

Install the update the vendor names in its advisory, linked first under "How do I fix" on this page. If you can't patch today, follow the vendor's mitigation and limit who can reach the affected system from the internet.