Mozilla Foundation Security Advisory 2018-02

Security vulnerabilities fixed in Firefox 58

Announced
January 23, 2018
Impact
critical
Products
Firefox
Fixed in
  • Firefox 58

#CVE-2018-5091: Use-after-free with DTMF timers

Reporter
Looben Yang
Impact
critical
Description

A use-after-free vulnerability can occur during WebRTC connections when interacting with the DTMF timers. This results in a potentially exploitable crash.

References

#CVE-2018-5092: Use-after-free in Web Workers

Reporter
Looben Yang
Impact
high
Description

A use-after-free vulnerability can occur when the thread for a Web Worker is freed from memory prematurely instead of from memory in the main thread while cancelling fetch operations.

References

#CVE-2018-5093: Buffer overflow in WebAssembly during Memory/Table resizing

Reporter
OSS-Fuzz
Impact
high
Description

A heap buffer overflow vulnerability may occur in WebAssembly during Memory/Table resizing, resulting in a potentially exploitable crash.

References

#CVE-2018-5094: Buffer overflow in WebAssembly with garbage collection on uninitialized memory

Reporter
OSS-Fuzz
Impact
high
Description

A heap buffer overflow vulnerability may occur in WebAssembly when shrinkElements is called followed by garbage collection on memory that is now uninitialized. This results in a potentially exploitable crash.

References

#CVE-2018-5095: Integer overflow in Skia library during edge builder allocation

Reporter
Anonymous
Impact
high
Description

An integer overflow vulnerability in the Skia library when allocating memory for edge builders on some systems with at least 8 GB of RAM. This results in the use of uninitialized memory, resulting in a potentially exploitable crash.

References

#CVE-2018-5097: Use-after-free when source document is manipulated during XSLT

Reporter
Nils
Impact
high
Description

A use-after-free vulnerability can occur during XSL transformations when the source document for the transformation is manipulated by script content during the transformation. This results in a potentially exploitable crash.

References

#CVE-2018-5098: Use-after-free while manipulating form input elements

Reporter
Nils
Impact
high
Description

A use-after-free vulnerability can occur when form input elements, focus, and selections are manipulated by script content. This results in a potentially exploitable crash.

References

#CVE-2018-5099: Use-after-free with widget listener

Reporter
Nils
Impact
high
Description

A use-after-free vulnerability can occur when the widget listener is holding strong references to browser objects that have previously been freed, resulting in a potentially exploitable crash when these references are used.

References

#CVE-2018-5100: Use-after-free when IsPotentiallyScrollable arguments are freed from memory

Reporter
Nils
Impact
high
Description

A use-after-free vulnerability can occur when arguments passed to the IsPotentiallyScrollable function are freed while still in use by scripts. This results in a potentially exploitable crash.

References

#CVE-2018-5101: Use-after-free with floating first-letter style elements

Reporter
Nils
Impact
high
Description

A use-after-free vulnerability can occur when manipulating floating first-letter style elements, resulting in a potentially exploitable crash.

References

#CVE-2018-5102: Use-after-free in HTML media elements

Reporter
Nils
Impact
high
Description

A use-after-free vulnerability can occur when manipulating HTML media elements with media streams, resulting in a potentially exploitable crash.

References

#CVE-2018-5103: Use-after-free during mouse event handling

Reporter
Nils
Impact
high
Description

A use-after-free vulnerability can occur during mouse event handling due to issues with multiprocess support. This results in a potentially exploitable crash.

References

#CVE-2018-5104: Use-after-free during font face manipulation

Reporter
Nils
Impact
high
Description

A use-after-free vulnerability can occur during font face manipulation when a font face is freed while still in use, resulting in a potentially exploitable crash.

References

#CVE-2018-5105: WebExtensions can save and execute files on local file system without user prompts

Reporter
Rob Wu
Impact
high
Description

WebExtensions can bypass user prompts to first save and then open an arbitrarily downloaded file. This can result in an executable file running with local user privileges without explicit user consent.

References

#CVE-2018-5106: Developer Tools can expose style editor information cross-origin through service worker

Reporter
Jun Kokatsu
Impact
moderate
Description

Style editor traffic in the Developer Tools can be routed through a service worker hosted on a third party website if a user selects error links when these tools are open. This can allow style editor information used within Developer Tools to leak cross-origin.

References

#CVE-2018-5107: Printing process will follow symlinks for local file access

Reporter
Alex Gaynor
Impact
moderate
Description

The printing process can bypass local access protections to read files available through symlinks, bypassing local file restrictions. The printing process requires files in a specific format so arbitrary data cannot be read but it is possible that some local file information could be exposed.

References

#CVE-2018-5108: Manually entered blob URL can be accessed by subsequent private browsing tabs

Reporter
Andrea Marchesini
Impact
moderate
Description

A Blob URL can violate origin attribute segregation, allowing it to be accessed from a private browsing tab and for data to be passed between the private browsing tab and a normal tab. This could allow for the leaking of private information specific to the private browsing context. This issue is mitigated by the requirement that the user enter the Blob URL manually in order for the access violation to occur.

References

#CVE-2018-5109: Audio capture prompts and starts with incorrect origin attribution

Reporter
Andreas Pehrson
Impact
moderate
Description

An audio capture session can started under an incorrect origin from the site making the capture request. Users are still prompted to allow the request but the prompt can display the wrong origin, leading to user confusion about which site is making the request to capture an audio stream.

References

#CVE-2018-5110: Cursor can be made invisible on OS X

Reporter
Ron Warholic
Impact
moderate
Description

