GHSA-jf66-3q76-h5p5

Suggest an improvement
Source
https://github.com/advisories/GHSA-jf66-3q76-h5p5
Import Source
https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2022/05/GHSA-jf66-3q76-h5p5/GHSA-jf66-3q76-h5p5.json
JSON Data
https://api.test.osv.dev/v1/vulns/GHSA-jf66-3q76-h5p5
Aliases
Published
2022-05-05T15:59:35Z
Modified
2024-09-24T21:22:44.458643Z
Severity
  • 9.1 (Critical) CVSS_V3 - CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N CVSS Calculator
  • 9.3 (Critical) CVSS_V4 - CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N CVSS Calculator
Summary
Tenant and Verifier might not use the same registrar data
Details

Keylime does not enforce that the agent registrar data is the same when the tenant uses it for validation of the EK and identity quote and the verifier for validating the integrity quote. This allows an attacker to use one AK, EK pair from a real TPM to pass EK validation and give the verifier an AK of a software TPM. A successful attack breaks the entire chain of trust because a not validated AK is used by the verifier. This issue is worse if the validation happens first and then the agent gets added to the verifier because the timing is easier and the verifier does not validate the regcount entry being equal to 1. At this time, there are no known workaround.

Database specific
{
    "nvd_published_at": "2022-05-06T17:15:00Z",
    "cwe_ids": [
        "CWE-20"
    ],
    "severity": "CRITICAL",
    "github_reviewed": true,
    "github_reviewed_at": "2022-05-05T15:59:35Z"
}
References

Affected packages

PyPI / keylime

Package

Affected ranges

Type
ECOSYSTEM
Events
Introduced
0Unknown introduced version / All previous versions are affected
Fixed
6.4.0

Affected versions

6.*

6.3.1
6.3.2

Ecosystem specific

{
    "affected_functions": [
        "keylime.cloud_verifier_tornado.AgentsHandler.post",
        "keylime.tenant.Tenant.do_cv"
    ]
}