Mozilla Foundation Security Advisory 2024-18

Security Vulnerabilities fixed in Firefox 125

Announced
April 16, 2024
Impact
high
Products
Firefox
Fixed in
  • Firefox 125

This advisory was updated June 11, 2024 to add XXX which was included in the original release of Firefox 125, but did not appear in the advisory published at that time.

#CVE-2024-3852: GetBoundName in the JIT returned the wrong object

Reporter
Logan Stratton
Impact
high
Description

GetBoundName could return the wrong version of an object when JIT optimizations were applied.

References

#CVE-2024-5702: Use-after-free in networking

Reporter
Kershaw Chang
Impact
high
Description

Memory corruption in the networking stack could have led to a potentially exploitable crash.

References

#CVE-2024-3853: Use-after-free if garbage collection runs during realm initialization

Reporter
Gary Kwong
Impact
high
Description

A use-after-free could result if a JavaScript realm was in the process of being initialized when a garbage collection started.

References

#CVE-2024-3854: Out-of-bounds-read after mis-optimized switch statement

Reporter
Lukas Bernhard
Impact
high
Description

In some code patterns the JIT incorrectly optimized switch statements and generated code with out-of-bounds-reads.

References

#CVE-2024-3855: Incorrect JIT optimization of MSubstr leads to out-of-bounds reads

Reporter
Lukas Bernhard
Impact
high
Description

In certain cases the JIT incorrectly optimized MSubstr operations, which led to out-of-bounds reads.

References

#CVE-2024-3856: Use-after-free in WASM garbage collection

Reporter
Nan Wang
Impact
high
Description

A use-after-free could occur during WASM execution if garbage collection ran during the creation of an array.

References

#CVE-2024-3857: Incorrect JITting of arguments led to use-after-free during garbage collection

Reporter
Lukas Bernhard
Impact
high
Description

The JIT created incorrect code for arguments in certain cases. This led to potential use-after-free crashes during garbage collection.

References

#CVE-2024-3858: Corrupt pointer dereference in js::CheckTracedThing<js::Shape>

Reporter
Lukas Bernhard
Impact
high
Description

It was possible to mutate a JavaScript object so that the JIT could crash while tracing it.

References

#CVE-2024-3859: Integer-overflow led to out-of-bounds-read in the OpenType sanitizer

Reporter
Ronald Crane
Impact
moderate
Description

On 32-bit versions there were integer-overflows that led to an out-of-bounds-read that potentially could be triggered by a malformed OpenType font.

References

#CVE-2024-3860: Crash when tracing empty shape lists

Reporter
Gary Kwong
Impact
moderate
Description

An out-of-memory condition during object initialization could result in an empty shape list. If the JIT subsequently traced the object it would crash.

References

#CVE-2024-3861: Potential use-after-free due to AlignedBuffer self-move

Reporter
Ronald Crane
Impact
moderate
Description

If an AlignedBuffer were assigned to itself, the subsequent self-move could result in an incorrect reference count and later use-after-free.

References

#CVE-2024-3862: Potential use of uninitialized memory in MarkStack assignment operator on self-assignment

Reporter
Ronald Crane
Impact
moderate
Description

The MarkStack assignment operator, part of the JavaScript engine, could access uninitialized memory if it were used in a self-assignment.

References

#CVE-2024-3863: Download Protections were bypassed by .xrm-ms files on Windows

Reporter
Eduardo Braun Prado working with Trend Micro Zero Day Initiative
Impact
moderate
Description

The executable file warning was not presented when downloading .xrm-ms files.
Note: This issue only affected Windows operating systems. Other operating systems are unaffected.

References

#CVE-2024-3302: Denial of Service using HTTP/2 CONTINUATION frames

Reporter
Bartek Nowotarski via CERT
Impact
low
Description

There was no limit to the number of HTTP/2 CONTINUATION frames that would be processed. A server could abuse this to create an Out of Memory condition in the browser.

References

#CVE-2024-3864: Memory safety bug fixed in Firefox 125, Firefox ESR 115.10, and Thunderbird 115.10

Reporter
Paul Bone
Impact
high
Description

Memory safety bug present in Firefox 124, Firefox ESR 115.9, and Thunderbird 115.9. This bug showed evidence of memory corruption and we presume that with enough effort this could have been exploited to run arbitrary code.

References

#CVE-2024-3865: Memory safety bugs fixed in Firefox 125

Reporter
the Mozilla Fuzzing Team, Simon Friedberger, Andrew McCreight
Impact
high
Description

Memory safety bugs present in Firefox 124. Some of these bugs showed evidence of memory corruption and we presume that with enough effort some of these could have been exploited to run arbitrary code.

References