If cursor visibility is toggled by script using from 'none' to an image and back through script, the cursor will be rendered temporarily invisible within Firefox.
Note: This vulnerability only affects OS X. Other operating systems are not affected.

References

#CVE-2018-5111: URL spoofing in addressbar through drag and drop

Reporter
Mario Gomes
Impact
moderate
Description

When the text of a specially formatted URL is dragged to the addressbar from page content, the displayed URL can be spoofed to show a different site than the one loaded. This allows for phishing attacks where a malicious page can spoof the identify of another site.

References

#CVE-2018-5112: Extension development tools panel can open a non-relative URL in the panel

Reporter
Abdulrahman Alqabandi
Impact
moderate
Description

Development Tools panels of an extension are required to load URLs for the panels as relative URLs from the extension manifest file but this requirement was not enforced in all instances. This could allow the development tools panel for the extension to load a URL that it should not be able to access, including potentially privileged pages.

References

#CVE-2018-5113: WebExtensions can load non-HTTPS pages with browser.identity.launchWebAuthFlow

Reporter
Abdulrahman Alqabandi
Impact
moderate
Description

The browser.identity.launchWebAuthFlow function of WebExtensions is only allowed to load content over https: but this requirement was not properly enforced. This can potentially allow privileged pages to be loaded by the extension.

References

#CVE-2018-5114: The old value of a cookie changed to HttpOnly remains accessible to scripts

Reporter
Inko
Impact
moderate
Description

If an existing cookie is changed to be HttpOnly while a document is open, the original value remains accessible through script until that document is closed. Network requests correctly use the changed HttpOnly cookie.

References

#CVE-2018-5115: Background network requests can open HTTP authentication in unrelated foreground tabs

Reporter
Jerry Decime
Impact
moderate
Description

If an HTTP authentication prompt is triggered by a background network request from a page or extension, it is displayed over the currently loaded foreground page. Although the prompt contains the real domain making the request, this can result in user confusion about the originating site of the authentication request and may cause users to mistakenly send private credential information to a third party site.

References

#CVE-2018-5116: WebExtension ActiveTab permission allows cross-origin frame content access

Reporter
Ronen Zilberman
Impact
moderate
Description

WebExtensions with the ActiveTab permission are able to access frames hosted within the active tab even if the frames are cross-origin. Malicious extensions can inject frames from arbitrary origins into the loaded page and then interact with them, bypassing same-origin user expectations with this permission.

References

#CVE-2018-5117: URL spoofing with right-to-left text aligned left-to-right

Reporter
xisigr of Tencent's Xuanwu Lab
Impact
moderate
Description

If right-to-left text is used in the addressbar with left-to-right alignment, it is possible in some circumstances to scroll this text to spoof the displayed URL. This issue could result in the wrong URL being displayed as a location, which can mislead users to believe they are on a different site than the one loaded.

References

#CVE-2018-5118: Activity Stream images can attempt to load local content through file:

Reporter
Paul Theriault
Impact
moderate
Description

The screenshot images displayed in the Activity Stream page displayed when a new tab is opened is created from the meta tags of websites. An issue was discovered where the page could attempt to create these images through file: URLs from the local file system. This loading is blocked by the sandbox but could expose local data if combined with another attack that escapes sandbox protections.

References

#CVE-2018-5119: Reader view will load cross-origin content in violation of CORS headers

Reporter
Jun Kokatsu
Impact
low
Description

The reader view will display cross-origin content when CORS headers are set to prohibit the loading of cross-origin content by a site. This could allow access to content that should be restricted in reader view.

References

#CVE-2018-5121: OS X Tibetan characters render incompletely in the addressbar

Reporter
Khalil Zhani
Impact
low
Description

Low descenders on some Tibetan characters in several fonts on OS X are clipped when rendered in the addressbar. When used as part of an Internationalized Domain Name (IDN) this can be used for domain name spoofing attacks.
Note: This attack only affects OS X operating systems. Other operating systems are unaffected.

References

#CVE-2018-5122: Potential integer overflow in DoCrypt

Reporter
Casper of Tencent's Xuanwu Lab
Impact
low
Description

A potential integer overflow in the DoCrypt function of WebCrypto was identified. If a means was found of exploiting it, it could result in an out-of-bounds write.

References

#CVE-2018-5090: Memory safety bugs fixed in Firefox 58

Reporter
Mozilla developers and community
Impact
critical
Description

Mozilla developers and community members Calixte Denizet, Christian Holler, Alex Gaynor, Yoshi Huang, Bob Clary, Nils Ohlmeier, Jason Kratzer, Jesse Ruderman, Philipp, Mike Taylor, Marcia Knous, Paul Adenot, Randell Jesup, JW Wang, Tyson Smith, Emilio Cobos Álvarez, Ted Campbell, Stephen Fewer, and Tristan Bourvon reported memory safety bugs present in Firefox 57. Some of these bugs showed evidence of memory corruption and we presume that with enough effort that some of these could be exploited to run arbitrary code.

References

#CVE-2018-5089: Memory safety bugs fixed in Firefox 58 and Firefox ESR 52.6

Reporter
Mozilla developers and community
Impact
critical
Description

Mozilla developers and community members Christian Holler, Jason Kratzer, Marcia Knous, Nathan Froyd, Oriol Brufau, Ronald Crane, Randell Jesup, Tyson Smith, Emilio Cobos Álvarez, Ryan VanderMeulen, Sebastian Hengst, Karl Tomlinson, Xidorn Quan, Ludovic Hirlimann, and Jason Orendorff reported memory safety bugs present in Firefox 57 and Firefox ESR 52.5. Some of these bugs showed evidence of memory corruption and we presume that with enough effort that some of these could be exploited to run arbitrary code.

References