Mozilla Foundation Security Advisory 2022-47

Security Vulnerabilities fixed in Firefox 107

Announced
November 15, 2022
Impact
high
Products
Firefox
Fixed in
  • Firefox 107

This advisory was updated December 13, 2022 to add CVE-2022-46882 and CVE-2022-46883. Both fixes were included in the original release of Firefox 107, but did not appear in the advisory published at that time.

#CVE-2022-45403: Service Workers might have learned size of cross-origin media files

Reporter
Anne van Kesteren and Karl Tomlinson
Impact
high
Description

Service Workers should not be able to infer information about opaque cross-origin responses; but timing information for cross-origin media combined with Range requests might have allowed them to determine the presence or length of a media file.

References

#CVE-2022-45404: Fullscreen notification bypass

Reporter
Irvan Kurniawan
Impact
high
Description

Through a series of popup and window.print() calls, an attacker can cause a window to go fullscreen without the user seeing the notification prompt, resulting in potential user confusion or spoofing attacks.

References

#CVE-2022-45405: Use-after-free in InputStream implementation

Reporter
Atte Kettunen
Impact
high
Description

Freeing arbitrary nsIInputStream's on a different thread than creation could have led to a use-after-free and potentially exploitable crash.

References

#CVE-2022-45406: Use-after-free of a JavaScript Realm

Reporter
Samuel Groß
Impact
high
Description

If an out-of-memory condition occurred when creating a JavaScript global, a JavaScript realm may be deleted while references to it lived on in a BaseShape. This could lead to a use-after-free causing a potentially exploitable crash.

References

#CVE-2022-45407: Loading fonts on workers was not thread-safe

Reporter
Armin Ebert
Impact
high
Description

If an attacker loaded a font using FontFace() on a background worker, a use-after-free could have occurred, leading to a potentially exploitable crash.

References

#CVE-2022-45408: Fullscreen notification bypass via windowName

Reporter
Irvan Kurniawan
Impact
high
Description

Through a series of popups that reuse windowName, an attacker can cause a window to go fullscreen without the user seeing the notification prompt, resulting in potential user confusion or spoofing attacks.

References

#CVE-2022-45409: Use-after-free in Garbage Collection

Reporter
Gary Kwong
Impact
high
Description

The garbage collector could have been aborted in several states and zones and GCRuntime::finishCollection may not have been called, leading to a use-after-free and potentially exploitable crash

References

#CVE-2022-45410: ServiceWorker-intercepted requests bypassed SameSite cookie policy

Reporter
Dongsung Kim
Impact
moderate
Description

When a ServiceWorker intercepted a request with FetchEvent, the origin of the request was lost after the ServiceWorker took ownership of it. This had the effect of negating SameSite cookie protections. This was addressed in the spec and then in browsers.

References

#CVE-2022-45411: Cross-Site Tracing was possible via non-standard override headers

Reporter
scarlet
Impact
moderate
Description

Cross-Site Tracing occurs when a server will echo a request back via the Trace method, allowing an XSS attack to access to authorization headers and cookies inaccessible to JavaScript (such as cookies protected by HTTPOnly). To mitigate this attack, browsers placed limits on fetch() and XMLHttpRequest; however some webservers have implemented non-standard headers such as X-Http-Method-Override that override the HTTP method, and made this attack possible again. Firefox has applied the same mitigations to the use of this and similar headers.

References

#CVE-2022-45412: Symlinks may resolve to partially uninitialized buffers

Reporter
Armin Ebert
Impact
moderate
Description

When resolving a symlink such as file:///proc/self/fd/1, an error message may be produced where the symlink was resolved to a string containing unitialized memory in the buffer.
This bug only affects Firefox on Unix-based operated systems (Android, Linux, MacOS). Windows is unaffected.

References

#CVE-2022-45413: SameSite=Strict cookies could have been sent cross-site via intent URLs

Reporter
Axel Chong
Impact
moderate
Description

Using the S.browser_fallback_url parameter parameter, an attacker could redirect a user to a URL and cause SameSite=Strict cookies to be sent.
This issue only affects Firefox for Android. Other operating systems are not affected.

References

#CVE-2022-40674: Use-after-free vulnerability in expat

Reporter
Rhodri James
Impact
moderate
Description

A flaw in XML parsing could have led to a use-after-free causing a potentially exploitable crash.
In official releases of Firefox this vulnerability is mitigated by wasm sandboxing; versions managed by Linux distributions may have other settings.

References

#CVE-2022-45415: Downloaded file may have been saved with malicious extension

Reporter
Jefferson Scher and Jayateertha Guruprasad
Impact
moderate
Description

When downloading an HTML file, if the title of the page was formatted as a filename with a malicious extension, Firefox may have saved the file with that extension, leading to possible system compromise if the downloaded file was later ran.

References

#CVE-2022-45416: Keystroke Side-Channel Leakage

Reporter
Erik Kraft, Martin Schwarzl, and Andrew McCreight
Impact
moderate
Description

Keyboard events reference strings like "KeyA" that were at fixed, known, and widely-spread addresses. Cache-based timing attacks such as Prime+Probe could have possibly figured out which keys were being pressed.

References

#CVE-2022-45417: Service Workers in Private Browsing Mode may have been written to disk

Reporter
Kagami
Impact
moderate
Description

Service Workers did not detect Private Browsing Mode correctly in all cases, which could have led to Service Workers being written to disk for websites visited in Private Browsing Mode. This would not have persisted them in a state where they would run again, but it would have leaked Private Browsing Mode details to disk.

References

#CVE-2022-45418: Custom mouse cursor could have been drawn over browser UI

Reporter
Hafiizh
Impact
moderate
Description

If a custom mouse cursor is specified in CSS, under certain circumstances the cursor could have been drawn over the browser UI, resulting in potential user confusion or spoofing attacks.

References

#CVE-2022-46882: Use-after-free in WebGL

Reporter
Irvan Kurniawan
Impact
moderate
Description

A use-after-free in WebGL extensions could have led to a potentially exploitable crash.
Note: This advisory was added on December 13th, 2022 after we better understood the impact of the issue. The fix was included in the original release of Firefox 107.

References

#CVE-2022-45419: Deleting a security exception did not take effect immediately

Reporter
Ronald Crane
Impact
low
Description

If the user added a security exception for an invalid TLS certificate, opened an ongoing TLS connection with a server that used that certificate, and then deleted the exception, Firefox would have kept the connection alive, making it seem like the certificate was still trusted.

References

#CVE-2022-45420: Iframe contents could be rendered outside the iframe

Reporter
Suhwan Song of SNU CompSec Lab
Impact
low
Description

Using tables inside of an iframe, an attacker could have caused iframe contents to be rendered outside the boundaries of the iframe, resulting in potential user confusion or spoofing attacks.

References

#CVE-2022-45421: Memory safety bugs fixed in Firefox 107 and Firefox ESR 102.5

Reporter
Mozilla developers
Impact
high
Description

Mozilla developers Andrew McCreight and Gabriele Svelto reported memory safety bugs present in Firefox 106 and Firefox ESR 102.4. 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

#CVE-2022-46883: Memory safety bugs fixed in Firefox 107

Reporter
Mozilla developers
Impact
high
Description

Mozilla developers Gabriele Svelto, Yulia Startsev, Andrew McCreight and the Mozilla Fuzzing Team reported memory safety bugs present in Firefox 106. 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.
Note: This advisory was added on December 13th, 2022 after discovering it was inadvertently left out of the original advisory. The fix was included in the original release of Firefox 107.

References