Pages with malicious titles could potentially allow saved PDF content to overwrite PDF files or bundled content within the Firefox for iOS application sandbox.
Firefox for iOS preserved cookies set on the initial PDF request across cross-origin HTTP redirects in TemporaryDocument, allowing a malicious site to inject arbitrary cookies into requests to an unrelated target domain.
Firefox for iOS used partial domain matching when attaching cookies to PDF requests, allowing a malicious site on a suffix domain to receive cookies belonging to the target site.
Long pressing on a download link could potentially provide a means for cross-site scripting
The contextual menu for links could provide an opportunity for cross-site scripting attacks
In certain scenarios a malicious website could attempt to display a fake location URL bar which could mislead users as to the actual website address
When browsing private tabs, some data related to location history or webpage thumbnails could be persisted incorrectly within the sandboxed app bundle after app termination
When a user scans a QR Code with the QR Code Scanner feature, the user is not prompted before being navigated to the page specified in the code. This may surprise the user and potentially direct them to unwanted content.
An attacker could have performed HTML template injection via Reader Mode and exfiltrated user information.
When opening a page in reader mode, the redirect URL could have caused attacker-controlled script to execute in a reflected Cross-Site Scripting (XSS) attack.
Scanning a QR code that contained a javascript: URL would have resulted in the Javascript being executed.
Internal URLs are protected by a secret UUID key, which could have been leaked to web page through the Referrer header.
A rogue webpage could override the injected WKUserScript used by the download feature, this exploit could result in the user downloading an unintended file.
A rogue webpage could override the injected WKUserScript used by the logins autofill, this exploit could result in leaking a password for the current domain.
IndexedDB should be cleared when leaving private browsing mode and it is not, the API for WKWebViewConfiguration was being used incorrectly and requires the private instance of this object be deleted when leaving private mode.
For native-to-JS bridging the app requires a unique token to be passed that ensures non-app code can't call the bridging functions. That token could leak when used for downloading files.