Google · Go-Tpm · CVE-2020-8918
**Nome do software vulnerável e versões afetadas**
Versões do go-tpm anteriores à 0.3.0
**Descrição**
O problema decorre de um valor ‘migrationAuth’ inicializado incorretamente na biblioteca go-tpm, permitindo que um invasor que esteja interceptando a comunicação descubra o valor de autenticação de uma chave criada com CreateWrapKey. Isso se deve ao uso repetido de uma chave XOR, permitindo que o invasor calcule `usageAuth` para chaves criadas usando CreateWrapKey, apesar de estarem criptografadas. O invasor pode coletar tanto `encUsageAuth` quanto `encMigrationAuth` e, em seguida, calcular `usageAuth ^ encMigrationAuth`, já que o `migrationAuth` pode ser adivinhado para todas as chaves criadas com CreateWrapKey. Usuários do TPM 2.0 não são afetados por este problema.
**Recomendações**
Para versões do go-tpm anteriores à 0.3.0, atualize a biblioteca para a versão 0.3.0 ou posterior.
Como solução alternativa temporária, considere chamar CreateWrapKey com um valor aleatório de 20 bytes para `migrationAuth`, mesmo que esse valor não seja usado novamente, e não armazene nem registre esse valor.