Mozilla Foundation Security Advisory 2017-21

Security vulnerabilities fixed in Firefox 56

Announced
September 28, 2017
Impact
critical
Products
Firefox
Fixed in
  • Firefox 56

#CVE-2017-7793: Use-after-free with Fetch API

Reporter
Abhishek Arya
Impact
high
Description

A use-after-free vulnerability can occur in the Fetch API when the worker or the associated window are freed when still in use, resulting in a potentially exploitable crash.

References

#CVE-2017-7817: Firefox for Android address bar spoofing through fullscreen mode

Reporter
Raphael Saniyazov
Impact
high
Description

A spoofing vulnerability can occur when a page switches to fullscreen mode without user notification, allowing a fake address bar to be displayed. This allows an attacker to spoof which page is actually loaded and in use.
Note: This attack only affects Firefox for Android. Other operating systems are not affected.

References

#CVE-2017-7818: Use-after-free during ARIA array manipulation

Reporter
Nils
Impact
high
Description

A use-after-free vulnerability can occur when manipulating arrays of Accessible Rich Internet Applications (ARIA) elements within containers through the DOM. This results in a potentially exploitable crash.

References

#CVE-2017-7819: Use-after-free while resizing images in design mode

Reporter
Nils
Impact
high
Description

A use-after-free vulnerability can occur in design mode when image objects are resized if objects referenced during the resizing have been freed from memory. This results in a potentially exploitable crash.

References

#CVE-2017-7824: Buffer overflow when drawing and validating elements with ANGLE

Reporter
Omair, Andre Weissflog
Impact
high
Description

A buffer overflow occurs when drawing and validating elements with the ANGLE graphics library, used for WebGL content. This is due to an incorrect value being passed within the library during checks and results in a potentially exploitable crash.

References

#CVE-2017-7805: Use-after-free in TLS 1.2 generating handshake hashes

Reporter
Martin Thomson
Impact
high
Description

During TLS 1.2 exchanges, handshake hashes are generated which point to a message buffer. This saved data is used for later messages but in some cases, the handshake transcript can exceed the space available in the current buffer, causing the allocation of a new buffer. This leaves a pointer pointing to the old, freed buffer, resulting in a use-after-free when handshake hashes are then calculated afterwards. This can result in a potentially exploitable crash.

References

#CVE-2017-7812: Drag and drop of malicious page content to the tab bar can open locally stored files

Reporter
Tooru Fujisawa
Impact
moderate
Description

If web content on a page is dragged onto portions of the browser UI, such as the tab bar, links can be opened that otherwise would not be allowed to open. This can allow malicious web content to open a locally stored file through file: URLs.

References

#CVE-2017-7814: Blob and data URLs bypass phishing and malware protection warnings

Reporter
François Marier
Impact
moderate
Description

File downloads encoded with blob: and data: URL elements bypassed normal file download checks though the Phishing and Malware Protection feature and its block lists of suspicious sites and files. This would allow malicious sites to lure users into downloading executables that would otherwise be detected as suspicious.

References

#CVE-2017-7813: Integer truncation in the JavaScript parser

Reporter
Abhishek Arya
Impact
moderate
Description

Inside the JavaScript parser, a cast of an integer to a narrower type can result in data read from outside the buffer being parsed. This usually results in a non-exploitable crash, but can leak a limited amount of information from memory if it matches JavaScript identifier syntax.

References

#CVE-2017-7825: OS X fonts render some Tibetan and Arabic unicode characters as spaces

Reporter
Khalil Zhani
Impact
moderate
Description

Several fonts on OS X display some Tibetan and Arabic characters as whitespace. When used in the addressbar as part of an 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-2017-7815: Spoofing attack with modal dialogs on non-e10s installations

Reporter
Jose María Acuña
Impact
moderate
Description

On pages containing an iframe, the data: protocol can be used to create a modal dialog through Javascript that will have an arbitrary domains as the dialog's location, spoofing of the origin of the modal dialog from the user view.
Note: This attack only affects installations with e10 multiprocess turned off. Installations with e10s turned on do not support the modal dialog functionality.

References

#CVE-2017-7816: WebExtensions can load about: URLs in extension UI

Reporter
Kestrel
Impact
moderate
Description

WebExtensions could use popups and panels in the extension UI to load an about: privileged URL, violating security checks that disallow this behavior.

References

#CVE-2017-7821: WebExtensions can download and open non-executable files without user interaction

Reporter
Abdulrahman Alqabandi
Impact
moderate
Description

A vulnerability where WebExtensions can download and attempt to open a file of some non-executable file types. This can be triggered without specific user interaction for the file download and open actions. This could be used to trigger known vulnerabilities in the programs that handle those document types.

References

#CVE-2017-7823: CSP sandbox directive did not create a unique origin

Reporter
Jun Kokatsu
Impact
moderate
Description

The content security policy (CSP) sandbox directive did not create a unique origin for the document, causing it to behave as if the allow-same-origin keyword were always specified. This could allow a Cross-Site Scripting (XSS) attack to be launched from unsafe content.

References

#CVE-2017-7822: WebCrypto allows AES-GCM with 0-length IV

Reporter
Thanh Bui
Impact
low
Description

The AES-GCM implementation in WebCrypto API accepts 0-length IV when it should require a length of 1 according to the NIST Special Publication 800-38D specification. This might allow for the authentication key to be determined in some instances.

References

#CVE-2017-7820: Xray wrapper bypass with new tab and web console

Reporter
Oriol Brufau
Impact
low
Description

The instanceof operator can bypass the Xray wrapper mechanism. When called on web content from the browser itself or an extension the web content can provide its own result for that operator, possibly tricking the browser or extension into mishandling the element.

References

#CVE-2017-7811: Memory safety bugs fixed in Firefox 56

Reporter
Mozilla developers and community
Impact
critical
Description

Mozilla developers and community members Christian Holler, Jason Kratzer, Tobias Schneider, Tyson Smith, David Keeler, Nicolas B. Pierron, Mike Hommey, Ronald Crane, Tooru Fujisawa, and Philipp reported memory safety bugs present in Firefox 55. 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-7810: Memory safety bugs fixed in Firefox 56 and Firefox ESR 52.4

Reporter
Mozilla developers and community
Impact
critical
Description

Mozilla developers and community members Christoph Diehl, Jan de Mooij, Jason Kratzer, Randell Jesup, Tom Ritter, Tyson Smith, and Sebastian Hengst reported memory safety bugs present in Firefox 55 and Firefox ESR 52.3. 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