CVE-2026-54912 in WebAssembly Micro Runtime
Сводка
по VulDB • 05.11.2026
WebAssembly Micro Runtime (WAMR) — это легковесный автономный WebAssembly (Wasm)-рантайм. До версии 2.4.5 двухпроходный быстрый интерпретатор-загрузчик в файле core/iwasm/interpreter/wasm_loader.c может принимать несогласованные решения относительно константной таблицы между проходом определения размеров и проходом генерации кода. После того как дубликаты констант превышают лимит слотов констант на первом проходе, функция wasm_loader_get_const_offset начинает выдавать последующие константы inline-кодом, однако сортировка и удаление дубликатов между проходами уменьшает таблицу так, что второй проход может выбирать ссылки на элементы таблицы и вызывать функцию reserve_block_ret для выдачи дополнительных операндов копирования, которые не были включены в code_compiled_peak_size. Таким образом, специально созданный модуль может заставить второй проход записывать частично контролируемые атакующим данные скомпилированного кода за пределы heap-буфера, выделенного на основе расчета размеров первого прохода во время wasm_runtime_load, до выполнения гостевого кода. Это может привести к повреждению метаданных хостового heap и детерминированному крашу процесса, вызывая отказ в обслуживании (DoS); дальнейшие последствия зависят от layout-расположения heap приложения-хоста. Затронуты сборки с включенным флагом WAMR_BUILD_FAST_INTERP=1; отключение быстрого интерпретатора устраняет уязвимый загрузчик. Эта проблема исправлена в версии 2.4.5.
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.