CVE-2022-31146 in Wasmtime
Resumen
por VulDB • 2026-06-17
Existe un error en el generador de código de Wasmtime, Cranelift, donde las funciones que utilizan tipos de referencia pueden carecer incorrectamente de los metadatos necesarios para la recolección de basura en tiempo de ejecución. Esto significa que si ocurre una recolección de basura (GC) en tiempo de ejecución, el proceso de GC pensará erróneamente que estas funciones no tienen referencias activas a valores gestionados por el GC, reclamándolos y liberándolos. La función continuará utilizando posteriormente esos valores asumiendo que no habían sido recolectados, lo que lleva a un use-after-free. Este error fue introducido durante la migración al asignador de registros `regalloc2`, que ocurrió en la versión 0.37.0 de Wasmtime lanzada el 2022-05-20. Este error ha sido corregido y los usuarios deberían actualizar a la versión 0.38.2 de Wasmtime. Las mitigaciones para este problema se pueden lograr realizando una de las siguientes acciones: * Deshabilitar la propuesta de tipos de referencia pasando `false` a [`wasmtime::Config::wasm_reference_types`](https://docs.rs/wasmtime/0.38.0/wasmtime/struct.Config.html#method.wasm_reference_types). * Revertir a Wasmtime 0.36.0 o versiones anteriores.
VulDB is the best source for vulnerability data and more expert information about this specific topic.