CVE-2023-29535
Medium · 6.5CVSS
6.5
EPSS
0.7%
Published
Jun 2, 2023
CISA due date
—
Cloudanix analysis
A flaw in how browsers clean up memory could let a website cause the browser to crash or potentially run harmful code.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Denial Of Service
- Component
- Application
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Memory corruption occurs when weak maps are accessed before correct tracing after garbage collector compaction, leading to a potentially exploitable crash.
Why it matters to the business
Users of affected browsers and email clients face application instability or denial of service, with possible remote code execution risk that could lead to data loss or system compromise across large user bases.
How an attack unfolds
An attacker hosts a malicious webpage that triggers repeated garbage collector compaction cycles while manipulating weak map references, causing the browser to dereference untraced memory and crash or execute attacker-controlled code.
How to fix it
Upgrade Firefox to version 112 or later, Firefox ESR to 102.10 or later, Focus for Android to 112 or later, Firefox for Android to 112 or later, and Thunderbird to 102.10 or later.
How to confirm the fix worked
Verify installed product versions meet or exceed the fixed releases listed above and monitor for crash reports involving garbage collector and weak map handling.
Typical attack path
- Victim visits attacker-controlled webpage or receives malicious email
- JavaScript triggers garbage collector compaction
- Weak map access occurs before tracing completes
- Memory corruption is induced leading to crash or code execution
How to detect it
Search browser crash logs and telemetry for entries involving garbage collector compaction and weak map access failures; correlate with web browsing history to suspicious domains.
What your security team should do
- Immediately deploy updates to all affected Mozilla products
- Prioritize browser updates for high-risk user populations
- Enable automatic updates where possible
- Review crash telemetry for related memory corruption signatures
The record
Following a Garbage Collector compaction, weak maps may have been accessed before they were correctly traced. This resulted in memory corruption and a potentially exploitable crash. This vulnerability affects Firefox < 112, Focus for Android < 112, Firefox ESR < 102.10, Firefox for Android < 112, and Thunderbird < 102.10.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:8 | firefox | 0 | 102.10.0-1.el8_7.alma |
| AlmaLinux:8 | thunderbird | 0 | 102.10.0-2.el8_7.alma |
| AlmaLinux:9 | firefox | 0 | 102.10.0-1.el9_1.alma |
| AlmaLinux:9 | firefox-x11 | 0 | 102.10.0-1.el9_1.alma |
| AlmaLinux:9 | thunderbird | 0 | 102.10.0-2.el9_1.alma |
| Debian:10 | firefox-esr | 0 | 102.10.0esr-1~deb10u1 |
| Debian:10 | thunderbird | 0 | 1:102.10.0-1~deb10u1 |
| Debian:11 | firefox-esr | 0 | 102.10.0esr-1~deb11u1 |
| Debian:11 | thunderbird | 0 | 1:102.10.0-1~deb11u1 |
| Debian:12 | firefox-esr | 0 | 102.10.0esr-1 |
| Debian:12 | thunderbird | 0 | 1:102.10.0-1 |
| Debian:13 | firefox-esr | 0 | 102.10.0esr-1 |
| Debian:13 | thunderbird | 0 | 1:102.10.0-1 |
| Mageia:8 | firefox | 0 | 102.10.0-1.mga8 |
| Mageia:8 | firefox-l10n | 0 | 102.10.0-1.mga8 |
| Mageia:8 | libwebp | 0 | 1.1.0-2.1.mga8 |
| Mageia:8 | thunderbird | 0 | 102.10.0-1.mga8 |
| Mageia:8 | thunderbird-l10n | 0 | 102.10.0-1.mga8 |
| Red Hat:enterprise_linux:7::client | firefox | 0 | 0:102.10.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | firefox-debuginfo | 0 | 0:102.10.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird | 0 | 0:102.10.0-2.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird-debuginfo | 0 | 0:102.10.0-2.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox | 0 | 0:102.10.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox-debuginfo | 0 | 0:102.10.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird | 0 | 0:102.10.0-2.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird-debuginfo | 0 | 0:102.10.0-2.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox | 0 | 0:102.10.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox-debuginfo | 0 | 0:102.10.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird | 0 | 0:102.10.0-2.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird-debuginfo | 0 | 0:102.10.0-2.el7_9 |
| Red Hat:enterprise_linux:8::appstream | firefox | 0 | 0:102.10.0-1.el8_7 |
| Red Hat:enterprise_linux:8::appstream | firefox-debuginfo | 0 | 0:102.10.0-1.el8_7 |
| Red Hat:enterprise_linux:8::appstream | firefox-debugsource | 0 | 0:102.10.0-1.el8_7 |
| Red Hat:enterprise_linux:8::appstream | thunderbird | 0 | 0:102.10.0-2.el8_7 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debuginfo | 0 | 0:102.10.0-2.el8_7 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debugsource | 0 | 0:102.10.0-2.el8_7 |
| Red Hat:enterprise_linux:9::appstream | firefox | 0 | 0:102.10.0-1.el9_1 |
| Red Hat:enterprise_linux:9::appstream | firefox-debuginfo | 0 | 0:102.10.0-1.el9_1 |
| Red Hat:enterprise_linux:9::appstream | firefox-debugsource | 0 | 0:102.10.0-1.el9_1 |
| Red Hat:enterprise_linux:9::appstream | firefox-x11 | 0 | 0:102.10.0-1.el9_1 |
| Red Hat:enterprise_linux:9::appstream | thunderbird | 0 | 0:102.10.0-2.el9_1 |
| Red Hat:enterprise_linux:9::appstream | thunderbird-debuginfo | 0 | 0:102.10.0-2.el9_1 |
| Red Hat:enterprise_linux:9::appstream | thunderbird-debugsource | 0 | 0:102.10.0-2.el9_1 |
| Red Hat:rhel_aus:8.2::appstream | firefox | 0 | 0:102.10.0-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | firefox-debuginfo | 0 | 0:102.10.0-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | firefox-debugsource | 0 | 0:102.10.0-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | thunderbird | 0 | 0:102.10.0-2.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | thunderbird-debuginfo | 0 | 0:102.10.0-2.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | thunderbird-debugsource | 0 | 0:102.10.0-2.el8_2 |
| Red Hat:rhel_e4s:8.1::appstream | firefox | 0 | 0:102.10.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | firefox-debuginfo | 0 | 0:102.10.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | firefox-debugsource | 0 | 0:102.10.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird | 0 | 0:102.10.0-2.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird-debuginfo | 0 | 0:102.10.0-2.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird-debugsource | 0 | 0:102.10.0-2.el8_1 |
| Red Hat:rhel_e4s:8.2::appstream | firefox | 0 | 0:102.10.0-1.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | firefox-debuginfo | 0 | 0:102.10.0-1.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | firefox-debugsource | 0 | 0:102.10.0-1.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | thunderbird | 0 | 0:102.10.0-2.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | thunderbird-debuginfo | 0 | 0:102.10.0-2.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | thunderbird-debugsource | 0 | 0:102.10.0-2.el8_2 |
| Red Hat:rhel_eus:8.4::appstream | firefox | 0 | 0:102.10.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | firefox-debuginfo | 0 | 0:102.10.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | firefox-debugsource | 0 | 0:102.10.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird | 0 | 0:102.10.0-2.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird-debuginfo | 0 | 0:102.10.0-2.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird-debugsource | 0 | 0:102.10.0-2.el8_4 |
| Red Hat:rhel_eus:8.6::appstream | firefox | 0 | 0:102.10.0-1.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | firefox-debuginfo | 0 | 0:102.10.0-1.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | firefox-debugsource | 0 | 0:102.10.0-1.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | thunderbird | 0 | 0:102.10.0-2.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | thunderbird-debuginfo | 0 | 0:102.10.0-2.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | thunderbird-debugsource | 0 | 0:102.10.0-2.el8_6 |
| Red Hat:rhel_eus:9.0::appstream | firefox | 0 | 0:102.10.0-1.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | firefox-debuginfo | 0 | 0:102.10.0-1.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | firefox-debugsource | 0 | 0:102.10.0-1.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | thunderbird | 0 | 0:102.10.0-2.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | thunderbird-debuginfo | 0 | 0:102.10.0-2.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | thunderbird-debugsource | 0 | 0:102.10.0-2.el9_0 |
| Red Hat:rhel_tus:8.2::appstream | firefox | 0 | 0:102.10.0-1.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | firefox-debuginfo | 0 | 0:102.10.0-1.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | firefox-debugsource | 0 | 0:102.10.0-1.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | thunderbird | 0 | 0:102.10.0-2.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | thunderbird-debuginfo | 0 | 0:102.10.0-2.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | thunderbird-debugsource | 0 | 0:102.10.0-2.el8_2 |
| Rocky Linux:8 | thunderbird | 0 | 0:102.10.0-2.el8_7 |
| Rocky Linux:9 | thunderbird | 0 | 0:102.10.0-2.el9_1 |
| SUSE:Enterprise Storage 7 | MozillaFirefox | 0 | 102.10.0-150200.152.84.1 |
| SUSE:Enterprise Storage 7.1 | MozillaFirefox | 0 | 102.10.0-150200.152.84.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS | MozillaFirefox | 0 | 102.10.0-150000.150.82.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS | MozillaFirefox | 0 | 102.10.0-150200.152.84.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS | MozillaFirefox | 0 | 102.10.0-150200.152.84.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | MozillaFirefox | 0 | 102.10.0-150200.152.84.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP4 | MozillaFirefox | 0 | 102.10.0-150200.152.84.1 |
| SUSE:Linux Enterprise Module for Package Hub 15 SP4 | MozillaThunderbird | 0 | 102.10.1-150200.8.113.2 |
| SUSE:Linux Enterprise Real Time 15 SP3 | MozillaFirefox | 0 | 102.10.0-150200.152.84.1 |
| SUSE:Linux Enterprise Server 12 SP2-BCL | MozillaFirefox | 0 | 102.10.0-112.156.1 |
| SUSE:Linux Enterprise Server 12 SP4-ESPOS | MozillaFirefox | 0 | 102.10.0-112.156.1 |
| SUSE:Linux Enterprise Server 12 SP4-LTSS | MozillaFirefox | 0 | 102.10.0-112.156.1 |
| SUSE:Linux Enterprise Server 12 SP5 | MozillaFirefox | 0 | 102.10.0-112.156.1 |
| SUSE:Linux Enterprise Server 15 SP1-LTSS | MozillaFirefox | 0 | 102.10.0-150000.150.82.1 |
| SUSE:Linux Enterprise Server 15 SP2-LTSS | MozillaFirefox | 0 | 102.10.0-150200.152.84.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | MozillaFirefox | 0 | 102.10.0-150200.152.84.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP4 | MozillaFirefox | 0 | 102.10.0-112.156.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | MozillaFirefox | 0 | 102.10.0-112.156.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP1 | MozillaFirefox | 0 | 102.10.0-150000.150.82.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP2 | MozillaFirefox | 0 | 102.10.0-150200.152.84.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | MozillaFirefox | 0 | 102.10.0-150200.152.84.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | MozillaFirefox | 0 | 102.10.0-112.156.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP4 | MozillaThunderbird | 0 | 102.10.1-150200.8.113.2 |
| SUSE:OpenStack Cloud 9 | MozillaFirefox | 0 | 102.10.0-112.156.1 |
| SUSE:OpenStack Cloud Crowbar 9 | MozillaFirefox | 0 | 102.10.0-112.156.1 |
| Ubuntu:18.04:LTS | firefox | 0 | 112.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:102.10.0+build2-0ubuntu0.18.04.1 |
| Ubuntu:20.04:LTS | firefox | 0 | 112.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:102.10.0+build2-0ubuntu0.20.04.1 |
| Ubuntu:22.04:LTS | mozjs102 | 0 | 102.11.0-0ubuntu0.22.04.1 |
| Ubuntu:22.04:LTS | mozjs78 | 0 | No fix |
| Ubuntu:22.04:LTS | mozjs91 | 0 | No fix |
| Ubuntu:22.04:LTS | thunderbird | 0 | 1:102.10.0+build2-0ubuntu0.22.04.1 |
| 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.4 | MozillaFirefox | 0 | 102.10.0-150200.152.84.1 |
| openSUSE:Leap 15.4 | MozillaThunderbird | 0 | 102.10.1-150200.8.113.2 |
| openSUSE:Tumbleweed | MozillaFirefox | 0 | 112.0.1-1.1 |
| openSUSE:Tumbleweed | MozillaThunderbird | 0 | 102.10.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