CVE-2024-5693
Medium · 6.1CVSS
6.1
EPSS
0.6%
Published
Jun 11, 2024
CISA due date
—
Cloudanix analysis
A browser flaw could let one website secretly view pictures loaded from another website, potentially exposing private images a user has accessed.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Data Exposure
- Component
- Application
- Class
- Authorization Bypass
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Offscreen Canvas failed to properly enforce cross-origin tainting checks, allowing JavaScript to read pixel data from images loaded from a different origin in violation of the same-origin policy.
Why it matters to the business
Attackers could steal image content from other websites a user visits, leading to unauthorized data exposure and potential privacy violations for users of affected browsers.
How an attack unfolds
An attacker hosts a malicious page that loads a cross-origin image into an Offscreen Canvas element; due to the missing taint tracking, the page reads back the image data and exfiltrates it, bypassing intended isolation between sites.
How to fix it
Upgrade Firefox to version 127 or later, Firefox ESR to 115.12 or later, and Thunderbird to 115.12 or later. Apply updates through the browser's built-in update mechanism as soon as they become available.
How to confirm the fix worked
Confirm installed browser versions meet or exceed the fixed releases listed above; re-test cross-origin canvas image access using proof-of-concept scripts in a controlled environment to verify the taint check now blocks access.
Typical attack path
- Attacker lures victim to a controlled webpage
- Page creates an OffscreenCanvas and draws a cross-origin image into it
- Script calls getImageData or toDataURL on the canvas
- Browser incorrectly returns the image pixels instead of blocking access
- Data is sent to attacker-controlled server
How to detect it
Review browser process logs and crash reports for unusual canvas operations; correlate with web proxy or endpoint telemetry showing unexpected cross-origin image fetches followed by data exfiltration patterns.
What your security team should do
- Immediately deploy browser updates to all managed endpoints
- Monitor vendor advisories for any follow-on patches
- Educate users on the importance of keeping browsers current
- Review web application code that relies on canvas for image handling to ensure it does not assume cross-origin protections
The record
Offscreen Canvas did not properly track cross-origin tainting, which could be used to access image data from another site in violation of same-origin policy. This vulnerability affects Firefox < 127, Firefox ESR < 115.12, and Thunderbird < 115.12.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:8 | firefox | 0 | 115.12.0-1.el8_10.alma.1 |
| AlmaLinux:8 | thunderbird | 0 | 115.12.1-1.el8_10.alma.1 |
| AlmaLinux:9 | firefox | 0 | 115.12.0-1.el9_4.alma.1 |
| AlmaLinux:9 | firefox-x11 | 0 | 115.12.0-1.el9_4.alma.1 |
| AlmaLinux:9 | thunderbird | 0 | 115.12.1-1.el9_4.alma.1 |
| Chainguard | firefox | 0 | 127.0.2-r0 |
| Chainguard | firefox-esr | 0 | 115.12.0-r0 |
| Debian:10 | firefox-esr | 0 | 115.12.0esr-1~deb10u1 |
| Debian:10 | thunderbird | 0 | 1:115.12.0-1~deb10u1 |
| Debian:11 | firefox-esr | 0 | 115.12.0esr-1~deb11u1 |
| Debian:11 | thunderbird | 0 | 1:115.12.0-1~deb11u1 |
| Debian:12 | firefox-esr | 0 | 115.12.0esr-1~deb12u1 |
| Debian:12 | thunderbird | 0 | 1:115.12.0-1~deb12u1 |
| Debian:13 | firefox-esr | 0 | 115.12.0esr-1 |
| Debian:13 | thunderbird | 0 | 1:115.12.0-1 |
| Mageia:9 | firefox | 0 | 115.12.0-1.mga9 |
| Mageia:9 | firefox-l10n | 0 | 115.12.0-1.mga9 |
| Mageia:9 | nss | 0 | 3.101.0-1.mga9 |
| Mageia:9 | thunderbird | 0 | 115.12.0-1.mga9 |
| Mageia:9 | thunderbird-l10n | 0 | 115.12.0-1.mga9 |
| Red Hat:enterprise_linux:7::client | firefox | 0 | 0:115.12.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | firefox-debuginfo | 0 | 0:115.12.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird | 0 | 0:115.12.1-1.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird-debuginfo | 0 | 0:115.12.1-1.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox | 0 | 0:115.12.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox-debuginfo | 0 | 0:115.12.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird | 0 | 0:115.12.1-1.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird-debuginfo | 0 | 0:115.12.1-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox | 0 | 0:115.12.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox-debuginfo | 0 | 0:115.12.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird | 0 | 0:115.12.1-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird-debuginfo | 0 | 0:115.12.1-1.el7_9 |
| Red Hat:enterprise_linux:8::appstream | firefox | 0 | 0:115.12.0-1.el8_10 |
| Red Hat:enterprise_linux:8::appstream | firefox-debuginfo | 0 | 0:115.12.0-1.el8_10 |
| Red Hat:enterprise_linux:8::appstream | firefox-debugsource | 0 | 0:115.12.0-1.el8_10 |
| Red Hat:enterprise_linux:8::appstream | thunderbird | 0 | 0:115.12.1-1.el8_10 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debuginfo | 0 | 0:115.12.1-1.el8_10 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debugsource | 0 | 0:115.12.1-1.el8_10 |
| Red Hat:enterprise_linux:9::appstream | firefox | 0 | 0:115.12.0-1.el9_4 |
| Red Hat:enterprise_linux:9::appstream | firefox-debuginfo | 0 | 0:115.12.0-1.el9_4 |
| Red Hat:enterprise_linux:9::appstream | firefox-debugsource | 0 | 0:115.12.0-1.el9_4 |
| Red Hat:enterprise_linux:9::appstream | firefox-x11 | 0 | 0:115.12.0-1.el9_4 |
| Red Hat:enterprise_linux:9::appstream | thunderbird | 0 | 0:115.12.1-1.el9_4 |
| Red Hat:enterprise_linux:9::appstream | thunderbird-debuginfo | 0 | 0:115.12.1-1.el9_4 |
| Red Hat:enterprise_linux:9::appstream | thunderbird-debugsource | 0 | 0:115.12.1-1.el9_4 |
| Red Hat:rhel_aus:8.2::appstream | firefox | 0 | 0:115.12.0-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | firefox-debuginfo | 0 | 0:115.12.0-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | firefox-debugsource | 0 | 0:115.12.0-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | thunderbird | 0 | 0:115.12.1-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | thunderbird-debuginfo | 0 | 0:115.12.1-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | thunderbird-debugsource | 0 | 0:115.12.1-1.el8_2 |
| Red Hat:rhel_aus:8.4::appstream | firefox | 0 | 0:115.12.0-1.el8_4 |
| Red Hat:rhel_aus:8.4::appstream | firefox-debuginfo | 0 | 0:115.12.0-1.el8_4 |
| Red Hat:rhel_aus:8.4::appstream | firefox-debugsource | 0 | 0:115.12.0-1.el8_4 |
| Red Hat:rhel_aus:8.4::appstream | thunderbird | 0 | 0:115.12.1-1.el8_4 |
| Red Hat:rhel_aus:8.4::appstream | thunderbird-debuginfo | 0 | 0:115.12.1-1.el8_4 |
| Red Hat:rhel_aus:8.4::appstream | thunderbird-debugsource | 0 | 0:115.12.1-1.el8_4 |
| Red Hat:rhel_aus:8.6::appstream | firefox | 0 | 0:115.12.0-1.el8_6 |
| Red Hat:rhel_aus:8.6::appstream | firefox-debuginfo | 0 | 0:115.12.0-1.el8_6 |
| Red Hat:rhel_aus:8.6::appstream | firefox-debugsource | 0 | 0:115.12.0-1.el8_6 |
| Red Hat:rhel_aus:8.6::appstream | thunderbird | 0 | 0:115.12.1-1.el8_6 |
| Red Hat:rhel_aus:8.6::appstream | thunderbird-debuginfo | 0 | 0:115.12.1-1.el8_6 |
| Red Hat:rhel_aus:8.6::appstream | thunderbird-debugsource | 0 | 0:115.12.1-1.el8_6 |
| Red Hat:rhel_e4s:8.4::appstream | firefox | 0 | 0:115.12.0-1.el8_4 |
| Red Hat:rhel_e4s:8.4::appstream | firefox-debuginfo | 0 | 0:115.12.0-1.el8_4 |
| Red Hat:rhel_e4s:8.4::appstream | firefox-debugsource | 0 | 0:115.12.0-1.el8_4 |
| Red Hat:rhel_e4s:8.4::appstream | thunderbird | 0 | 0:115.12.1-1.el8_4 |
| Red Hat:rhel_e4s:8.4::appstream | thunderbird-debuginfo | 0 | 0:115.12.1-1.el8_4 |
| Red Hat:rhel_e4s:8.4::appstream | thunderbird-debugsource | 0 | 0:115.12.1-1.el8_4 |
| Red Hat:rhel_e4s:8.6::appstream | firefox | 0 | 0:115.12.0-1.el8_6 |
| Red Hat:rhel_e4s:8.6::appstream | firefox-debuginfo | 0 | 0:115.12.0-1.el8_6 |
| Red Hat:rhel_e4s:8.6::appstream | firefox-debugsource | 0 | 0:115.12.0-1.el8_6 |
| Red Hat:rhel_e4s:8.6::appstream | thunderbird | 0 | 0:115.12.1-1.el8_6 |
| Red Hat:rhel_e4s:8.6::appstream | thunderbird-debuginfo | 0 | 0:115.12.1-1.el8_6 |
| Red Hat:rhel_e4s:8.6::appstream | thunderbird-debugsource | 0 | 0:115.12.1-1.el8_6 |
| Red Hat:rhel_e4s:9.0::appstream | firefox | 0 | 0:115.12.0-1.el9_0 |
| Red Hat:rhel_e4s:9.0::appstream | firefox-debuginfo | 0 | 0:115.12.0-1.el9_0 |
| Red Hat:rhel_e4s:9.0::appstream | firefox-debugsource | 0 | 0:115.12.0-1.el9_0 |
| Red Hat:rhel_e4s:9.0::appstream | thunderbird | 0 | 0:115.12.1-1.el9_0 |
| Red Hat:rhel_e4s:9.0::appstream | thunderbird-debuginfo | 0 | 0:115.12.1-1.el9_0 |
| Red Hat:rhel_e4s:9.0::appstream | thunderbird-debugsource | 0 | 0:115.12.1-1.el9_0 |
| Red Hat:rhel_eus:8.8::appstream | firefox | 0 | 0:115.12.0-1.el8_8 |
| Red Hat:rhel_eus:8.8::appstream | firefox-debuginfo | 0 | 0:115.12.0-1.el8_8 |
| Red Hat:rhel_eus:8.8::appstream | firefox-debugsource | 0 | 0:115.12.0-1.el8_8 |
| Red Hat:rhel_eus:8.8::appstream | thunderbird | 0 | 0:115.12.1-1.el8_8 |
| Red Hat:rhel_eus:8.8::appstream | thunderbird-debuginfo | 0 | 0:115.12.1-1.el8_8 |
| Red Hat:rhel_eus:8.8::appstream | thunderbird-debugsource | 0 | 0:115.12.1-1.el8_8 |
| Red Hat:rhel_eus:9.2::appstream | firefox | 0 | 0:115.12.0-1.el9_2 |
| Red Hat:rhel_eus:9.2::appstream | firefox-debuginfo | 0 | 0:115.12.0-1.el9_2 |
| Red Hat:rhel_eus:9.2::appstream | firefox-debugsource | 0 | 0:115.12.0-1.el9_2 |
| Red Hat:rhel_eus:9.2::appstream | firefox-x11 | 0 | 0:115.12.0-1.el9_2 |
| Red Hat:rhel_eus:9.2::appstream | thunderbird | 0 | 0:115.12.1-1.el9_2 |
| Red Hat:rhel_eus:9.2::appstream | thunderbird-debuginfo | 0 | 0:115.12.1-1.el9_2 |
| Red Hat:rhel_eus:9.2::appstream | thunderbird-debugsource | 0 | 0:115.12.1-1.el9_2 |
| Red Hat:rhel_tus:8.4::appstream | firefox | 0 | 0:115.12.0-1.el8_4 |
| Red Hat:rhel_tus:8.4::appstream | firefox-debuginfo | 0 | 0:115.12.0-1.el8_4 |
| Red Hat:rhel_tus:8.4::appstream | firefox-debugsource | 0 | 0:115.12.0-1.el8_4 |
| Red Hat:rhel_tus:8.4::appstream | thunderbird | 0 | 0:115.12.1-1.el8_4 |
| Red Hat:rhel_tus:8.4::appstream | thunderbird-debuginfo | 0 | 0:115.12.1-1.el8_4 |
| Red Hat:rhel_tus:8.4::appstream | thunderbird-debugsource | 0 | 0:115.12.1-1.el8_4 |
| Red Hat:rhel_tus:8.6::appstream | firefox | 0 | 0:115.12.0-1.el8_6 |
| Red Hat:rhel_tus:8.6::appstream | firefox-debuginfo | 0 | 0:115.12.0-1.el8_6 |
| Red Hat:rhel_tus:8.6::appstream | firefox-debugsource | 0 | 0:115.12.0-1.el8_6 |
| Red Hat:rhel_tus:8.6::appstream | thunderbird | 0 | 0:115.12.1-1.el8_6 |
| Red Hat:rhel_tus:8.6::appstream | thunderbird-debuginfo | 0 | 0:115.12.1-1.el8_6 |
| Red Hat:rhel_tus:8.6::appstream | thunderbird-debugsource | 0 | 0:115.12.1-1.el8_6 |
| Rocky Linux:8 | firefox | 0 | 0:115.12.0-1.el8_10 |
| Rocky Linux:8 | thunderbird | 0 | 0:115.12.1-1.el8_10 |
| Rocky Linux:9 | firefox | 0 | 0:115.12.0-1.el9_4 |
| Rocky Linux:9 | thunderbird | 0 | 0:115.12.1-1.el9_4 |
| SUSE:Enterprise Storage 7.1 | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Enterprise Storage 7.1 | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-ESPOS | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Linux Enterprise High Performance Computing 15 SP4-LTSS | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP5 | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP5 | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP6 | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP6 | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise Module for Package Hub 15 SP5 | MozillaThunderbird | 0 | 115.12.0-150200.8.163.1 |
| SUSE:Linux Enterprise Module for Package Hub 15 SP6 | MozillaThunderbird | 0 | 115.12.0-150200.8.163.1 |
| SUSE:Linux Enterprise Server 12 SP5 | MozillaFirefox | 0 | 115.13.0-112.218.1 |
| SUSE:Linux Enterprise Server 12 SP5 | MozillaFirefox | 0 | 115.12.0-112.215.1 |
| SUSE:Linux Enterprise Server 15 SP2-LTSS | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Linux Enterprise Server 15 SP2-LTSS | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise Server 15 SP4-LTSS | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Linux Enterprise Server 15 SP4-LTSS | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | MozillaFirefox | 0 | 115.13.0-112.218.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | MozillaFirefox | 0 | 115.12.0-112.215.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP2 | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP2 | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP4 | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP4 | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | MozillaFirefox | 0 | 115.13.0-112.218.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | MozillaFirefox | 0 | 115.12.0-112.215.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP5 | MozillaThunderbird | 0 | 115.12.0-150200.8.163.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP6 | MozillaThunderbird | 0 | 115.12.0-150200.8.163.1 |
| Ubuntu:18.04:LTS | mozjs38 | 0 | No fix |
| Ubuntu:18.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:20.04:LTS | firefox | 0 | 127.0.2+build1-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:115.12.0+build3-0ubuntu0.20.04.1 |
| Ubuntu:22.04:LTS | mozjs102 | 0 | No fix |
| Ubuntu:22.04:LTS | mozjs78 | 0 | No fix |
| Ubuntu:22.04:LTS | mozjs91 | 0 | No fix |
| Ubuntu:22.04:LTS | thunderbird | 0 | 1:115.12.0+build3-0ubuntu0.22.04.1 |
| Ubuntu:23.10 | thunderbird | 0 | 1:115.12.0+build3-0ubuntu0.23.10.1 |
| Ubuntu:24.04:LTS | mozjs102 | 0 | No fix |
| 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 |
| Wolfi | firefox | 0 | 127.0.2-r0 |
| openSUSE:Leap 15.5 | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| openSUSE:Leap 15.5 | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| openSUSE:Leap 15.5 | MozillaThunderbird | 0 | 115.12.0-150200.8.163.1 |
| openSUSE:Leap 15.6 | MozillaFirefox | 0 | 115.12.0-150200.152.140.2 |
| openSUSE:Leap 15.6 | MozillaFirefox | 0 | 115.13.0-150200.152.143.1 |
| openSUSE:Leap 15.6 | MozillaThunderbird | 0 | 115.12.0-150200.8.163.1 |
| openSUSE:Tumbleweed | MozillaFirefox | 0 | 127.0-1.1 |
| openSUSE:Tumbleweed | MozillaThunderbird | 0 | 115.12.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