Mozilla Foundation Security Advisory 2019-34
Security vulnerabilities fixed in - Firefox 70
- Announced
- October 22, 2019
- Impact
- critical
- Products
- Firefox
- Fixed in
-
- Firefox 70
Note: We have updated this advisory on June 26, 2020 to include CVE-2020-12412 and on March 20, 2023 to include CVE-2019-25136, which were fixed in Firefox 70 but not recognized or acknowledged immediately.
#CVE-2018-6156: Heap buffer overflow in FEC processing in WebRTC
- Reporter
- Google Project Zero
- Impact
- high
Description
Incorrect derivation of a packet length in WebRTC caused heap corruption via a crafted video file. This resulted in a potentially exploitable crash.
References
#CVE-2019-15903: Heap overflow in expat library in XML_GetCurrentLineNumber
- Reporter
- Sebastian Pipping
- Impact
- high
Description
In libexpat before 2.2.8, crafted XML input could fool the parser into changing from DTD parsing to document parsing too early. A subsequent call to XML_GetCurrentLineNumber
or XML_GetCurrentColumnNumber
then resulted in a heap-based buffer over-read.
References
#CVE-2019-11757: Use-after-free when creating index updates in IndexedDB
- Reporter
- Zhanjia Song
- Impact
- high
Description
When storing a value in IndexedDB, the value's prototype chain is followed and it was possible to retain a reference to a locale, delete it, and subsequently reference it. This resulted in a use-after-free and a potentially exploitable crash.
References
#CVE-2019-25136: Invalid styles allowed from content processes
- Reporter
- Emilio Cobos Álvarez
- Impact
- high
Description
A compromised child process could have injected XBL Bindings into privileged CSS rules, resulting in arbitrary code execution and a sandbox escape.
References
#CVE-2020-12412: Address bar spoof using history navigation and blocked ports
- Reporter
- Adrian Karolak from ING Tech Poland
- Impact
- moderate
Description
By navigating a tab using the history API, an attacker could cause the address bar to display the incorrect domain (with the https:// scheme, a blocked port number such as '1', and without a lock icon) while controlling the page contents.
References
#CVE-2019-11759: Stack buffer overflow in HKDF output
- Reporter
- Guido Vranken
- Impact
- moderate
Description
An attacker could have caused 4 bytes of HMAC output to be written past the end of a buffer stored on the stack. This could be used by an attacker to execute arbitrary code or more likely lead to a crash.
References
#CVE-2019-11760: Stack buffer overflow in WebRTC networking
- Reporter
- Nils
- Impact
- moderate
Description
A fixed-size stack buffer could overflow in nrappkit when doing WebRTC signaling. This resulted in a potentially exploitable crash in some instances.
References
#CVE-2019-11761: Unintended access to a privileged JSONView object
- Reporter
- Cody Crews
- Impact
- moderate
Description
By using a form with a data URI it was possible to gain access to the privileged JSONView
object that had been cloned into content. Impact from exposing this object appears to be minimal, however it was a bypass of existing defense in depth mechanisms.
References
#CVE-2019-11762: document.domain-based origin isolation has same-origin-property violation
- Reporter
- Kris Maglione
- Impact
- moderate
Description
If two same-origin documents set document.domain differently to become cross-origin, it was possible for them to call arbitrary DOM methods/getters/setters on the now-cross-origin window.
References
#CVE-2019-11763: Incorrect HTML parsing results in XSS bypass technique
- Reporter
- Gareth Heyes
- Impact
- moderate
Description
Failure to correctly handle null bytes when processing HTML entities resulted in Firefox incorrectly parsing these entities. This could have led to HTML comment text being treated as HTML which could have led to XSS in a web application under certain conditions. It could have also led to HTML entities being masked from filters, enabling the use of entities to mask the actual characters of interest from filters.
References
#CVE-2019-11765: Incorrect permissions could be granted to a website
- Reporter
- Paul Theriault
- Impact
- moderate
Description
A compromised content process could send a message to the parent process that would cause the 'Click to Play' permission prompt to be shown. However, due to lack of validation from the parent process, if the user accepted the permission request an attacker-controlled permission would be granted rather than the 'Click to Play' permission.
References
#CVE-2019-17000: CSP bypass using object tag with data: URI
- Reporter
- Yangzheng Li
- Impact
- moderate
Description
An object tag with a data URI did not correctly inherit the document's Content Security Policy. This allowed a CSP bypass in a cross-origin frame if the document's policy explicitly allowed data:
URIs.
References
#CVE-2019-17001: CSP bypass using object tag when script-src 'none' is specified
- Reporter
- Matheus Vrech
- Impact
- moderate
Description
A Content-Security-Policy that blocks in-line scripts could be bypassed using an object tag to execute JavaScript in the protected document (cross-site scripting). This is a separate bypass from CVE-2019-17000.
Note: This flaw only affected Firefox 69 and was not present in earlier versions.
References
#CVE-2019-17002: upgrade-insecure-requests was not being honored for links dragged and dropped
- Reporter
- Kevin Brosnan
- Impact
- low
Description
If upgrade-insecure-requests
was specified in the Content Security Policy, and a link was dragged and dropped from that page, the link was not upgraded to https.
References
#CVE-2019-11764: Memory safety bugs fixed in Firefox 70 and Firefox ESR 68.2
- Reporter
- Mozilla developers and community
- Impact
- critical
Description
Mozilla developers and community members Bob Clary, Jason Kratzer, Aaron Klotz, Iain Ireland, Tyson Smith, Christian Holler, Steve Fink, Honza Bambas, Byron Campen, and Cristian Brindusan reported memory safety bugs present in Firefox 69 and Firefox ESR 68.1. Some of these bugs showed evidence of memory corruption and we presume that with enough effort some of these could be exploited to run arbitrary code.