CVE-2026-72711
Lean 4 anterior a 4.32.2 Kernel acepta una declaración opaca con una variable libre no vinculada
- Publicado
- 24 ago 2026
- Actualizado
- 26 oct 2026
- Asignación de CNA
- VulnCheck
- Evidencia observada
- 26 oct 2026
CVSS primario
nvd · CVSS 4.0
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:XBajo · próximos 30 días
- Percentil
- 7,1 %
- Fecha del modelo
- 27 oct 2026
EPSS es una estimación estadística, no una certeza o una medida de impacto. Combínelo con CVSS, estado KEV, exposición y su entorno.
Resumen
El kernel de Lean 4 no verifica que el cuerpo de una declaración opaca esté cerrado. environment::add_opaque omite la llamada a check_no_metavar_no_fvar que realizan las rutas de definición y teorema, por lo que un valor que contiene una variable libre que está ausente del contexto local no es rechazado de inmediato. Un metaprograma puede primero hacer que el kernel cree una variable local temporal de tipo False y registre su tipo en la caché de inferencia del verificador de tipos, luego restaurar el contexto local mientras esa entrada de caché persiste en la misma instancia del verificador de tipos, y finalmente enviar una declaración opaca cuyo valor es la variable ahora desvinculada. La búsqueda en caché responde antes de la rama que probaría la pertenencia al contexto local, por lo que el kernel infiere el tipo en caché y admite una constante opaca de tipo False, de la cual se sigue cualquier proposición. La declaración es aceptada a través de la ruta verificada ordinaria con la máxima verificación del kernel, sin sorry, unsafeCast, debug.skipKernelTC, addDeclWithoutChecking, código externo o un archivo .olean modificado, y el resultado no conlleva axiomas. Corregido en 4.32.2 al añadir la verificación de cierre faltante.
Fuentes
CVE-2026-72711 — Error de solidez del kernel de Lean 4: envenenamiento de la caché de inferencia
Uso responsable
Utilice información sobre vulnerabilidades solo en sistemas de su propiedad o que esté autorizado a probar. Kitploit enlaza con metadatos de investigación pública y no almacena código de explotación ni cargas útiles maliciosas.