Mozilla Foundation Security Advisory 2017-01

Security vulnerabilities fixed in Firefox 51

Announced
January 24, 2017
Impact
critical
Products
Firefox
Fixed in
  • Firefox 51

#CVE-2017-5375: Excessive JIT code allocation allows bypass of ASLR and DEP

Reporter
Rh0
Impact
critical
Description

JIT code allocation can allow for a bypass of ASLR and DEP protections leading to potential memory corruption attacks.

References

#CVE-2017-5376: Use-after-free in XSL

Reporter
Nicolas Grégoire
Impact
critical
Description

Use-after-free while manipulating XSL in XSLT documents

References

#CVE-2017-5377: Memory corruption with transforms to create gradients in Skia

Reporter
Atte Kettunen
Impact
critical
Description

A memory corruption vulnerability in Skia that can occur when using transforms to make gradients, resulting in a potentially exploitable crash.

References

#CVE-2017-5378: Pointer and frame data leakage of Javascript objects

Reporter
Jann Horn
Impact
high
Description

Hashed codes of JavaScript objects are shared between pages. This allows for pointer leaks because an object’s address can be discovered through hash codes, and also allows for data leakage of an object’s content using these hash codes.

References

#CVE-2017-5379: Use-after-free in Web Animations

Reporter
Nils
Impact
high
Description

Use-after-free vulnerability in Web Animations when interacting with cycle collection found through fuzzing.

References

#CVE-2017-5380: Potential use-after-free during DOM manipulations

Reporter
Nils
Impact
high
Description

A potential use-after-free found through fuzzing during DOM manipulation of SVG content.

References

#CVE-2017-5390: Insecure communication methods in Developer Tools JSON viewer

Reporter
Jerri Rice
Impact
high
Description

The JSON viewer in the Developer Tools uses insecure methods to create a communication channel for copying and viewing JSON or HTTP headers data, allowing for potential privilege escalation.

References

#CVE-2017-5389: WebExtensions can install additional add-ons via modified host requests

Reporter
Kris Maglione
Impact
high
Description

WebExtensions could use the mozAddonManager API by modifying the CSP headers on sites with the appropriate permissions and then using host requests to redirect script loads to a malicious site. This allows a malicious extension to then install additional extensions without explicit user permission.

References

#CVE-2017-5396: Use-after-free with Media Decoder

Reporter
Filipe Gomes
Impact
high
Description

A use-after-free vulnerability in the Media Decoder when working with media files when some events are fired after the media elements are freed from memory.

References

#CVE-2017-5381: Certificate Viewer exporting can be used to navigate and save to arbitrary filesystem locations

Reporter
Jann Horn
Impact
moderate
Description

The "export" function in the Certificate Viewer can force local filesystem navigation when the "common name" in a certificate contains slashes, allowing certificate content to be saved in unsafe locations with an arbitrary filename.

References

#CVE-2017-5382: Feed preview can expose privileged content errors and exceptions

Reporter
Jerri Rice
Impact
moderate
Description

Feed preview for RSS feeds can be used to capture errors and exceptions generated by privileged content, allowing for the exposure of internal information not meant to be seen by web content.

References

#CVE-2017-5383: Location bar spoofing with unicode characters

Reporter
Armin Ebert
Impact
moderate
Description

URLs containing certain unicode glyphs for alternative hyphens and quotes do not properly trigger punycode display, allowing for domain name spoofing attacks in the location bar.

References

#CVE-2017-5384: Information disclosure via Proxy Auto-Config (PAC)

Reporter
Paul Stone, Alex Chapman
Impact
moderate
Description

Proxy Auto-Config (PAC) files can specify a JavaScript function called for all URL requests with the full URL path which exposes more information than would be sent to the proxy itself in the case of HTTPS. Normally the Proxy Auto-Config file is specified by the user or machine owner and presumed to be non-malicious, but if a user has enabled Web Proxy Auto Detect (WPAD) this file can be served remotely.

References

