CVE-2022-22761
High · 8.8CVSS
8.8
EPSS
0.8%
Published
Dec 22, 2022
CISA due date
—
Cloudanix analysis
A browser flaw let some website extensions be loaded inside other websites when they should have been blocked, potentially letting attackers reach private information stored by those extensions.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Full Compromise
- Component
- Application
- Class
- Authorization Bypass
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
The flaw permits arbitrary web origins to embed moz-extension:// pages in frames or iframes by ignoring the frame-ancestors directive declared in an extension's Content Security Policy, bypassing intended origin restrictions on extension resources.
Why it matters to the business
Organizations relying on Firefox, Firefox ESR, or Thunderbird face elevated risk of unauthorized access to extension data and functionality, which can lead to credential theft, privacy breaches, or unauthorized actions performed through trusted extensions.
How an attack unfolds
An attacker creates a malicious webpage containing an iframe that targets a web-accessible resource of a vulnerable extension. Because frame-ancestors is not enforced, the browser loads the extension page inside the attacker's frame, allowing script or content interaction that would otherwise be blocked by CSP, ultimately enabling data exfiltration or abuse of extension privileges.
How to fix it
Upgrade Firefox to 97 or later, Firefox ESR to 91.6 or later, and Thunderbird to 91.6 or later; audit installed extensions to ensure they declare an appropriate frame-ancestors directive and remove or replace any extensions that cannot be updated.
How to confirm the fix worked
Confirm installed versions meet or exceed the fixed releases, then test that a sample extension page with frame-ancestors CSP correctly rejects framing attempts from unauthorized origins.
Typical attack path
- Locate a target extension exposing web-accessible pages under moz-extension://
- Host attacker-controlled content that loads the extension resource inside an iframe or frame
- Exploit missing frame-ancestors enforcement to render the extension page despite CSP
- Interact with the framed extension content to read or manipulate sensitive data or perform privileged actions
How to detect it
Examine endpoint inventory and browser version logs for installations older than the fixed releases; review web proxy or browser telemetry for unexpected framing or navigation events involving moz-extension:// URLs from external origins.
What your security team should do
- Apply the listed version upgrades immediately across all endpoints
- Inventory and update all Mozilla-based applications and extensions
- Enable automatic updates where possible and establish a recurring patch cadence
- Review extension permissions and CSP configurations for high-risk deployments
The record
Web-accessible extension pages (pages with a moz-extension:// scheme) were not correctly enforcing the frame-ancestors directive when it was used in the Web Extension's Content Security Policy. This vulnerability affects Firefox < 97, Thunderbird < 91.6, and Firefox ESR < 91.6.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:8 | firefox | 0 | 91.6.0-1.el8_5.alma |
| AlmaLinux:8 | thunderbird | 0 | 91.6.0-1.el8_5.alma |
| AlmaLinux:8 | thunderbird | 0 | 91.6.0-1.el8_5.alma.plus |
| Debian:10 | firefox-esr | 0 | 91.6.0esr-1~deb10u1 |
| Debian:10 | thunderbird | 0 | 1:91.6.0-1~deb10u1 |
| Debian:11 | firefox-esr | 0 | 91.6.0esr-1~deb11u1 |
| Debian:11 | thunderbird | 0 | 1:91.6.0-1~deb11u1 |
| Debian:12 | firefox-esr | 0 | 91.6.0esr-1 |
| Debian:12 | thunderbird | 0 | 1:91.6.0-1 |
| Debian:13 | firefox-esr | 0 | 91.6.0esr-1 |
| Debian:13 | thunderbird | 0 | 1:91.6.0-1 |
| Debian:9 | firefox-esr | 0 | 91.6.0esr-1~deb9u1 |
| Debian:9 | thunderbird | 0 | 1:91.6.0-1~deb9u1 |
| Mageia:8 | firefox | 0 | 91.6.0-1.mga8 |
| Mageia:8 | firefox-l10n | 0 | 91.6.0-1.mga8 |
| Mageia:8 | nss | 0 | 3.75.0-1.mga8 |
| Mageia:8 | thunderbird | 0 | 91.6.0-1.mga8 |
| Mageia:8 | thunderbird-l10n | 0 | 91.6.0-1.mga8 |
| Red Hat:enterprise_linux:7::client | firefox | 0 | 0:91.6.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | firefox-debuginfo | 0 | 0:91.6.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird | 0 | 0:91.6.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird-debuginfo | 0 | 0:91.6.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox | 0 | 0:91.6.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox-debuginfo | 0 | 0:91.6.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird | 0 | 0:91.6.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird-debuginfo | 0 | 0:91.6.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox | 0 | 0:91.6.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox-debuginfo | 0 | 0:91.6.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird | 0 | 0:91.6.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird-debuginfo | 0 | 0:91.6.0-1.el7_9 |
| Red Hat:enterprise_linux:8::appstream | firefox | 0 | 0:91.6.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | firefox-debuginfo | 0 | 0:91.6.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | firefox-debugsource | 0 | 0:91.6.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | thunderbird | 0 | 0:91.6.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debuginfo | 0 | 0:91.6.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debugsource | 0 | 0:91.6.0-1.el8_5 |
| Red Hat:rhel_e4s:8.1::appstream | firefox | 0 | 0:91.6.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | firefox-debuginfo | 0 | 0:91.6.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | firefox-debugsource | 0 | 0:91.6.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird | 0 | 0:91.6.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird-debuginfo | 0 | 0:91.6.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird-debugsource | 0 | 0:91.6.0-1.el8_1 |
| Red Hat:rhel_eus:8.2::appstream | firefox | 0 | 0:91.6.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | firefox-debuginfo | 0 | 0:91.6.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | firefox-debugsource | 0 | 0:91.6.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | thunderbird | 0 | 0:91.6.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | thunderbird-debuginfo | 0 | 0:91.6.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | thunderbird-debugsource | 0 | 0:91.6.0-1.el8_2 |
| Red Hat:rhel_eus:8.4::appstream | firefox | 0 | 0:91.6.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | firefox-debuginfo | 0 | 0:91.6.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | firefox-debugsource | 0 | 0:91.6.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird | 0 | 0:91.6.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird-debuginfo | 0 | 0:91.6.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird-debugsource | 0 | 0:91.6.0-1.el8_4 |
| Rocky Linux:8 | firefox | 0 | 0:91.6.0-1.el8_5 |
| Rocky Linux:8 | thunderbird | 0 | 0:91.6.0-1.el8_5 |
| SUSE:Enterprise Storage 6 | MozillaFirefox | 0 | 91.6.0-150.18.1 |
| SUSE:Enterprise Storage 7 | MozillaFirefox | 0 | 91.6.0-152.15.1 |
| SUSE:HPE Helion OpenStack 8 | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-ESPOS | MozillaFirefox | 0 | 91.6.0-150.18.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS | MozillaFirefox | 0 | 91.6.0-150.18.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP2-ESPOS | MozillaFirefox | 0 | 91.6.0-152.15.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS | MozillaFirefox | 0 | 91.6.0-152.15.1 |
| SUSE:Linux Enterprise High Performance Computing 15-ESPOS | MozillaFirefox | 0 | 91.6.0-150.18.1 |
| SUSE:Linux Enterprise High Performance Computing 15-LTSS | MozillaFirefox | 0 | 91.6.0-150.18.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP3 | MozillaFirefox | 0 | 91.6.0-152.15.1 |
| SUSE:Linux Enterprise Real Time 15 SP2 | MozillaFirefox | 0 | 91.6.0-152.15.1 |
| SUSE:Linux Enterprise Server 11 SP4-LTSS | MozillaFirefox | 0 | 91.6.0-78.162.2 |
| SUSE:Linux Enterprise Server 12 SP2-BCL | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:Linux Enterprise Server 12 SP3-BCL | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:Linux Enterprise Server 12 SP3-LTSS | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:Linux Enterprise Server 12 SP4-LTSS | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:Linux Enterprise Server 12 SP5 | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:Linux Enterprise Server 15 SP1-BCL | MozillaFirefox | 0 | 91.6.0-150.18.1 |
| SUSE:Linux Enterprise Server 15 SP1-LTSS | MozillaFirefox | 0 | 91.6.0-150.18.1 |
| SUSE:Linux Enterprise Server 15 SP2-BCL | MozillaFirefox | 0 | 91.6.0-152.15.1 |
| SUSE:Linux Enterprise Server 15 SP2-LTSS | MozillaFirefox | 0 | 91.6.0-152.15.1 |
| SUSE:Linux Enterprise Server 15-LTSS | MozillaFirefox | 0 | 91.6.0-150.18.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP3 | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP4 | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 | MozillaFirefox | 0 | 91.6.0-150.18.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP1 | MozillaFirefox | 0 | 91.6.0-150.18.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP2 | MozillaFirefox | 0 | 91.6.0-152.15.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP3 | MozillaThunderbird | 0 | 91.6.1-8.54.1 |
| SUSE:Manager Proxy 4.1 | MozillaFirefox | 0 | 91.6.0-152.15.1 |
| SUSE:Manager Retail Branch Server 4.1 | MozillaFirefox | 0 | 91.6.0-152.15.1 |
| SUSE:Manager Server 4.1 | MozillaFirefox | 0 | 91.6.0-152.15.1 |
| SUSE:OpenStack Cloud 8 | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:OpenStack Cloud 9 | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:OpenStack Cloud Crowbar 8 | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| SUSE:OpenStack Cloud Crowbar 9 | MozillaFirefox | 0 | 91.6.0-112.89.1 |
| Ubuntu:18.04:LTS | firefox | 0 | 97.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.7.0+build2-0ubuntu0.18.04.1 |
| Ubuntu:20.04:LTS | firefox | 0 | 97.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.7.0+build2-0ubuntu0.20.04.1 |
| Ubuntu:22.04:LTS | firefox | 0 | 97.0+build2-0ubuntu1 |
| Ubuntu:22.04:LTS | mozjs78 | 0 | No fix |
| Ubuntu:22.04:LTS | thunderbird | 0 | 1:91.6.1+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 | MozillaThunderbird | 0 | 91.6.1-8.54.1 |
| openSUSE:Tumbleweed | MozillaFirefox | 0 | 97.0-1.1 |
| openSUSE:Tumbleweed | MozillaThunderbird | 0 | 91.6.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