Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

fstec логотип

BDU:2023-01929

Опубликовано: 23 фев. 2023
Источник: fstec
CVSS3: 9.9
CVSS2: 10
EPSS Низкий

Описание

Уязвимость компилятора Cranelift (ранее Cretonne) среды выполнения для WebAssembly-приложений Wasmtime связана с выходом операции за границы буфера в памяти при определении правил линейной адресации памяти. Эксплуатация уязвимости может позволить нарушителю, действующему удаленно, выполнить произвольный код или вызвать отказ в обслуживании

Вендор

Bytecode Alliance

Наименование ПО

Wasmtime
Cranelift

Версия ПО

от 0.37.0 до 4.0.1 (Wasmtime)
5.0.0 (Wasmtime)
6.0.0 (Wasmtime)
от 0.84.0 до 0.91.1 (Cranelift)
0.93.0 (Cranelift)
0.92.0 (Cranelift)

Тип ПО

Прикладное ПО информационных систем

Операционные системы и аппаратные платформы

-

Уровень опасности уязвимости

Критический уровень опасности (базовая оценка CVSS 2.0 составляет 10)
Критический уровень опасности (базовая оценка CVSS 3.0 составляет 9,9)

Возможные меры по устранению уязвимости

Использование рекомендаций:
https://github.com/bytecodealliance/wasmtime/commit/63fb30e4b4415455d47b3da5a19d79c12f4f2d1f
https://github.com/bytecodealliance/wasmtime/security/advisories/GHSA-ff4p-7xrq-q5r8
Компенсирующие меры:
При невозможности обновить версию Wasmtime следует использовать опцию "Config::static_memory_maximum_size(0)" для включения обязательной отдельной проверки границ при любом доступе к линейной памяти (приводит к существенному снижению производительности).
Другим вариантом является использование настройки "Config::static_memory_guard_size(1 < 36)" для увеличения размера в байтах защитной области памяти (приводит к резервированию большого объёма виртуальной памяти и ограничению числа одновременно выполняемых WebAssembly-приложений).
Дополнительная информация о конфигуративных настройках доступна по ссылке:
https://docs.rs/wasmtime/latest/wasmtime/struct.Config.html#method.static_memory_guard_size

Статус уязвимости

Подтверждена производителем

Наличие эксплойта

Данные уточняются

Информация об устранении

Уязвимость устранена

Идентификаторы других систем описаний уязвимостей

EPSS

Процентиль: 84%
0.02286
Низкий

9.9 Critical

CVSS3

10 Critical

CVSS2

Связанные уязвимости

CVSS3: 9.9
nvd
почти 3 года назад

wasmtime is a fast and secure runtime for WebAssembly. In affected versions wasmtime's code generator, Cranelift, has a bug on x86_64 targets where address-mode computation mistakenly would calculate a 35-bit effective address instead of WebAssembly's defined 33-bit effective address. This bug means that, with default codegen settings, a wasm-controlled load/store operation could read/write addresses up to 35 bits away from the base of linear memory. Due to this bug, however, addresses up to `0xffffffff * 8 + 0x7ffffffc = 36507222004 = ~34G` bytes away from the base of linear memory are possible from guest code. This means that the virtual memory 6G away from the base of linear memory up to ~34G away can be read/written by a malicious module. A guest module can, without the knowledge of the embedder, read/write memory in this region. The memory may belong to other WebAssembly instances when using the pooling allocator, for example. Affected embedders are recommended to analyze preexist

CVSS3: 9.9
debian
почти 3 года назад

wasmtime is a fast and secure runtime for WebAssembly. In affected ver ...

CVSS3: 9.9
github
почти 3 года назад

wasmtime vulnerable to guest-controlled out-of-bounds read/write on x86_64

EPSS

Процентиль: 84%
0.02286
Низкий

9.9 Critical

CVSS3

10 Critical

CVSS2