CVE Vulnerabilities

CVE-2021-3565

Improper Initialization

Published: Jun 04, 2021 | Modified: Nov 21, 2024
CVSS 3.x
5.9
MEDIUM
Source:
NVD
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
CVSS 2.x
4.3 MEDIUM
AV:N/AC:M/Au:N/C:P/I:N/A:N
RedHat/V2
RedHat/V3
4.4 MODERATE
CVSS:3.1/AV:L/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:N
Ubuntu
MEDIUM

A flaw was found in tpm2-tools in versions before 5.1.1 and before 4.3.2. tpm2_import used a fixed AES key for the inner wrapper, potentially allowing a MITM attacker to unwrap the inner portion and reveal the key being imported. The highest threat from this vulnerability is to data confidentiality.

Weakness

The product does not initialize or incorrectly initializes a resource, which might leave the resource in an unexpected state when it is accessed or used.

Affected Software

Name Vendor Start Version End Version
Tpm2-tools Tpm2-tools_project * 4.3.2 (excluding)
Tpm2-tools Tpm2-tools_project 5.1 (including) 5.1.1 (excluding)
Red Hat Enterprise Linux 8 RedHat tpm2-tools-0:4.1.1-5.el8 *
Tpm2-tools Ubuntu esm-apps/focal *
Tpm2-tools Ubuntu focal *
Tpm2-tools Ubuntu groovy *
Tpm2-tools Ubuntu hirsute *
Tpm2-tools Ubuntu impish *
Tpm2-tools Ubuntu kinetic *
Tpm2-tools Ubuntu lunar *
Tpm2-tools Ubuntu mantic *
Tpm2-tools Ubuntu trusty *
Tpm2-tools Ubuntu xenial *

Potential Mitigations

  • Use a language that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid.
  • For example, in Java, if the programmer does not explicitly initialize a variable, then the code could produce a compile-time error (if the variable is local) or automatically initialize the variable to the default value for the variable’s type. In Perl, if explicit initialization is not performed, then a default value of undef is assigned, which is interpreted as 0, false, or an equivalent value depending on the context in which the variable is accessed.

References