CVE-2023-5171
Medium · 6.5CVSS
6.5
EPSS
1.1%
Published
Sep 27, 2023
CISA due date
—
Cloudanix analysis
A flaw in how memory is cleaned up during code compilation can let an attacker crash the program, potentially disrupting service until fixed.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Denial Of Service
- Component
- Application
- Class
- Use After Free
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Use-after-free during Ion compilation triggered by garbage collection allows an attacker to write two NUL bytes and trigger an exploitable crash.
Why it matters to the business
Service or application crashes can interrupt operations and user access; high downstream usage of the affected component increases exposure and urgency for patching across many deployments.
How an attack unfolds
An attacker crafts input that reaches Ion compilation, forces a garbage collection at a precise moment to create the use-after-free, then uses the resulting write of two NUL bytes to corrupt memory and crash the process; threat actor references to related Chromium issues indicate similar heap manipulation techniques have been observed in the wild.
How to fix it
Upgrade crafatar/crafatar (GIT) to commit bba004acc725b362a5d2d5dfe30cf60e7365a373; apply the equivalent fixed version for any downstream dependents.
How to confirm the fix worked
Confirm the running version or commit hash matches bba004acc725b362a5d2d5dfe30cf60e7365a373 and re-test the Ion compilation path with crafted inputs that previously triggered the crash.
Typical attack path
- Deliver malicious input or page that triggers Ion compilation path
- Induce garbage collection at the vulnerable timing window
- Exploit the freed object to perform the two-byte NUL write
- Trigger memory corruption leading to denial-of-service crash
How to detect it
Review application or browser process crash logs for Ion compilation faults, unexpected NUL byte writes, and use-after-free signatures; correlate with web request logs that reach the compilation stage.
What your security team should do
- Prioritize upgrade of all instances to the listed fixed commit within the next patch cycle
- Monitor EPSS trend and re-evaluate exploit maturity weekly
- Add the affected component to the vulnerability scanning inventory
The record
During Ion compilation, a Garbage Collection could have resulted in a use-after-free condition, allowing an attacker to write two NUL bytes, and cause a potentially exploitable crash. This vulnerability affects Firefox < 118, Firefox ESR < 115.3, and Thunderbird < 115.3.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:9 | firefox | 0 | 115.3.1-1.el9_2.alma.1 |
| AlmaLinux:9 | firefox-x11 | 0 | 115.3.1-1.el9_2.alma.1 |
| AlmaLinux:9 | thunderbird | 0 | 115.3.1-1.el9_2.alma |
| Debian:10 | firefox-esr | 0 | 115.3.0esr-1~deb10u1 |
| Debian:10 | thunderbird | 0 | 1:115.3.1-1~deb10u1 |
| Debian:11 | firefox-esr | 0 | 115.3.0esr-1~deb11u1 |
| Debian:11 | thunderbird | 0 | 1:115.3.1-1~deb11u1 |
| Debian:12 | firefox-esr | 0 | 115.3.0esr-1~deb12u1 |
| Debian:12 | thunderbird | 0 | 1:115.3.1-1~deb12u1 |
| Debian:13 | firefox-esr | 0 | 115.3.0esr-1 |
| Debian:13 | thunderbird | 0 | 1:115.3.0-1 |
| Mageia:9 | firefox | 0 | 115.3.1-1.mga9 |
| Mageia:9 | firefox-l10n | 0 | 115.3.1-1.mga9 |
| Mageia:9 | thunderbird | 0 | 115.3.1-1.mga9 |
| Mageia:9 | thunderbird-l10n | 0 | 115.3.1-1.mga9 |
| Red Hat:enterprise_linux:7::client | firefox | 0 | 0:115.3.1-1.el7_9 |
| Red Hat:enterprise_linux:7::client | firefox-debuginfo | 0 | 0:115.3.1-1.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird | 0 | 0:115.3.1-1.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird-debuginfo | 0 | 0:115.3.1-1.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox | 0 | 0:115.3.1-1.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox-debuginfo | 0 | 0:115.3.1-1.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird | 0 | 0:115.3.1-1.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird-debuginfo | 0 | 0:115.3.1-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox | 0 | 0:115.3.1-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox-debuginfo | 0 | 0:115.3.1-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird | 0 | 0:115.3.1-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird-debuginfo | 0 | 0:115.3.1-1.el7_9 |
| Red Hat:enterprise_linux:8::appstream | firefox | 0 | 0:115.3.1-1.el8_8 |
| Red Hat:enterprise_linux:8::appstream | firefox-debuginfo | 0 | 0:115.3.1-1.el8_8 |
| Red Hat:enterprise_linux:8::appstream | firefox-debugsource | 0 | 0:115.3.1-1.el8_8 |
| Red Hat:enterprise_linux:8::appstream | thunderbird | 0 | 0:115.3.1-1.el8_8 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debuginfo | 0 | 0:115.3.1-1.el8_8 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debugsource | 0 | 0:115.3.1-1.el8_8 |
| Red Hat:enterprise_linux:9::appstream | firefox | 0 | 0:115.3.1-1.el9_2 |
| Red Hat:enterprise_linux:9::appstream | firefox-debuginfo | 0 | 0:115.3.1-1.el9_2 |
| Red Hat:enterprise_linux:9::appstream | firefox-debugsource | 0 | 0:115.3.1-1.el9_2 |
| Red Hat:enterprise_linux:9::appstream | firefox-x11 | 0 | 0:115.3.1-1.el9_2 |
| Red Hat:enterprise_linux:9::appstream | thunderbird | 0 | 0:115.3.1-1.el9_2 |
| Red Hat:enterprise_linux:9::appstream | thunderbird-debuginfo | 0 | 0:115.3.1-1.el9_2 |
| Red Hat:enterprise_linux:9::appstream | thunderbird-debugsource | 0 | 0:115.3.1-1.el9_2 |
| Red Hat:rhel_aus:8.2::appstream | firefox | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | firefox-debuginfo | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | firefox-debugsource | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | thunderbird | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | thunderbird-debuginfo | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | thunderbird-debugsource | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_aus:8.4::appstream | firefox | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_aus:8.4::appstream | firefox-debuginfo | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_aus:8.4::appstream | firefox-debugsource | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_aus:8.4::appstream | thunderbird | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_aus:8.4::appstream | thunderbird-debuginfo | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_aus:8.4::appstream | thunderbird-debugsource | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_e4s:8.1::appstream | firefox | 0 | 0:115.3.1-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | firefox-debuginfo | 0 | 0:115.3.1-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | firefox-debugsource | 0 | 0:115.3.1-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird | 0 | 0:115.3.1-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird-debuginfo | 0 | 0:115.3.1-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird-debugsource | 0 | 0:115.3.1-1.el8_1 |
| Red Hat:rhel_e4s:8.2::appstream | firefox | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | firefox-debuginfo | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | firefox-debugsource | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | thunderbird | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | thunderbird-debuginfo | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | thunderbird-debugsource | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_e4s:8.4::appstream | firefox | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_e4s:8.4::appstream | firefox-debuginfo | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_e4s:8.4::appstream | firefox-debugsource | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_e4s:8.4::appstream | thunderbird | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_e4s:8.4::appstream | thunderbird-debuginfo | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_e4s:8.4::appstream | thunderbird-debugsource | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_eus:8.6::appstream | firefox | 0 | 0:115.3.1-1.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | firefox-debuginfo | 0 | 0:115.3.1-1.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | firefox-debugsource | 0 | 0:115.3.1-1.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | thunderbird | 0 | 0:115.3.1-1.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | thunderbird-debuginfo | 0 | 0:115.3.1-1.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | thunderbird-debugsource | 0 | 0:115.3.1-1.el8_6 |
| Red Hat:rhel_eus:9.0::appstream | firefox | 0 | 0:115.3.1-1.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | firefox-debuginfo | 0 | 0:115.3.1-1.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | firefox-debugsource | 0 | 0:115.3.1-1.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | thunderbird | 0 | 0:115.3.1-1.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | thunderbird-debuginfo | 0 | 0:115.3.1-1.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | thunderbird-debugsource | 0 | 0:115.3.1-1.el9_0 |
| Red Hat:rhel_tus:8.2::appstream | firefox | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | firefox-debuginfo | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | firefox-debugsource | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | thunderbird | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | thunderbird-debuginfo | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | thunderbird-debugsource | 0 | 0:115.3.1-1.el8_2 |
| Red Hat:rhel_tus:8.4::appstream | firefox | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_tus:8.4::appstream | firefox-debuginfo | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_tus:8.4::appstream | firefox-debugsource | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_tus:8.4::appstream | thunderbird | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_tus:8.4::appstream | thunderbird-debuginfo | 0 | 0:115.3.1-1.el8_4 |
| Red Hat:rhel_tus:8.4::appstream | thunderbird-debugsource | 0 | 0:115.3.1-1.el8_4 |
| Rocky Linux:8 | thunderbird | 0 | 0:115.3.1-1.el8_8 |
| Rocky Linux:9 | thunderbird | 0 | 0:115.3.1-1.el9_2 |
| SUSE:Enterprise Storage 7.1 | MozillaFirefox | 0 | 115.3.0-150200.152.108.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS | MozillaFirefox | 0 | 115.3.0-150000.150.107.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS | MozillaFirefox | 0 | 115.3.0-150200.152.108.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS | MozillaFirefox | 0 | 115.3.0-150200.152.108.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | MozillaFirefox | 0 | 115.3.0-150200.152.108.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP4 | MozillaFirefox | 0 | 115.3.0-150200.152.108.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP5 | MozillaFirefox | 0 | 115.3.0-150200.152.108.1 |
| SUSE:Linux Enterprise Module for Package Hub 15 SP4 | MozillaThunderbird | 0 | 115.3.1-150200.8.133.1 |
| SUSE:Linux Enterprise Module for Package Hub 15 SP5 | MozillaThunderbird | 0 | 115.3.1-150200.8.133.1 |
| SUSE:Linux Enterprise Server 12 SP5 | MozillaFirefox | 0 | 115.3.0-112.182.1 |
| SUSE:Linux Enterprise Server 15 SP1-LTSS | MozillaFirefox | 0 | 115.3.0-150000.150.107.1 |
| SUSE:Linux Enterprise Server 15 SP2-LTSS | MozillaFirefox | 0 | 115.3.0-150200.152.108.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | MozillaFirefox | 0 | 115.3.0-150200.152.108.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | MozillaFirefox | 0 | 115.3.0-112.182.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP1 | MozillaFirefox | 0 | 115.3.0-150000.150.107.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP2 | MozillaFirefox | 0 | 115.3.0-150200.152.108.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | MozillaFirefox | 0 | 115.3.0-150200.152.108.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | MozillaFirefox | 0 | 115.3.0-112.182.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP4 | MozillaThunderbird | 0 | 115.3.1-150200.8.133.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP5 | MozillaThunderbird | 0 | 115.3.1-150200.8.133.1 |
| Ubuntu:18.04:LTS | mozjs38 | 0 | No fix |
| Ubuntu:18.04:LTS | mozjs52 | 0 | No fix |
| Ubuntu:20.04:LTS | firefox | 0 | 118.0.1+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.3.1+build1-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.3.1+build1-0ubuntu0.22.04.2 |
| 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 |
| Ubuntu:Pro:22.04:LTS | mozjs78 | 0 | No fix |
| Ubuntu:Pro:24.04:LTS | mozjs102 | 0 | No fix |
| openSUSE:Leap 15.4 | MozillaFirefox | 0 | 115.3.0-150200.152.108.1 |
| openSUSE:Leap 15.4 | MozillaThunderbird | 0 | 115.3.1-150200.8.133.1 |
| openSUSE:Leap 15.5 | MozillaFirefox | 0 | 115.3.0-150200.152.108.1 |
| openSUSE:Leap 15.5 | MozillaThunderbird | 0 | 115.3.1-150200.8.133.1 |
| openSUSE:Tumbleweed | MozillaFirefox | 0 | 118.0.1-1.1 |
| openSUSE:Tumbleweed | MozillaThunderbird | 0 | 115.3.0-1.1 |
| openSUSE:Tumbleweed | firefox-esr | 0 | 128.5.1-1.1 |
Related vulnerabilities
- CVE-2026-0885 Use-after-free in the JavaScript: GC component. Also affects firefox
- CVE-2026-0890 Spoofing issue in the DOM: Copy & Paste and Drag & Drop component. Also affects firefox
- CVE-2026-0886 Incorrect boundary conditions in the Graphics component. Also affects firefox
- CVE-2026-0887 Clickjacking issue, information disclosure in the PDF Viewer component. Also affects firefox
- CVE-2026-0891 Memory safety bugs present in Firefox ESR 140.6, Thunderbird ESR 140.6, Firefox 146 and… Also affects firefox
- CVE-2026-0877 Mitigation bypass in the DOM: Security component. Also affects firefox
- CVE-2026-0883 Information disclosure in the Networking component. Also affects firefox
- CVE-2026-0878 Sandbox escape due to incorrect boundary conditions in the Graphics: CanvasWebGL… Also affects firefox