Multiple Vulnerabilities in Mozilla Products Could Allow for Arbitrary Code Execution

ITS ADVISORY NUMBER:
2023-136

DATE(S) ISSUED:
11/24/2023

SUBJECT:
Multiple Vulnerabilities in Mozilla Products Could Allow for Arbitrary Code Execution

OVERVIEW:
Multiple vulnerabilities have been discovered in Mozilla products, the most severe of which could allow for arbitrary code execution. 

  • Mozilla Firefox is a web browser used to access the Internet. 
  • Mozilla Firefox ESR is a version of the web browser intended to be deployed in large organizations.
  • Mozilla Thunderbird is an email client. 

Successful exploitation of the most severe of these vulnerabilities could allow for arbitrary code execution. Depending on the privileges associated with the user an attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than those who operate with administrative user rights.

THREAT INTELLIGENCE:
There are currently no reports of these vulnerabilities being exploited in the wild.

SYSTEMS AFFECTED:

  • Firefox ESR versions prior to 115.5.0
  • Thunderbird versions prior to 115.5
  • Firefox for iOS versions prior to 120
  • Firefox versions prior to 120

  

RISK:
Government:

  • Large and medium government entities: High
  • Small government entities: Medium

  

Businesses:

  • Large and medium business entities: High
  • Small business entities: Medium

Home users: Low

TECHNICAL SUMMARY:
Multiple vulnerabilities have been discovered in Mozilla products, the most severe of which could allow for arbitrary code execution. Details of these vulnerabilities are as follows:

TacticInitial Access (TA0001):

Technique: Drive-by Compromise (T1189)

  • Clickjacking permission prompts using the fullscreen transition. The black fade animation when exiting fullscreen is roughly the length of the anti-clickjacking delay on permission prompts. It was possible to use this fact to surprise users by luring them to click where the permission grant button would be about to appear. (CVE-2023-6206)
  • Use-after-free in ReadableByteStreamQueueEntry::Buffer. (CVE-2023-6207)
  • Memory safety bugs present in Firefox 119, Firefox ESR 115.4, and Thunderbird 115.4. Some of these bugs showed evidence of memory corruption and we presume that with enough effort some of these could have been exploited to run arbitrary code. (CVE-2023-6212)
  • HTML injection in %READER-BYLINE% of ReaderMode. An attacker could have performed HTML template injection via Reader Mode and exfiltrated user information. (CVE-2023-49061)
  • Clickjacking to load insecure pages in HTTPS-only mode. If an attacker needed a user to load an insecure http: page and knew that user had enabled HTTPS-only mode, the attacker could have tricked the user into clicking to grant an HTTPS-only exception if they could get the user to participate in a clicking game. (CVE-2023-6211)
  • Memory safety bugs present in Firefox 119. Some of these bugs showed evidence of memory corruption and we presume that with enough effort some of these could have been exploited to run arbitrary code. (CVE-2023-6213)

Additional lower severity vulnerabilities include: 

  • Out-of-bound memory access in WebGL2 blitFramebuffer. On some systems, depending on the graphics settings and drivers, it was possible to force an out-of-bounds read and leak memory data into the images created on the canvas element. (CVE-2023-6204)
  • Use-after-free in MessagePort::Entangled. It was possible to cause the use of a MessagePort after it had already been freed, which could potentially have led to an exploitable crash. (CVE-2023-6205)
  • Using Selection API would copy contents into X11 primary selection. When using X11, text selected by the page using the Selection API was erroneously copied into the primary selection, a temporary storage not unlike the clipboard. (CVE-2023-6208)
  • Incorrect parsing of relative URLs starting with "///". Relative URLs starting with three slashes were incorrectly parsed, and a path-traversal "/../" part in the path could be used to override the specified host. This could contribute to security problems in web sites. (CVE-2023-6209)
  • Privilege escalation through <a [referrerpolicy]> in ReaderMode. (CVE-2023-49060)
  • Mixed-content resources not blocked in a javascript: pop-up. (CVE-2023-6210)

Successful exploitation of the most severe of these vulnerabilities could allow for arbitrary code execution. Depending on the privileges associated with the user an attacker could then install programs; view, change, or delete data; or create new accounts with full user rights. Users whose accounts are configured to have fewer user rights on the system could be less impacted than those who operate with administrative user rights.

RECOMMENDATIONS:

