Your submission was sent successfully! Close

You have successfully unsubscribed! Close

Thank you for signing up for our newsletter!
In these regular emails you will find the latest updates about Ubuntu and upcoming events where you can meet our team.Close

CVE-2022-31146

Published: 21 July 2022

Wasmtime is a standalone runtime for WebAssembly. There is a bug in the Wasmtime's code generator, Cranelift, where functions using reference types may be incorrectly missing metadata required for runtime garbage collection. This means that if a GC happens at runtime then the GC pass will mistakenly think these functions do not have live references to GC'd values, reclaiming them and deallocating them. The function will then subsequently continue to use the values assuming they had not been GC'd, leading later to a use-after-free. This bug was introduced in the migration to the `regalloc2` register allocator that occurred in the Wasmtime 0.37.0 release on 2022-05-20. This bug has been patched and users should upgrade to Wasmtime version 0.38.2. Mitigations for this issue can be achieved by disabling the reference types proposal by passing `false` to `wasmtime::Config::wasm_reference_types` or downgrading to Wasmtime 0.36.0 or prior.

Notes

AuthorNote
tyhicks
mozjs contains a copy of the SpiderMonkey JavaScript engine
mdeslaur
starting with Ubuntu 22.04, the firefox package is just a script
that installs the Firefox snap
rodrigo-zaiden
cranelift, the wasmtime code generator is included in
firefox, thunderbird and mozjs families.

Priority

Medium

Cvss 3 Severity Score

8.8

Score breakdown

Status

Package Release Status
firefox
Launchpad, Ubuntu, Debian
bionic Ignored
(end of standard support, was needed)
focal Ignored
(bundled deps handled by upstream in new versions)
jammy Not vulnerable
(code not present)
kinetic Not vulnerable
(code not present)
lunar Not vulnerable
(code not present)
mantic Not vulnerable
(code not present)
trusty Does not exist

upstream Needs triage

xenial Ignored
(end of standard support)
mozjs38
Launchpad, Ubuntu, Debian
bionic Needs triage

focal Does not exist

jammy Does not exist

kinetic Does not exist

lunar Does not exist

mantic Does not exist

trusty Does not exist

upstream Needs triage

xenial Does not exist

mozjs52
Launchpad, Ubuntu, Debian
bionic Needs triage

focal Needs triage

jammy Does not exist

kinetic Does not exist

lunar Does not exist

mantic Does not exist

trusty Does not exist

upstream Needs triage

xenial Does not exist

mozjs68
Launchpad, Ubuntu, Debian
bionic Does not exist

focal Needs triage

jammy Does not exist

kinetic Does not exist

lunar Does not exist

mantic Does not exist

trusty Does not exist

upstream Needs triage

xenial Does not exist

mozjs78
Launchpad, Ubuntu, Debian
bionic Does not exist

focal Does not exist

jammy Needs triage

kinetic Ignored
(end of life, was needs-triage)
lunar Ignored
(end of life, was needs-triage)
mantic Does not exist

trusty Does not exist

upstream Needs triage

xenial Does not exist

mozjs91
Launchpad, Ubuntu, Debian
bionic Does not exist

focal Does not exist

jammy Needs triage

kinetic Does not exist

lunar Does not exist

mantic Does not exist

trusty Does not exist

upstream Needs triage

xenial Does not exist

thunderbird
Launchpad, Ubuntu, Debian
bionic Ignored
(end of standard support, was needed)
focal Ignored
(bundled deps handled by upstream in new versions)
jammy Ignored
(bundled deps handled by upstream in new versions)
kinetic Ignored
(end of life, was needed)
lunar Ignored
(end of life, was ignored [bundled deps handled by upstream in new versions])
mantic Ignored
(bundled deps handled by upstream in new versions)
trusty Does not exist

upstream Needs triage

xenial Ignored
(end of standard support)

Severity score breakdown

Parameter Value
Base score 8.8
Attack vector Network
Attack complexity Low
Privileges required Low
User interaction None
Scope Unchanged
Confidentiality High
Integrity impact High
Availability impact High
Vector CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H