CVE-2021-4140
Critical · 10.0CVSS
10.0
EPSS
1.4%
Published
Dec 22, 2022
CISA due date
—
Cloudanix analysis
A flaw in certain web browsers lets specially made code slip past security walls meant to keep web pages isolated, so updating the software is needed to restore those protections.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Full Compromise
- Component
- Application
- Class
- Authorization Bypass
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Specific XSLT markup bypasses iframe sandbox restrictions, allowing unauthorized cross-origin access or code execution outside intended isolation boundaries.
Why it matters to the business
Attackers can escape browser sandbox protections, increasing risk of data exposure or unauthorized actions on user systems; low EPSS and no KEV status indicate limited observed exploitation but upgrade urgency remains for affected browser users.
How an attack unfolds
An attacker crafts malicious XSLT content that exploits the sandbox bypass, embeds it in a webpage, and relies on a victim loading the page in an unpatched browser to escape isolation and perform actions with elevated privileges.
How to fix it
Upgrade Firefox to 96 or later, Firefox ESR to 91.5 or later, Thunderbird to 91.5 or later; for open-policy-agent/opa update to commit 25a597bc3f4985162e7f65f9c36599f4f8f55823.
How to confirm the fix worked
Confirm browser or OPA version meets or exceeds the listed fixed versions; test sandboxed iframe behavior with known XSLT test cases to verify isolation enforcement.
Typical attack path
- Craft XSLT markup designed to bypass iframe sandbox
- Host or inject the markup into a malicious webpage
- Social-engineer victim into visiting the page with affected browser version
- Sandbox escape grants access to broader browser context or system resources
How to detect it
Review web server or browser logs for unusual XSLT processing or iframe sandbox violations; correlate with ExploitAvailable maturity indicators but no specific threat actor activity noted.
What your security team should do
- Prioritize patching affected Mozilla products and OPA instances within standard change windows given 1385 days since publication
- Monitor EPSS trend for any acceleration beyond the current +1% over 30 days
- Review web content policies to restrict untrusted XSLT processing where possible
The record
It was possible to construct specific XSLT markup that would be able to bypass an iframe sandbox. This vulnerability affects Firefox ESR < 91.5, Firefox < 96, and Thunderbird < 91.5.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:8 | firefox | 0 | 91.5.0-1.el8_5.alma |
| AlmaLinux:8 | thunderbird | 0 | 91.5.0-1.el8_5.alma |
| AlmaLinux:8 | thunderbird | 0 | 91.5.0-1.el8_5.alma.plus |
| Debian:10 | firefox-esr | 0 | 91.5.0esr-1~deb10u1 |
| Debian:10 | thunderbird | 0 | 1:91.5.0-2~deb10u1 |
| Debian:11 | firefox-esr | 0 | 91.5.0esr-1~deb11u1 |
| Debian:11 | thunderbird | 0 | 1:91.5.0-2~deb11u1 |
| Debian:12 | firefox-esr | 0 | 91.5.0esr-1 |
| Debian:12 | thunderbird | 0 | 1:91.5.0-1 |
| Debian:13 | firefox-esr | 0 | 91.5.0esr-1 |
| Debian:13 | thunderbird | 0 | 1:91.5.0-1 |
| Debian:9 | firefox-esr | 0 | 91.5.0esr-1~deb9u1 |
| Debian:9 | thunderbird | 0 | 1:91.5.0-1~deb9u1 |
| Mageia:8 | firefox | 0 | 91.5.0-1.mga8 |
| Mageia:8 | firefox-l10n | 0 | 91.5.0-1.mga8 |
| Mageia:8 | nspr | 0 | 4.33-1.mga8 |
| Mageia:8 | nss | 0 | 3.74.0-1.mga8 |
| Mageia:8 | rootcerts | 0 | 20211213.00-1.mga8 |
| Mageia:8 | thunderbird | 0 | 91.5.0-1.mga8 |
| Mageia:8 | thunderbird-l10n | 0 | 91.5.0-1.mga8 |
| Red Hat:enterprise_linux:7::client | firefox | 0 | 0:91.5.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | firefox-debuginfo | 0 | 0:91.5.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird | 0 | 0:91.5.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird-debuginfo | 0 | 0:91.5.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox | 0 | 0:91.5.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox-debuginfo | 0 | 0:91.5.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird | 0 | 0:91.5.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird-debuginfo | 0 | 0:91.5.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox | 0 | 0:91.5.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox-debuginfo | 0 | 0:91.5.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird | 0 | 0:91.5.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird-debuginfo | 0 | 0:91.5.0-1.el7_9 |
| Red Hat:enterprise_linux:8::appstream | firefox | 0 | 0:91.5.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | firefox-debuginfo | 0 | 0:91.5.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | firefox-debugsource | 0 | 0:91.5.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | thunderbird | 0 | 0:91.5.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debuginfo | 0 | 0:91.5.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debugsource | 0 | 0:91.5.0-1.el8_5 |
| Red Hat:rhel_e4s:8.1::appstream | firefox | 0 | 0:91.5.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | firefox-debuginfo | 0 | 0:91.5.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | firefox-debugsource | 0 | 0:91.5.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird | 0 | 0:91.5.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird-debuginfo | 0 | 0:91.5.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird-debugsource | 0 | 0:91.5.0-1.el8_1 |
| Red Hat:rhel_eus:8.2::appstream | firefox | 0 | 0:91.5.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | firefox-debuginfo | 0 | 0:91.5.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | firefox-debugsource | 0 | 0:91.5.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | thunderbird | 0 | 0:91.5.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | thunderbird-debuginfo | 0 | 0:91.5.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | thunderbird-debugsource | 0 | 0:91.5.0-1.el8_2 |
| Red Hat:rhel_eus:8.4::appstream | firefox | 0 | 0:91.5.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | firefox-debuginfo | 0 | 0:91.5.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | firefox-debugsource | 0 | 0:91.5.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird | 0 | 0:91.5.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird-debuginfo | 0 | 0:91.5.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird-debugsource | 0 | 0:91.5.0-1.el8_4 |
| Rocky Linux:8 | firefox | 0 | 0:91.5.0-1.el8_5 |
| Rocky Linux:8 | thunderbird | 0 | 0:91.5.0-1.el8_5 |
| SUSE:Enterprise Storage 6 | MozillaFirefox | 0 | 91.5.0-150.15.1 |
| SUSE:Enterprise Storage 7 | MozillaFirefox | 0 | 91.5.0-152.12.1 |
| SUSE:HPE Helion OpenStack 8 | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-ESPOS | MozillaFirefox | 0 | 91.5.0-150.15.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS | MozillaFirefox | 0 | 91.5.0-150.15.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP2-ESPOS | MozillaFirefox | 0 | 91.5.0-152.12.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS | MozillaFirefox | 0 | 91.5.0-152.12.1 |
| SUSE:Linux Enterprise High Performance Computing 15-ESPOS | MozillaFirefox | 0 | 91.5.0-150.15.1 |
| SUSE:Linux Enterprise High Performance Computing 15-LTSS | MozillaFirefox | 0 | 91.5.0-150.15.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP3 | MozillaFirefox | 0 | 91.5.0-152.12.1 |
| SUSE:Linux Enterprise Server 11 SP4-LTSS | MozillaFirefox | 0 | 91.5.0-78.159.1 |
| SUSE:Linux Enterprise Server 12 SP2-BCL | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:Linux Enterprise Server 12 SP3-BCL | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:Linux Enterprise Server 12 SP3-LTSS | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:Linux Enterprise Server 12 SP4-LTSS | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:Linux Enterprise Server 12 SP5 | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:Linux Enterprise Server 15 SP1-BCL | MozillaFirefox | 0 | 91.5.0-150.15.1 |
| SUSE:Linux Enterprise Server 15 SP1-LTSS | MozillaFirefox | 0 | 91.5.0-150.15.1 |
| SUSE:Linux Enterprise Server 15 SP2-BCL | MozillaFirefox | 0 | 91.5.0-152.12.1 |
| SUSE:Linux Enterprise Server 15 SP2-LTSS | MozillaFirefox | 0 | 91.5.0-152.12.1 |
| SUSE:Linux Enterprise Server 15-LTSS | MozillaFirefox | 0 | 91.5.0-150.15.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP3 | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP4 | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 | MozillaFirefox | 0 | 91.5.0-150.15.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP1 | MozillaFirefox | 0 | 91.5.0-150.15.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP2 | MozillaFirefox | 0 | 91.5.0-152.12.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP3 | MozillaThunderbird | 0 | 91.5.0-8.51.1 |
| SUSE:Manager Proxy 4.1 | MozillaFirefox | 0 | 91.5.0-152.12.1 |
| SUSE:Manager Retail Branch Server 4.1 | MozillaFirefox | 0 | 91.5.0-152.12.1 |
| SUSE:Manager Server 4.1 | MozillaFirefox | 0 | 91.5.0-152.12.1 |
| SUSE:OpenStack Cloud 8 | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:OpenStack Cloud 9 | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:OpenStack Cloud Crowbar 8 | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| SUSE:OpenStack Cloud Crowbar 9 | MozillaFirefox | 0 | 91.5.0-112.86.1 |
| Ubuntu:18.04:LTS | firefox | 0 | 96.0+build2-0ubuntu0.18.04.1 |
| Ubuntu:18.04:LTS | mozjs38 | 0 | No fix |
| Ubuntu:18.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:18.04:LTS | thunderbird | 0 | 1:91.5.0+build1-0ubuntu0.18.04.1 |
| Ubuntu:20.04:LTS | firefox | 0 | 96.0+build2-0ubuntu0.20.04.1 |
| Ubuntu:20.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:20.04:LTS | mozjs68 | 0 | No fix |
| Ubuntu:20.04:LTS | thunderbird | 0 | 1:91.5.0+build1-0ubuntu0.20.04.1 |
| Ubuntu:22.04:LTS | firefox | 0 | 96.0+build2-0ubuntu1 |
| Ubuntu:22.04:LTS | mozjs78 | 0 | No fix |
| Ubuntu:22.04:LTS | thunderbird | 0 | 1:91.5.0+build1-0ubuntu1 |
| Ubuntu:Pro:18.04:LTS | mozjs38 | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | mozjs68 | 0 | No fix |
| Ubuntu:Pro:22.04:LTS | mozjs78 | 0 | No fix |
| openSUSE:Leap 15.3 | MozillaFirefox | 0 | 91.5.0-152.12.1 |
| openSUSE:Leap 15.3 | MozillaThunderbird | 0 | 91.5.0-8.51.1 |
| openSUSE:Leap 15.3 | civetweb | 0 | 1.15-lp153.2.3.1 |
| openSUSE:Tumbleweed | MozillaFirefox | 0 | 96.0-1.1 |
| openSUSE:Tumbleweed | MozillaThunderbird | 0 | 91.5.0-1.1 |
| openSUSE:Tumbleweed | firefox-esr | 0 | 128.5.1-1.1 |
Related vulnerabilities
- CVE-2025-14331 Same-origin policy bypass in the Request Handling component. Also affects firefox
- CVE-2025-14325 JIT miscompilation in the JavaScript Engine: JIT component. Also affects firefox
- CVE-2025-14330 JIT miscompilation in the JavaScript Engine: JIT component. Also affects firefox
- CVE-2025-14333 Memory safety bugs present in Firefox ESR 140.5, Thunderbird ESR 140.5, Firefox 145 and… Also affects firefox
- CVE-2025-14328 Privilege escalation in the Netmonitor component. Also affects firefox
- CVE-2025-14329 Privilege escalation in the Netmonitor component. Also affects firefox
- CVE-2025-14323 Privilege escalation in the DOM: Notifications component. Also affects firefox
- CVE-2025-14321 Use-after-free in the WebRTC: Signaling component. Also affects firefox