CVE-2023-28162
High · 8.8CVSS
8.8
EPSS
0.7%
Published
Jun 2, 2023
CISA due date
—
Cloudanix analysis
A bug in the way certain web browsers handle audio features could let attackers take over a user’s computer simply by getting them to visit a malicious website.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Moderate
- Impact
- Remote Code Execution
- Component
- Application
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
A type confusion flaw in AudioWorklet handling allows casting an object reference to an invalid dynamic type, producing memory corruption that can be leveraged for arbitrary code execution or denial of service.
Why it matters to the business
Successful exploitation can let attackers run code on end-user systems via malicious web content, resulting in data theft, ransomware deployment, or loss of productivity across any organization whose workforce relies on the affected browsers.
How an attack unfolds
An attacker prepares a web page containing a malicious AudioWorklet that triggers the invalid type cast. When a victim loads the page in a vulnerable browser, the corruption occurs inside the content process and can be turned into code execution without further user interaction beyond visiting the page.
How to fix it
Upgrade Mozilla Firefox to 111 or newer, Firefox ESR to 102.9 or newer, and Thunderbird to 102.9 or newer. Apply updates through the product’s built-in updater or enterprise deployment channels as soon as they become available.
How to confirm the fix worked
Confirm installed versions meet or exceed the fixed releases listed above. Reproduce known-safe AudioWorklet usage patterns and ensure no crashes occur under normal operation.
Typical attack path
- Attacker hosts a crafted web page that exercises AudioWorklet code paths
- Victim is lured to the page through phishing or compromised sites
- Browser parses and executes the malicious AudioWorklet
- Type confusion produces memory corruption
- Attacker achieves code execution or browser crash
How to detect it
Review browser crash reports and process logs for faults occurring inside AudioWorklet or media-related modules; correlate with web-request logs to suspicious domains around the time of any crash.
What your security team should do
- Immediately deploy the latest fixed browser versions to all managed endpoints
- Block known malicious domains that have been observed serving similar browser exploits
- Enable browser crash reporting and review logs for repeated AudioWorklet-related faults
- Communicate the urgency of updates to end users and require confirmation of upgrade
The record
While implementing AudioWorklets, some code may have casted one type to another, invalid, dynamic type. This could have led to a potentially exploitable crash. This vulnerability affects Firefox < 111, Firefox ESR < 102.9, and Thunderbird < 102.9.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| AlmaLinux:8 | firefox | 0 | 102.9.0-3.el8_7.alma |
| AlmaLinux:8 | thunderbird | 0 | 102.9.0-1.el8_7.alma |
| AlmaLinux:9 | firefox | 0 | 102.9.0-3.el9_1.alma |
| AlmaLinux:9 | firefox-x11 | 0 | 102.9.0-3.el9_1.alma |
| AlmaLinux:9 | thunderbird | 0 | 102.9.0-1.el9_1.alma |
| Debian:10 | firefox-esr | 0 | 102.9.0esr-1~deb10u1 |
| Debian:10 | thunderbird | 0 | 1:102.9.0-1~deb10u1 |
| Debian:11 | firefox-esr | 0 | 102.9.0esr-1~deb11u1 |
| Debian:11 | thunderbird | 0 | 1:102.9.0-1~deb11u1 |
| Debian:12 | firefox-esr | 0 | 102.9.0esr-1 |
| Debian:12 | thunderbird | 0 | 1:102.9.0-1 |
| Debian:13 | firefox-esr | 0 | 102.9.0esr-1 |
| Debian:13 | thunderbird | 0 | 1:102.9.0-1 |
| Mageia:8 | firefox | 0 | 102.9.0-1.mga8 |
| Mageia:8 | firefox-l10n | 0 | 102.9.0-1.mga8 |
| Mageia:8 | nss | 0 | 3.89.0-1.mga8 |
| Mageia:8 | thunderbird | 0 | 102.9.0-1.mga8 |
| Mageia:8 | thunderbird-l10n | 0 | 102.9.0-1.mga8 |
| Red Hat:enterprise_linux:7::client | firefox | 0 | 0:102.9.0-3.el7_9 |
| Red Hat:enterprise_linux:7::client | firefox-debuginfo | 0 | 0:102.9.0-3.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird | 0 | 0:102.9.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird-debuginfo | 0 | 0:102.9.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox | 0 | 0:102.9.0-3.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox-debuginfo | 0 | 0:102.9.0-3.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird | 0 | 0:102.9.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird-debuginfo | 0 | 0:102.9.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox | 0 | 0:102.9.0-3.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox-debuginfo | 0 | 0:102.9.0-3.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird | 0 | 0:102.9.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird-debuginfo | 0 | 0:102.9.0-1.el7_9 |
| Red Hat:enterprise_linux:8::appstream | firefox | 0 | 0:102.9.0-3.el8_7 |
| Red Hat:enterprise_linux:8::appstream | firefox-debuginfo | 0 | 0:102.9.0-3.el8_7 |
| Red Hat:enterprise_linux:8::appstream | firefox-debugsource | 0 | 0:102.9.0-3.el8_7 |
| Red Hat:enterprise_linux:8::appstream | thunderbird | 0 | 0:102.9.0-1.el8_7 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debuginfo | 0 | 0:102.9.0-1.el8_7 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debugsource | 0 | 0:102.9.0-1.el8_7 |
| Red Hat:enterprise_linux:9::appstream | firefox | 0 | 0:102.9.0-3.el9_1 |
| Red Hat:enterprise_linux:9::appstream | firefox-debuginfo | 0 | 0:102.9.0-3.el9_1 |
| Red Hat:enterprise_linux:9::appstream | firefox-debugsource | 0 | 0:102.9.0-3.el9_1 |
| Red Hat:enterprise_linux:9::appstream | firefox-x11 | 0 | 0:102.9.0-3.el9_1 |
| Red Hat:enterprise_linux:9::appstream | thunderbird | 0 | 0:102.9.0-1.el9_1 |
| Red Hat:enterprise_linux:9::appstream | thunderbird-debuginfo | 0 | 0:102.9.0-1.el9_1 |
| Red Hat:enterprise_linux:9::appstream | thunderbird-debugsource | 0 | 0:102.9.0-1.el9_1 |
| Red Hat:rhel_aus:8.2::appstream | firefox | 0 | 0:102.9.0-4.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | firefox-debuginfo | 0 | 0:102.9.0-4.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | firefox-debugsource | 0 | 0:102.9.0-4.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | thunderbird | 0 | 0:102.9.0-2.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | thunderbird-debuginfo | 0 | 0:102.9.0-2.el8_2 |
| Red Hat:rhel_aus:8.2::appstream | thunderbird-debugsource | 0 | 0:102.9.0-2.el8_2 |
| Red Hat:rhel_e4s:8.1::appstream | firefox | 0 | 0:102.9.0-4.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | firefox-debuginfo | 0 | 0:102.9.0-4.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | firefox-debugsource | 0 | 0:102.9.0-4.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird | 0 | 0:102.9.0-2.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird-debuginfo | 0 | 0:102.9.0-2.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird-debugsource | 0 | 0:102.9.0-2.el8_1 |
| Red Hat:rhel_e4s:8.2::appstream | firefox | 0 | 0:102.9.0-4.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | firefox-debuginfo | 0 | 0:102.9.0-4.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | firefox-debugsource | 0 | 0:102.9.0-4.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | thunderbird | 0 | 0:102.9.0-2.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | thunderbird-debuginfo | 0 | 0:102.9.0-2.el8_2 |
| Red Hat:rhel_e4s:8.2::appstream | thunderbird-debugsource | 0 | 0:102.9.0-2.el8_2 |
| Red Hat:rhel_eus:8.4::appstream | firefox | 0 | 0:102.9.0-4.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | firefox-debuginfo | 0 | 0:102.9.0-4.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | firefox-debugsource | 0 | 0:102.9.0-4.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird | 0 | 0:102.9.0-2.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird-debuginfo | 0 | 0:102.9.0-2.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird-debugsource | 0 | 0:102.9.0-2.el8_4 |
| Red Hat:rhel_eus:8.6::appstream | firefox | 0 | 0:102.9.0-3.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | firefox-debuginfo | 0 | 0:102.9.0-3.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | firefox-debugsource | 0 | 0:102.9.0-3.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | thunderbird | 0 | 0:102.9.0-1.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | thunderbird-debuginfo | 0 | 0:102.9.0-1.el8_6 |
| Red Hat:rhel_eus:8.6::appstream | thunderbird-debugsource | 0 | 0:102.9.0-1.el8_6 |
| Red Hat:rhel_eus:9.0::appstream | firefox | 0 | 0:102.9.0-3.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | firefox-debuginfo | 0 | 0:102.9.0-3.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | firefox-debugsource | 0 | 0:102.9.0-3.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | thunderbird | 0 | 0:102.9.0-1.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | thunderbird-debuginfo | 0 | 0:102.9.0-1.el9_0 |
| Red Hat:rhel_eus:9.0::appstream | thunderbird-debugsource | 0 | 0:102.9.0-1.el9_0 |
| Red Hat:rhel_tus:8.2::appstream | firefox | 0 | 0:102.9.0-4.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | firefox-debuginfo | 0 | 0:102.9.0-4.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | firefox-debugsource | 0 | 0:102.9.0-4.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | thunderbird | 0 | 0:102.9.0-2.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | thunderbird-debuginfo | 0 | 0:102.9.0-2.el8_2 |
| Red Hat:rhel_tus:8.2::appstream | thunderbird-debugsource | 0 | 0:102.9.0-2.el8_2 |
| Rocky Linux:8 | firefox | 0 | 0:102.9.0-3.el8_7 |
| Rocky Linux:8 | thunderbird | 0 | 0:102.9.0-1.el8_7 |
| Rocky Linux:9 | firefox | 0 | 0:102.9.0-3.el9_1 |
| Rocky Linux:9 | thunderbird | 0 | 0:102.9.0-1.el9_1 |
| SUSE:Enterprise Storage 7 | MozillaFirefox | 0 | 102.9.0-150200.152.81.1 |
| SUSE:Enterprise Storage 7.1 | MozillaFirefox | 0 | 102.9.0-150200.152.81.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP1-LTSS | MozillaFirefox | 0 | 102.9.0-150000.150.79.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP2-LTSS | MozillaFirefox | 0 | 102.9.0-150200.152.81.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-ESPOS | MozillaFirefox | 0 | 102.9.0-150200.152.81.1 |
| SUSE:Linux Enterprise High Performance Computing 15 SP3-LTSS | MozillaFirefox | 0 | 102.9.0-150200.152.81.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP4 | MozillaFirefox | 0 | 102.9.0-150200.152.81.1 |
| SUSE:Linux Enterprise Module for Package Hub 15 SP4 | MozillaThunderbird | 0 | 102.9.1-150200.8.110.2 |
| SUSE:Linux Enterprise Real Time 15 SP3 | MozillaFirefox | 0 | 102.9.0-150200.152.81.1 |
| SUSE:Linux Enterprise Server 12 SP2-BCL | MozillaFirefox | 0 | 102.9.0-112.153.1 |
| SUSE:Linux Enterprise Server 12 SP4-ESPOS | MozillaFirefox | 0 | 102.9.0-112.153.1 |
| SUSE:Linux Enterprise Server 12 SP4-LTSS | MozillaFirefox | 0 | 102.9.0-112.153.1 |
| SUSE:Linux Enterprise Server 12 SP5 | MozillaFirefox | 0 | 102.9.0-112.153.1 |
| SUSE:Linux Enterprise Server 15 SP1-LTSS | MozillaFirefox | 0 | 102.9.0-150000.150.79.1 |
| SUSE:Linux Enterprise Server 15 SP2-LTSS | MozillaFirefox | 0 | 102.9.0-150200.152.81.1 |
| SUSE:Linux Enterprise Server 15 SP3-LTSS | MozillaFirefox | 0 | 102.9.0-150200.152.81.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP4 | MozillaFirefox | 0 | 102.9.0-112.153.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP5 | MozillaFirefox | 0 | 102.9.0-112.153.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP1 | MozillaFirefox | 0 | 102.9.0-150000.150.79.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP2 | MozillaFirefox | 0 | 102.9.0-150200.152.81.1 |
| SUSE:Linux Enterprise Server for SAP Applications 15 SP3 | MozillaFirefox | 0 | 102.9.0-150200.152.81.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP5 | MozillaFirefox | 0 | 102.9.0-112.153.1 |
| SUSE:Linux Enterprise Workstation Extension 15 SP4 | MozillaThunderbird | 0 | 102.9.1-150200.8.110.2 |
| SUSE:OpenStack Cloud 9 | MozillaFirefox | 0 | 102.9.0-112.153.1 |
| SUSE:OpenStack Cloud Crowbar 9 | MozillaFirefox | 0 | 102.9.0-112.153.1 |
| Ubuntu:18.04:LTS | firefox | 0 | 111.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.9.0+build1-0ubuntu0.18.04.1 |
| Ubuntu:20.04:LTS | firefox | 0 | 111.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.9.0+build1-0ubuntu0.20.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.9.0+build1-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.9.0-150200.152.81.1 |
| openSUSE:Leap 15.4 | MozillaThunderbird | 0 | 102.9.1-150200.8.110.2 |
| openSUSE:Tumbleweed | MozillaFirefox | 0 | 111.0.1-1.1 |
| openSUSE:Tumbleweed | MozillaThunderbird | 0 | 102.9.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