pyca/cryptography · Security
PyCA Cryptography vulnerable to GCM tag forgery
- GHSA ID
- GHSA-fcf9-3qw3-gxmj
- CVE ID
- CVE-2018-10903
- Severity
- high
- Published
- Updated
- CVSS
- 7.5 · CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- CVSS v3
- 7.5 · CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
- CVSS v4
- 8.7 · CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Description
A flaw was found in python-cryptography versions between >=1.9.0 and <2.3. The finalize_with_tag API did not enforce a minimum tag length. If a user did not validate the input length prior to passing it to finalize_with_tag an attacker could craft an invalid payload with a shortened tag (e.g. 1 byte) such that they would have a 1 in 256 chance of passing the MAC check. GCM tag forgeries can cause key leakage.
CWEs
- CWE-20 · Improper Input Validation
References
- https://nvd.nist.gov/vuln/detail/CVE-2018-10903 ↗
- https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2018-10903 ↗
- https://github.com/pyca/cryptography/pull/4342 ↗
- https://github.com/pyca/cryptography/commit/d4378e42937b56f473ddade2667f919ce32208cb ↗
- https://access.redhat.com/errata/RHSA-2018:3600 ↗
- https://github.com/advisories/GHSA-fcf9-3qw3-gxmj ↗
- https://github.com/pypa/advisory-database/tree/main/vulns/cryptography/PYSEC-2018-52.yaml ↗
- https://usn.ubuntu.com/3720-1 ↗