We recommend the following actions be taken:

  • Apply appropriate updates provided by Mozilla to vulnerable systems immediately after appropriate testing. (M1051: Update Software) 
    • Safeguard 7.1: Establish and Maintain a Vulnerability Management Process: Establish and maintain a documented vulnerability management process for enterprise assets. Review and update documentation annually, or when significant enterprise changes occur that could impact this Safeguard.
    • Safeguard 7.4: Perform Automated Application Patch Management: Perform application updates on enterprise assets through automated patch management on a monthly, or more frequent, basis.
    • Safeguard 7.7: Remediate Detected Vulnerabilities: Remediate detected vulnerabilities in software through processes and tooling on a monthly, or more frequent, basis, based on the remediation process.
    • Safeguard 9.1: Ensure Use of Only Fully Supported Browsers and Email Clients: Ensure only fully supported browsers and email clients are allowed to execute in the enterprise, only using the latest version of browsers and email clients provided through the vendor.
  • Apply the Principle of Least Privilege to all systems and services. Run all software as a non-privileged user (one without administrative privileges) to diminish the effects of a successful attack. (M1026: Privileged Account Management) 
    • Safeguard 4.7: Manage Default Accounts on Enterprise Assets and Software: Manage default accounts on enterprise assets and software, such as root, administrator, and other pre-configured vendor accounts. Example implementations can include: disabling default accounts or making them unusable.
    • Safeguard 5.4: Restrict Administrator Privileges to Dedicated Administrator Accounts: Restrict administrator privileges to dedicated administrator accounts on enterprise assets. Conduct general computing activities, such as internet browsing, email, and productivity suite use, from the user’s primary, non-privileged account.
  • Use capabilities to detect and block conditions that may lead to or be indicative of a software exploit occurring. (M1050: Exploit Protection) 
  • Safeguard 10.5: Enable Anti-Exploitation Features: Enable anti-exploitation features on enterprise assets and software, where possible, such as Microsoft® Data Execution Prevention (DEP), Windows® Defender Exploit Guard (WDEG), or Apple® System Integrity Protection (SIP) and Gatekeeper™.
  • Restrict use of certain websites, block downloads/attachments, block JavaScript, restrict browser extensions, etc. (M1021: Restrict Web-Based Content) 
  • Safeguard 9.2: Use DNS Filtering Services: Use DNS filtering services on all enterprise assets to block access to known malicious domains.
  • Safeguard 9.3: Maintain and Enforce Network-Based URL Filters: Enforce and update network-based URL filters to limit an enterprise asset from connecting to potentially malicious or unapproved websites. Example implementations include category-based filtering, reputation-based filtering, or through the use of block lists. Enforce filters for all enterprise assets.
  • Safeguard 9.6: Block Unnecessary File Types: Block unnecessary file types attempting to enter the enterprise’s email gateway.
  • Block execution of code on a system through application control, and/or script blocking. (M1038:Execution Prevention) 
    • Safeguard 2.5 : Allowlist Authorized Software: Use technical controls, such as application allowlisting, to ensure that only authorized software can execute or be accessed. Reassess bi-annually, or more frequently.
    • Safeguard 2.6 : Allowlist Authorized Libraries: Use technical controls to ensure that only authorized software libraries, such as specific .dll, .ocx, .so, etc., files, are allowed to load into a system process. Block unauthorized libraries from loading into a system process. Reassess bi-annually, or more frequently.
    • Safeguard 2.7 : Allowlist Authorized Scripts: Use technical controls, such as digital signatures and version control, to ensure that only authorized scripts, such as specific .ps1, .py, etc., files, are allowed to execute. Block unauthorized scripts from executing. Reassess bi-annually, or more frequently.
  • Use capabilities to prevent suspicious behavior patterns from occurring on endpoint systems. This could include suspicious process, file, API call, etc. behavior. (M1040: Behavior Prevention on Endpoint) 
    • Safeguard 13.2 : Deploy a Host-Based Intrusion Detection Solution: Deploy a host-based intrusion detection solution on enterprise assets, where appropriate and/or supported.
    • Safeguard 13.7 : Deploy a Host-Based Intrusion Prevention Solution: Deploy a host-based intrusion prevention solution on enterprise assets, where appropriate and/or supported. Example implementations include use of an Endpoint Detection and Response (EDR) client or host-based IPS agent.
  • Inform and educate users regarding the threats posed by hypertext links contained in emails or attachments especially from un-trusted sources. Remind users not to visit un-trusted websites or follow links provided by unknown or un-trusted sources. (M1017: User Training) 
    • Safeguard 14.1: Establish and Maintain a Security Awareness Program: Establish and maintain a security awareness program. The purpose of a security awareness program is to educate the enterprise’s workforce on how to interact with enterprise assets and data in a secure manner. Conduct training at hire and, at a minimum, annually. Review and update content annually, or when significant enterprise changes occur that could impact this Safeguard.
    • Safeguard 14.2: Train Workforce Members to Recognize Social Engineering Attacks: Train workforce members to recognize social engineering attacks, such as phishing, pre-texting, and tailgating.

REFERENCES:

Mozilla
https://www.mozilla.org/en-US/security/advisories/
https://www.mozilla.org/en-US/security/advisories/mfsa2023-52/
https://www.mozilla.org/en-US/security/advisories/mfsa2023-51/
https://www.mozilla.org/en-US/security/advisories/mfsa2023-50/
https://www.mozilla.org/en-US/security/advisories/mfsa2023-49/

CVE
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6204
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6205
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6206
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6207
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6208
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6209
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6210
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6211
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6212
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-6213
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-49060
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-49061

TLP:CLEAR
www.cisa.gov/tlp