CVE-2023-29541
High · 8.8CVSS
8.8
EPSS
0.7%
Published
Jun 2, 2023
CISA due date
—
Cloudanix analysis
On some Linux computers a web browser flaw could let attackers run harmful commands if users download certain files, potentially giving outsiders control of the machine.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Remote Code Execution
- Component
- Application
- Class
- Improper Input Validation
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Improper input validation allows .desktop files downloaded via the browser to be interpreted as executable launchers containing attacker-controlled commands on certain Linux distributions.
Why it matters to the business
Successful exploitation can lead to arbitrary command execution on user workstations, resulting in data compromise, malware deployment, or lateral movement within Linux desktop environments.
How an attack unfolds
An attacker prepares a malicious .desktop file embedding shell commands and hosts it for download. A victim using a vulnerable browser on an affected Linux distribution downloads the file; the browser's failure to sanitize the file type permits the desktop environment to treat it as an executable, running the embedded commands under the user's context.
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. Block or sanitize .desktop file downloads where possible and restrict execution of downloaded launchers.
How to confirm the fix worked
Verify installed browser versions meet or exceed the fixed releases listed above; attempt controlled download of a benign .desktop file and confirm it is not treated as executable.
Typical attack path
- Craft malicious .desktop file containing arbitrary commands
- Host file on attacker-controlled web server
- Lure user to download via social engineering or compromised site
- Browser accepts and stores file without proper type handling
- Desktop environment executes file upon interaction, running commands
How to detect it
Review browser download logs and file system events for .desktop files originating from the browser; inspect process execution chains starting from download directories or file open handlers; correlate with user activity around unexpected command execution.
- execution of files ending in .desktop from browser download paths
- xdg-desktop or desktop-file-execute processes launched from ~/Downloads
- unexpected shell commands in .desktop Exec= entries within user download folders
What your security team should do
- Prioritize immediate browser updates across all Linux endpoints
- Implement download restrictions or sandboxing for file types that can execute commands
- Update endpoint detection rules to flag execution of downloaded .desktop files
The record
Firefox did not properly handle downloads of files ending in <code>.desktop</code>, which can be interpreted to run attacker-controlled commands. <br>*This bug only affects Firefox for Linux on certain Distributions. Other operating systems are unaffected, and Mozilla is unable to enumerate all affected Linux Distributions.*. 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 | 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