
Cloud Vulnerability DB
A community-led vulnerabilities database
CVE-2020-8918 is a security vulnerability discovered in Google's go-tpm TPM1.2 library versions prior to 0.3.0. The vulnerability involves an improperly initialized 'migrationAuth' value that could allow an eavesdropping attacker to compromise TPM key authorization values. The issue was disclosed and patched in July 2020 (GitHub Advisory).
The vulnerability stems from a flaw in the ADIP (Authorization Data Insertion Protocol) implementation where both usageAuth and migrationAuth values are encrypted with the same XOR keystream, contrary to the TPM 1.2 specification requirements. This implementation error occurs in the CreateWrapKey command processing, where the encryption of authorization values should use different nonces (nonceEven and nonceOdd) for each auth value (GitHub Advisory).
An adversary who can eavesdrop on the TPM 1.2 transport path can calculate the usageAuth for a key created with CreateWrapKey, even though this value is supposed to be encrypted. By XORing encUsageAuth and encMigrationAuth together, an attacker can derive usageAuth when migrationAuth is a known or guessed value, allowing unauthorized use of the created key (GitHub Advisory).
The vulnerability requires the ability to passively monitor TPM 1.2 transport communications. The attack can be executed by collecting encUsageAuth and encMigrationAuth values during a CreateWrapKey command, then calculating (usageAuth XOR migrationAuth) from these values. If migrationAuth is predictable (such as all 0x00 bytes), the attacker can determine the key's usageAuth (GitHub Advisory).
The vulnerability was fixed in go-tpm version 0.3.0. For TPM 1.2 users who cannot upgrade, a workaround is to call CreateWrapKey with a random 20-byte value for migrationAuth, even though that value is not used again. TPM 2.0 users are unaffected by this vulnerability (GitHub Advisory).
Source: This report was generated using AI
Free Vulnerability Assessment
Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.
Get a personalized demo
"Best User Experience I have ever seen, provides full visibility to cloud workloads."
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
"We know that if Wiz identifies something as critical, it actually is."