CVE-2019-8644
High · 8.8CVSS
8.8
EPSS
1.7%
Published
Dec 18, 2019
CISA due date
—
Cloudanix analysis
A flaw in how certain software handles web content could let attackers run harmful code on devices simply by visiting a rigged webpage.
- Exploitation
- Requires User Interaction
- Attacker needs
- User Interaction
- Complexity
- Low
- Impact
- Remote Code Execution
- Component
- Application
- Class
- Use After Free
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
Multiple memory corruption issues including use-after-free in WebKit allow processing of malicious web content to result in arbitrary code execution.
Why it matters to the business
Attackers can compromise user systems through crafted web pages, enabling data theft or further attacks; high ecosystem prevalence increases exposure for any dependent applications.
How an attack unfolds
An attacker serves malicious web content that triggers the use-after-free memory corruption during rendering, achieving arbitrary code execution on the target system. Named threat actors have targeted similar Apple WebKit memory issues in the past.
How to fix it
Upgrade affected products to the fixed versions listed, specifically gitlab-org/gitlab (GIT) at commit 653aeeabba2ac7b5510af3901d1e684436ca901c or later releases that incorporate the memory handling improvements.
How to confirm the fix worked
Verify upgrade to the specified fixed commit or patched release; confirm no vulnerable WebKit versions remain in deployed applications or browsers.
Typical attack path
- Deliver malicious web content via phishing or compromised site
- Victim browser processes the content triggering the use-after-free
- Exploit gains arbitrary code execution within the rendering process
- Escalate to full system access or credential theft
How to detect it
Inspect web server and browser logs for access to suspicious domains or unusual rendering crashes; search for indicators associated with known WebKit memory corruption campaigns listed under threat actors.
What your security team should do
- Prioritize patching all affected instances to the listed fixed commit immediately given the high CVSS and code execution impact
- Monitor for any new exploit maturity developments despite current none status
- Review web content handling surfaces for similar memory issues
The record
Multiple memory corruption issues were addressed with improved memory handling. This issue is fixed in iOS 12.4, macOS Mojave 10.14.6, tvOS 12.4, Safari 12.1.2, iTunes for Windows 12.9.6, iCloud for Windows 7.13, iCloud for Windows 10.6. Processing maliciously crafted web content may lead to arbitrary code execution.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:10 | webkit2gtk | 0 | 2.24.4-1~deb10u1 |
| Debian:11 | webkit2gtk | 0 | 2.24.4-1 |
| Debian:12 | webkit2gtk | 0 | 2.24.4-1 |
| Debian:13 | webkit2gtk | 0 | 2.24.4-1 |
| Mageia:7 | webkit2 | 0 | 2.24.4-1.mga7 |
| Red Hat:enterprise_linux:7::client | webkitgtk4 | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::client | webkitgtk4-debuginfo | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::client | webkitgtk4-devel | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::client | webkitgtk4-doc | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::client | webkitgtk4-jsc | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::client | webkitgtk4-jsc-devel | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::computenode | webkitgtk4 | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::computenode | webkitgtk4-debuginfo | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::computenode | webkitgtk4-devel | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::computenode | webkitgtk4-doc | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::computenode | webkitgtk4-jsc | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::computenode | webkitgtk4-jsc-devel | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::server | webkitgtk4 | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::server | webkitgtk4-debuginfo | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::server | webkitgtk4-devel | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::server | webkitgtk4-doc | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::server | webkitgtk4-jsc | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::server | webkitgtk4-jsc-devel | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::workstation | webkitgtk4 | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::workstation | webkitgtk4-debuginfo | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::workstation | webkitgtk4-devel | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::workstation | webkitgtk4-doc | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::workstation | webkitgtk4-jsc | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:7::workstation | webkitgtk4-jsc-devel | 0 | 0:2.28.2-2.el7 |
| Red Hat:enterprise_linux:8::appstream | webkit2gtk3 | 0 | 0:2.24.4-2.el8_1 |
| Red Hat:enterprise_linux:8::appstream | webkit2gtk3-debuginfo | 0 | 0:2.24.4-2.el8_1 |
| Red Hat:enterprise_linux:8::appstream | webkit2gtk3-debugsource | 0 | 0:2.24.4-2.el8_1 |
| Red Hat:enterprise_linux:8::appstream | webkit2gtk3-devel | 0 | 0:2.24.4-2.el8_1 |
| Red Hat:enterprise_linux:8::appstream | webkit2gtk3-devel-debuginfo | 0 | 0:2.24.4-2.el8_1 |
| Red Hat:enterprise_linux:8::appstream | webkit2gtk3-jsc | 0 | 0:2.24.4-2.el8_1 |
| Red Hat:enterprise_linux:8::appstream | webkit2gtk3-jsc-debuginfo | 0 | 0:2.24.4-2.el8_1 |
| Red Hat:enterprise_linux:8::appstream | webkit2gtk3-jsc-devel | 0 | 0:2.24.4-2.el8_1 |
| Red Hat:enterprise_linux:8::appstream | webkit2gtk3-jsc-devel-debuginfo | 0 | 0:2.24.4-2.el8_1 |
| Red Hat:enterprise_linux:8::appstream | webkit2gtk3-plugin-process-gtk2 | 0 | 0:2.24.4-2.el8_1 |
| Red Hat:enterprise_linux:8::appstream | webkit2gtk3-plugin-process-gtk2-debuginfo | 0 | 0:2.24.4-2.el8_1 |
| SUSE:Enterprise Storage 4 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:Enterprise Storage 5 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:HPE Helion OpenStack 8 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:Linux Enterprise Desktop 12 SP4 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 | webkit2gtk3 | 0 | 2.24.4-3.31.1 |
| SUSE:Linux Enterprise Module for Basesystem 15 SP1 | webkit2gtk3 | 0 | 2.24.4-3.31.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 | webkit2gtk3 | 0 | 2.24.4-3.31.1 |
| SUSE:Linux Enterprise Module for Desktop Applications 15 SP1 | webkit2gtk3 | 0 | 2.24.4-3.31.1 |
| SUSE:Linux Enterprise Server 12 SP2-BCL | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:Linux Enterprise Server 12 SP2-LTSS | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:Linux Enterprise Server 12 SP3-BCL | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:Linux Enterprise Server 12 SP3-LTSS | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:Linux Enterprise Server 12 SP4 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP2 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP3 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:Linux Enterprise Server for SAP Applications 12 SP4 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:Linux Enterprise Software Development Kit 12 SP4 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:Linux Enterprise Workstation Extension 12 SP4 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:OpenStack Cloud 7 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:OpenStack Cloud 8 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| SUSE:OpenStack Cloud Crowbar 8 | webkit2gtk3 | 0 | 2.24.4-2.47.1 |
| Ubuntu:16.04:LTS | qtwebkit-opensource-src | 0 | No fix |
| Ubuntu:16.04:LTS | qtwebkit-source | 0 | No fix |
| Ubuntu:16.04:LTS | webkit2gtk | 0 | No fix |
| Ubuntu:16.04:LTS | webkitgtk | 0 | No fix |
| Ubuntu:18.04:LTS | qtwebkit-opensource-src | 0 | No fix |
| Ubuntu:18.04:LTS | qtwebkit-source | 0 | No fix |
| Ubuntu:18.04:LTS | webkit2gtk | 0 | 2.24.4-0ubuntu0.18.04.1 |
| Ubuntu:18.04:LTS | webkitgtk | 0 | No fix |
| Ubuntu:20.04:LTS | qtwebkit-opensource-src | 0 | No fix |
| Ubuntu:22.04:LTS | qtwebkit-opensource-src | 0 | No fix |
| Ubuntu:24.04:LTS | qtwebkit-opensource-src | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | qtwebkit-opensource-src | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | qtwebkit-source | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | webkit2gtk | 0 | No fix |
| Ubuntu:Pro:16.04:LTS | webkitgtk | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | qtwebkit-opensource-src | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | qtwebkit-source | 0 | No fix |
| Ubuntu:Pro:18.04:LTS | webkitgtk | 0 | No fix |
| Ubuntu:Pro:20.04:LTS | qtwebkit-opensource-src | 0 | No fix |
| Ubuntu:Pro:22.04:LTS | qtwebkit-opensource-src | 0 | No fix |
| Ubuntu:Pro:24.04:LTS | qtwebkit-opensource-src | 0 | No fix |
| openSUSE:Leap 15.0 | webkit2gtk3 | 0 | 2.24.4-lp150.2.25.1 |
| openSUSE:Leap 15.1 | webkit2gtk3 | 0 | 2.24.4-lp151.2.6.1 |
| openSUSE:Tumbleweed | gtk3 | 0 | 2.32.4-1.1 |
Related vulnerabilities
- CVE-2024-27834 The issue was addressed with improved checks. Also affects webkit2gtk
- CVE-2024-23280 An injection issue was addressed with improved validation. Also affects webkit2gtk
- CVE-2024-23284 A logic issue was addressed with improved state management. Also affects webkit2gtk
- CVE-2024-23263 A logic issue was addressed with improved validation. Also affects webkit2gtk
- CVE-2024-23254 The issue was addressed with improved UI handling. Also affects webkit2gtk
- CVE-2024-23213 The issue was addressed with improved memory handling. Also affects webkit2gtk
- CVE-2024-23222 A type confusion issue was addressed with improved checks. Also affects webkit2gtk
- CVE-2024-23206 An access issue was addressed with improved access restrictions. Also affects webkit2gtk