Skip to content

Observable Timing Discrepancy in pypqc

High severity GitHub Reviewed Published Jun 4, 2024 in JamesTheAwesomeDude/pypqc • Updated Jun 5, 2024

Package

pip pypqc (pip)

Affected versions

>= 0.0.4, <= 0.0.6.2

Patched versions

None

Description

Impact

kyber512, kyber768, and kyber1024 on Mac OS (or when compiled with clang) only: An attacker able to submit many decapsulation requests against a single private key, and to gain timing information about the decapsulation, could recover the private key. Proof-of-concept exploit exists for a local attacker.

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N/E:P/RL:U/RC:C

Patches

No patch is currently available / pending upstream PQClean#556.

Workarounds

No workarounds have been reported. The 0.0.7 -> 0.0.7.1 upgrade, when available, should be a drop-in replacement.

References

https://pqshield.com/pqshield-plugs-timing-leaks-in-kyber-ml-kem-to-improve-pqc-implementation-maturity/

https://github.com/antoonpurnal/clangover

https://www.github.com/PQClean/PQClean/issues/556

https://www.github.com/pq-crystals/kyber/commit/9b8d30698a3e7449aeb34e62339d4176f11e3c6c

References

Published to the GitHub Advisory Database Jun 5, 2024
Reviewed Jun 5, 2024
Last updated Jun 5, 2024

Severity

High
7.8
/ 10

CVSS base metrics

Attack vector
Network
Attack complexity
Low
Privileges required
None
User interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
Low
Availability
None
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:L/A:N/E:P/RL:U/RC:C

CVE ID

No known CVE

GHSA ID

GHSA-hvh4-5qr6-3v7r

Credits

Checking history
See something to contribute? Suggest improvements for this vulnerability.