Read the docs
TI-2026-51070 Aliases CVE-2026-72844GHSA-4fhc-8rq3-cjvg

Lean 4 Kernel Type Checking Bypass via Mismatched Structure Projections

Priority MEDIUM 63CWE-843Published · Updated

Key facts

Attack vector
Local
Privileges required
None
User interaction
Passive
Attack complexity
Low
Attack requirements
None
Impact type
—
Confidentiality · integrity · availability
None · High · None
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA.

Summary

The Lean 4 kernel does not verify that the structure named in a projection expression matches the type of the value being projected, and environment::add_inductive in src/kernel/inductive.cpp did not type check the nested inductive applications that are replaced by auxiliary types, so their parametric arguments escaped checking. A metaprogram running in the Lean process can register an ill-typed nested inductive whose constructor applies a .proj C 0 projection to a value of the unrelated type W, and the kernel admits the declaration through the ordinary checked addDecl path at maximum kernel checking, without sorry, unsafeCast, debug.skipKernelTC, addDeclWithoutChecking, FFI, or a modified .olean file. The result is a type confusion yielding a proof of False that carries no axioms, from which any proposition can be derived. The published proof of concept additionally pads two expressions until their hashes and approximate depths collide, which defeats kernel caching; that is the technique used to reach the flaw, not its cause. Exploitation requires running a metaprogram in-process, for example by building a project or importing a malicious Lake dependency.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00187 8th percentileScored 2026-11-07
Public exploit Yes 2 exploit referencesTagged by the CNA
Fix Fixed lean4 (leanprover): 4.32.2

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
leanproverlean4before 4.32.2; 4.33.0-rc14.32.2Patch availableCNA
  • lean4 Vendorleanprover Affected before 4.32.2; 4.33.0-rc1 Fixed in 4.32.2 Patch available CNA

Remediation

  • Fix · CNA lean4 (leanprover) Fixed in 4.32.2

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-72844
  2. 2026-10-03 Alias added: GHSA-4fhc-8rq3-cjvg

References

  • TI-2026-50947 Lean 4 before 4.32.2 Kernel Accepts Opaque Declaration With an Unbound Free Variable CVSS 4.0MEDIUM 6.8
  • TI-2026-25224 XSS in @leanprover/unicode-input-component CVSS 4.0N/A 0.0

Sources