CVE-2021-4129
Critical · 9.8CVSS
9.8
EPSS
1.1%
Published
Dec 22, 2022
CISA due date
—
Cloudanix analysis
Older versions of popular web browsers and email programs contain flaws that could let attackers take over a computer simply by sending bad data, so updating them removes the risk.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Low
- Impact
- Remote Code Execution
- Component
- Application
- Class
- Memory Corruption
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Multiple memory safety bugs resulting in memory corruption that can be leveraged for arbitrary code execution.
Why it matters to the business
Compromise of end-user systems running affected browsers or email clients can lead to data theft, credential harvesting, or further network intrusion, with widespread impact due to high ecosystem prevalence of these products.
How an attack unfolds
Attackers leverage publicly available exploits to deliver malicious web content or email attachments that trigger the memory corruption bugs, achieving arbitrary code execution with no user interaction required beyond visiting a page or opening a message.
How to fix it
Upgrade Mozilla Firefox to 95 or later, Firefox ESR to 91.4.0 or later, and Thunderbird to 91.4.0 or later. Apply updates immediately given the four-year age of the disclosure and available exploits.
How to confirm the fix worked
Inspect installed application versions against the minimum fixed releases and confirm no vulnerable binaries remain in deployment.
Typical attack path
- Host malicious content on attacker-controlled site or deliver via phishing email
- Victim browser or client processes the crafted input triggering a memory safety bug
- Memory corruption occurs enabling control of instruction pointer
- Shellcode executes to run arbitrary commands on the system
How to detect it
Search browser and email client crash logs, process creation events following web or email activity, and any unexpected child processes spawned from firefox.exe or thunderbird.exe for signs of prior exploitation attempts.
What your security team should do
- Immediately deploy updates to all affected Mozilla products across the environment
- Block known malicious domains associated with exploit kits until patches are applied
- Enable application allow-listing and sandboxing where possible to limit post-exploitation impact
- Review endpoint detection logs for signs of browser process anomalies over the past 90 days
The record
Mozilla developers and community members Julian Hector, Randell Jesup, Gabriele Svelto, Tyson Smith, Christian Holler, and Masayuki Nakano reported memory safety bugs present in Firefox 94. Some of these bugs showed evidence of memory corruption and we presume that with enough effort some of these could have been exploited to run arbitrary code. This vulnerability affects Firefox < 95, Firefox ESR < 91.4.0, and Thunderbird < 91.4.0.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:10 | thunderbird | 0 | 1:91.4.1-1~deb10u1 |
| Debian:11 | firefox-esr | 0 | 91.4.1esr-1~deb11u1 |
| Debian:11 | thunderbird | 0 | 1:91.4.1-1~deb11u1 |
| Debian:12 | firefox-esr | 0 | 91.4.0esr-1 |
| Debian:12 | thunderbird | 0 | 1:91.4.0-1 |
| Debian:13 | firefox-esr | 0 | 91.4.0esr-1 |
| Debian:13 | thunderbird | 0 | 1:91.4.0-1 |
| Mageia:8 | firefox | 0 | 91.4.0-1.mga8 |
| Mageia:8 | firefox-l10n | 0 | 91.4.0-1.mga8 |
| Mageia:8 | thunderbird | 0 | 91.4.0-1.mga8 |
| Mageia:8 | thunderbird-l10n | 0 | 91.4.0-1.mga8 |
| Red Hat:enterprise_linux:7::client | firefox | 0 | 0:91.4.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | firefox-debuginfo | 0 | 0:91.4.0-1.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird | 0 | 0:91.4.0-3.el7_9 |
| Red Hat:enterprise_linux:7::client | thunderbird-debuginfo | 0 | 0:91.4.0-3.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox | 0 | 0:91.4.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | firefox-debuginfo | 0 | 0:91.4.0-1.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird | 0 | 0:91.4.0-3.el7_9 |
| Red Hat:enterprise_linux:7::server | thunderbird-debuginfo | 0 | 0:91.4.0-3.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox | 0 | 0:91.4.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | firefox-debuginfo | 0 | 0:91.4.0-1.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird | 0 | 0:91.4.0-3.el7_9 |
| Red Hat:enterprise_linux:7::workstation | thunderbird-debuginfo | 0 | 0:91.4.0-3.el7_9 |
| Red Hat:enterprise_linux:8::appstream | firefox | 0 | 0:91.4.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | firefox-debuginfo | 0 | 0:91.4.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | firefox-debugsource | 0 | 0:91.4.0-1.el8_5 |
| Red Hat:enterprise_linux:8::appstream | thunderbird | 0 | 0:91.4.0-2.el8_5 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debuginfo | 0 | 0:91.4.0-2.el8_5 |
| Red Hat:enterprise_linux:8::appstream | thunderbird-debugsource | 0 | 0:91.4.0-2.el8_5 |
| Red Hat:rhel_e4s:8.1::appstream | firefox | 0 | 0:91.4.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | firefox-debuginfo | 0 | 0:91.4.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | firefox-debugsource | 0 | 0:91.4.0-1.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird | 0 | 0:91.4.0-2.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird-debuginfo | 0 | 0:91.4.0-2.el8_1 |
| Red Hat:rhel_e4s:8.1::appstream | thunderbird-debugsource | 0 | 0:91.4.0-2.el8_1 |
| Red Hat:rhel_eus:8.2::appstream | firefox | 0 | 0:91.4.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | firefox-debuginfo | 0 | 0:91.4.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | firefox-debugsource | 0 | 0:91.4.0-1.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | thunderbird | 0 | 0:91.4.0-2.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | thunderbird-debuginfo | 0 | 0:91.4.0-2.el8_2 |
| Red Hat:rhel_eus:8.2::appstream | thunderbird-debugsource | 0 | 0:91.4.0-2.el8_2 |
| Red Hat:rhel_eus:8.4::appstream | firefox | 0 | 0:91.4.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | firefox-debuginfo | 0 | 0:91.4.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | firefox-debugsource | 0 | 0:91.4.0-1.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird | 0 | 0:91.4.0-2.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird-debuginfo | 0 | 0:91.4.0-2.el8_4 |
| Red Hat:rhel_eus:8.4::appstream | thunderbird-debugsource | 0 | 0:91.4.0-2.el8_4 |
| Rocky Linux:8 | firefox | 0 | 0:91.4.0-1.el8_5 |
| Rocky Linux:8 | thunderbird | 0 | 0:91.4.0-2.el8_5 |
| Ubuntu:18.04:LTS | thunderbird | 0 | 1:91.5.0+build1-0ubuntu0.18.04.1 |
| Ubuntu:20.04:LTS | thunderbird | 0 | 1:91.5.0+build1-0ubuntu0.20.04.1 |
Related vulnerabilities
- CVE-2024-5696 By manipulating the text in an `input` tag, an attacker could have caused corrupt memory… Also affects thunderbird
- CVE-2024-5700 Memory safety bugs present in Firefox 126, Firefox ESR 115.11, and Thunderbird 115.11. Also affects thunderbird
- CVE-2024-5702 Memory corruption in the networking stack could have led to a potentially exploitable… Also affects thunderbird
- CVE-2024-5693 Offscreen Canvas did not properly track cross-origin tainting, which could be used to… Also affects thunderbird
- CVE-2024-5688 If a garbage collection was triggered at the right time, a use-after-free could have… Also affects thunderbird
- CVE-2024-5691 By tricking the browser with a `X-Frame-Options` header, a sandboxed iframe could have… Also affects thunderbird
- CVE-2024-5690 By monitoring the time certain operations take, an attacker could have guessed which… Also affects thunderbird
- CVE-2024-4777 Memory safety bugs present in Firefox 125, Firefox ESR 115.10, and Thunderbird 115.10. Also affects thunderbird