#CVE-2017-5385: Data sent in multipart channels ignores referrer-policy response headers

Reporter
Muneaki Nishimura
Impact
moderate
Description

Data sent with in multipart channels, such as the multipart/x-mixed-replace MIME type, will ignore the referrer-policy response header, leading to potential information disclosure for sites using this header.

References

#CVE-2017-5386: WebExtensions can use data: protocol to affect other extensions

Reporter
Muneaki Nishimura
Impact
moderate
Description

WebExtension scripts can use the data: protocol to affect pages loaded by other web extensions using this protocol, leading to potential data disclosure or privilege escalation in affected extensions.

References

#CVE-2017-5394: Android location bar spoofing using fullscreen and JavaScript events

Reporter
Jordi Chancel
Impact
moderate
Description

A location bar spoofing attack where the location bar of loaded page will be shown over the content of another tab due to a series of JavaScript events combined with fullscreen mode.
Note: This issue only affects Firefox for Android. Other operating systems are not affected.

References

#CVE-2017-5391: Content about: pages can load privileged about: pages

Reporter
Jerri Rice
Impact
moderate
Description

Special about: pages used by web content, such as RSS feeds, can load privileged about: pages in an iframe. If a content-injection bug were found in one of those pages this could allow for potential privilege escalation.

References

#CVE-2017-5392: Weak references using multiple threads on weak proxy objects lead to unsafe memory usage

Reporter
Honza Bambas
Impact
moderate
Description

Weak proxy objects have weak references on multiple threads when they should only have them on one, resulting in incorrect memory usage and corruption, which leads to potentially exploitable crashes.
Note: This issue only affects Firefox for Android. Other operating systems are not affected.

References

#CVE-2017-5393: Remove addons.mozilla.org CDN from whitelist for mozAddonManager

Reporter
Stuart Colville
Impact
moderate
Description

The mozAddonManager allows for the installation of extensions from the CDN for addons.mozilla.org, a publicly accessible site. This could allow malicious extensions to install additional extensions from the CDN in combination with an XSS attack on Mozilla AMO sites.

References

#CVE-2017-5395: Android location bar spoofing during scrolling

Reporter
Jordi Chancel
Impact
low
Description

Malicious sites can display a spoofed location bar on a subsequently loaded page when the existing location bar on the new page is scrolled out of view if navigations between pages can be timed correctly.
Note: This issue only affects Firefox for Android. Other operating systems are not affected.

References

#CVE-2017-5387: Disclosure of local file existence through TRACK tag error messages

Reporter
Mustafa Hasan
Impact
low
Description

The existence of a specifically requested local file can be found due to the double firing of the onerror when the source attribute on a <track> tag refers to a file that does not exist if the source page is loaded locally.

References

#CVE-2017-5388: WebRTC can be used to generate a large amount of UDP traffic for DDOS attacks

Reporter
Cullen Jennings
Impact
low
Description

A STUN server in conjunction with a large number of webkitRTCPeerConnection objects can be used to send large STUN packets in a short period of time due to a lack of rate limiting being applied on e10s systems, allowing for a denial of service attack.

References

#CVE-2017-5374: Memory safety bugs fixed in Firefox 51

Reporter
Mozilla developers and community
Impact
critical
Description

Mozilla developers and community members Gary Kwong, Olli Pettay, Tooru Fujisawa, Carsten Book, Andrew McCreight, Chris Pearce, Ronald Crane, Jan de Mooij, Julian Seward, Nicolas Pierron, Randell Jesup, Esther Monchari, Honza Bambas, and Philipp reported memory safety bugs present in Firefox 50.1. 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-2017-5373: Memory safety bugs fixed in Firefox 51 and Firefox ESR 45.7

Reporter
Mozilla developers and community
Impact
critical
Description

Mozilla developers and community members Christian Holler, Gary Kwong, André Bargull, Jan de Mooij, Tom Schuster, and Oriol reported memory safety bugs present in Firefox 50.1 and Firefox ESR 45.6. 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