Mozilla Firefox < 51 Multiple Vulnerabilities (macOS)

This script is Copyright (C) 2017 Tenable Network Security, Inc.

Synopsis :

The remote macOS or Mac OS X host contains a web browser that is
affected by multiple vulnerabilities.

Description :

The version of Mozilla Firefox installed on the remote macOS or Mac
OS X host is prior to 51. It is, therefore, affected by the following
vulnerabilities :

- Mozilla developers and community members Christian
Holler, Gary Kwong, Andre 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.

- 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. (CVE-2017-5374)

- JIT code allocation can allow for a bypass of ASLR and
DEP protections leading to potential memory corruption
attacks. (CVE-2017-5375)

- Use-after-free while manipulating XSL in XSLT documents

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

- 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. (CVE-2017-5378)

- Use-after-free vulnerability in Web Animations when
interacting with cycle collection found through
fuzzing. (CVE-2017-5379)

- A potential use-after-free found through fuzzing during
DOM manipulation of SVG content. (CVE-2017-5380)

- 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. (CVE-2017-5381)

- 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. (CVE-2017-5382)

- 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. (CVE-2017-5383)

- 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. (CVE-2017-5384)

- 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.

- 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.

- 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. (CVE-2017-5387)

- 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. (CVE-2017-5388)

- 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.

- 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. (CVE-2017-5390)

- 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. (CVE-2017-5391)

- The 'mozAddonManager' allows for the installation of
extensions from the CDN for, 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.

- 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.

Note that Tenable Network Security has extracted the preceding
description block directly from the Mozilla security advisories.
Tenable has attempted to automatically clean and format it as much as
possible without introducing additional issues.

See also :

Solution :

Upgrade to Mozilla Firefox version 51.0 or later.

Risk factor :

High / CVSS Base Score : 9.3
CVSS Temporal Score : 7.3
Public Exploit Available : true