CVE-2026-35195

MEDIUM CVSS 4.0: 6,1 EPSS 0.01%
Обновлено 9 апреля 2026
Wasmtime
Параметр Значение
CVSS 6,1 (MEDIUM)
Устранено в версии 24.0.7
Тип уязвимости CWE-787 (Запись за пределами буфера)
Поставщик Wasmtime
Публичный эксплойт Нет

Wasmtime — это среда выполнения WebAssembly. До версий 24.0.7, 36.0.7, 42.0.2 и 43.0.1 реализация перекодирования строк между компонентами в Wasmtime содержала ошибку, из-за которой возвращаемое значение realloc гостевого компонента не проверяется до того, как хост попытается выполнить запись через указатель. Это позволяет гостю заставить хост записывать произвольные транскодированные строковые байты в произвольное место на расстоянии до 4 ГБ от базы линейной памяти.

Эти записи на хосте могут затронуть неотображенную память или повредить структуры данных хоста в зависимости от конфигурации Wasmtime. Wasmtime по умолчанию резервирует 4 ГБ виртуальной памяти для линейной памяти гостя, что означает, что эта ошибка по умолчанию на хостах приводит к тому, что хост обращается к неотображенной памяти и прерывает процесс из-за необработанной ошибки. Однако Wasmtime можно настроить так, чтобы резервировать меньше памяти для гостя и удалять все защитные страницы, поэтому некоторые конфигурации Wasmtime могут привести к повреждению данных за пределами линейной памяти гостя, таких как структуры данных хоста или линейная память других гостей.

Эта уязвимость исправлена ​​в версиях 24.0.7, 36.0.7, 42.0.2 и 43.0.1.

Показать оригинальное описание (EN)

Wasmtime is a runtime for WebAssembly. Prior to 24.0.7, 36.0.7, 42.0.2, and 43.0.1, Wasmtime's implementation of transcoding strings between components contains a bug where the return value of a guest component's realloc is not validated before the host attempts to write through the pointer. This enables a guest to cause the host to write arbitrary transcoded string bytes to an arbitrary location up to 4GiB away from the base of linear memory. These writes on the host could hit unmapped memory or could corrupt host data structures depending on Wasmtime's configuration. Wasmtime by default reserves 4GiB of virtual memory for a guest's linear memory meaning that this bug will by default on hosts cause the host to hit unmapped memory and abort the process due to an unhandled fault. Wasmtime can be configured, however, to reserve less memory for a guest and to remove all guard pages, so some configurations of Wasmtime may lead to corruption of data outside of a guest's linear memory, such as host data structures or other guests's linear memories. This vulnerability is fixed in 24.0.7, 36.0.7, 42.0.2, and 43.0.1.

Характеристики атаки

Способ атаки
По сети
Атака возможна удалённо
Сложность
Низкая
Легко эксплуатировать
Условия для атаки
Требуются
Нужны дополнительные условия
Нужны права
Низкие
Нужны базовые права
Участие пользователя
Не требуется
Не нужно действие пользователя

Последствия

Конфиденциальность
Низкое
Частичная утечка данных
Целостность
Низкое
Частичная модификация данных
Доступность
Высокое
Полный отказ в обслуживании

Строка CVSS v4.0