Rocq proof checker can accept false proofs after a module closes
The Rocq proof assistant, used to check math and software proofs, can be tricked into accepting a proof of a false statement such as 0 = 1. This means a 'verified' proof may be wrong without any warning.
| Severity | HighCVSS 6.8 of 10 |
|---|---|
| Being exploited? | UnclearNo reports either way yet |
| Fix available? | Not yetUse the workaround below until a patch ships |
| How sure is this? | Official, 3 sourcesBacked by an official source |
How the attack works simplified
- 1Module disables checkLocal Unset Universe Checking used inside a module
- 2Module closesGlobal flag restored, universe graph copy left disabled
- 3Kernel accepts bad termsUniverse constraints no longer enforced
- 4Proof of False derivedHurkens' paradox yields 0 = 1
- ResultFalse proofs accepted as valid
What happened
After a module that locally disabled universe checking is closed, the universe graph keeps its own copy of the flag set to disabled, while the global flag is restored. The kernel then accepts universe-inconsistent terms, which lets Hurkens' paradox yield a proof of False.
Are you affected?
You are affected if you use the Rocq Prover (formerly Coq) and your development contains modules that use Local Unset Universe Checking.
Rocq Prover (formerly Coq); exact affected versions unknown.
What to do
- Avoid using Local Unset Universe Checking inside modules until a fix is released
- Check the Rocq project and GitHub advisory GHSA-95gm-3748-rx8v for an updated version and apply it when available
- Re-verify important proofs with an independent checker or review results that depend on modules disabling universe checking
Timeline
- 24 Aug 2026, 20:17 UTCPublicly disclosed
- 26 Oct 2026, 00:21 UTCReported by oss-security · oss-security
- 26 Oct 2026, 00:31 UTCPicked up by Zero Radar
- 26 Oct 2026, 02:23 UTCNVD reported on it · NVD
- 26 Oct 2026, 02:37 UTCGitHub Advisory reported on it · GitHub Advisory
Sources 3 reports, oldest first
Official vendor, government CERT or advisory database
- CVE-2026-72714NVD · 24 Aug 2026, 20:17 UTC
- Rocq Prover does not restore the universe graph's copy of the universe checking flag when a...GitHub Advisory · 24 Aug 2026, 21:33 UTC
Security researchers research teams and mailing lists
- CVE-2026-72714: Rocq universe checking state desynchronised after module close (0 = 1 demonstrated) — 0-dayoss-security · 26 Oct 2026, 00:21 UTC
Technical details
- ID
- CVE-2026-72714 · GHSA-95gm-3748-rx8v
- CVSS
- 6.8 / 10
- EPSS
- 0.2% chance of exploitation within 30 days
- Disclosed
- 24 Aug 2026, 20:17 UTC
- On Zero Radar
- 26 Oct 2026, 00:31 UTC (62 days after disclosure)
- Last change
- 26 Oct 2026, 02:37 UTC
The plain-language parts and the attack diagram were written by an AI model (anthropic/claude-haiku-5.5) from the sources above. Facts like versions, exploitation and dates come from the sources themselves. How Zero Radar works