CVE-2024-3158 Overview
CVE-2024-3158 is a use-after-free vulnerability in the Bookmarks component of Google Chrome prior to version 123.0.6312.105. This memory corruption flaw allows a remote attacker to potentially exploit heap corruption via a crafted HTML page. The vulnerability was assigned a high severity rating by Chromium security, indicating significant risk to users who visit malicious web pages.
Use-after-free vulnerabilities occur when a program continues to use memory after it has been freed, leading to unpredictable behavior including potential code execution. In this case, the Bookmarks feature in Chrome contains flawed memory management that can be triggered through specially crafted web content.
Critical Impact
Remote attackers can potentially achieve arbitrary code execution through heap corruption by tricking users into visiting a malicious webpage, leading to full system compromise.
Affected Products
- Google Chrome versions prior to 123.0.6312.105
- Chromium-based browsers that incorporate vulnerable code
- Fedora Linux packages containing affected Chrome/Chromium versions
Discovery Timeline
- April 6, 2024 - CVE-2024-3158 published to NVD
- November 4, 2025 - Last updated in NVD database
Technical Details for CVE-2024-3158
Vulnerability Analysis
This use-after-free vulnerability exists within the Bookmarks functionality of Google Chrome. The flaw stems from improper memory management where the browser accesses memory that has already been deallocated. When a user interacts with specially crafted HTML content, the browser's bookmark-related code can be manipulated to reference freed memory regions.
The exploitation of this vulnerability requires user interaction—specifically, a victim must navigate to a malicious webpage containing the crafted HTML payload. Once triggered, the attacker can corrupt the heap memory structure, potentially achieving arbitrary code execution within the context of the browser process.
The attack is network-based and requires no prior authentication or special privileges on the target system. However, user interaction is required, as the victim must visit the attacker-controlled page for the exploit to succeed. Successful exploitation could result in complete compromise of confidentiality, integrity, and availability of the affected system.
Root Cause
The root cause of CVE-2024-3158 is a use-after-free condition (CWE-416) in the Bookmarks component of Google Chrome. This occurs when code continues to reference a memory object after it has been freed, typically due to improper tracking of object lifecycles or race conditions in memory management. In browser contexts, such vulnerabilities often arise from complex DOM interactions where object references persist after underlying objects have been destroyed.
Attack Vector
The attack vector for CVE-2024-3158 is network-based, requiring the attacker to host or inject malicious HTML content that triggers the use-after-free condition when processed by the victim's browser. The attack sequence involves:
- Attacker crafts a malicious HTML page designed to trigger the bookmark-related memory corruption
- Victim navigates to the malicious page (via phishing, malicious ads, or compromised websites)
- The crafted HTML triggers the use-after-free in Chrome's Bookmarks component
- Heap corruption occurs, potentially allowing the attacker to control execution flow
- Attacker achieves code execution within the browser's sandbox (with potential for further escalation)
The vulnerability can be exploited in scenarios where users are socially engineered to visit malicious websites, making phishing campaigns a likely delivery mechanism for attacks leveraging this flaw.
Detection Methods for CVE-2024-3158
Indicators of Compromise
- Unusual browser crashes or instability, particularly when interacting with bookmarks
- Unexpected process spawning from Chrome browser processes
- Memory access violations or heap corruption errors in Chrome crash dumps
- Network connections to suspicious domains following bookmark-related activities
Detection Strategies
- Monitor for Chrome processes exhibiting abnormal memory patterns or crash behavior
- Implement endpoint detection rules for heap spray indicators in browser contexts
- Deploy network-based detection for known malicious HTML patterns targeting this vulnerability
- Use application-level monitoring to detect exploitation attempts against browser components
Monitoring Recommendations
- Enable Chrome's crash reporting to identify potential exploitation attempts
- Implement browser version auditing to ensure all instances are updated to 123.0.6312.105 or later
- Monitor security telemetry for indicators of browser-based exploitation activity
- Review web proxy logs for connections to known malicious infrastructure
How to Mitigate CVE-2024-3158
Immediate Actions Required
- Update Google Chrome to version 123.0.6312.105 or later immediately
- Verify all Chromium-based browsers in your environment are patched
- Review and update browser security policies to enforce automatic updates
- Educate users about the risks of visiting untrusted websites
Patch Information
Google has released a security update addressing this vulnerability in Chrome version 123.0.6312.105. The fix is available through the stable channel update released in April 2024. Organizations should prioritize deployment of this update across all managed endpoints.
For detailed patch information, refer to the Google Chrome Stable Channel Update. Fedora users should apply the relevant package updates as announced on the Fedora Package Announce mailing list.
Additional technical details can be found at Chromium Issue #329965696.
Workarounds
- Implement strict content security policies to limit exposure to malicious web content
- Use browser isolation technologies to contain potential exploitation
- Restrict access to untrusted websites through web filtering solutions
- Consider disabling or limiting bookmark synchronization features until patched
- Deploy network segmentation to limit lateral movement if browser compromise occurs
# Verify Chrome version on Linux systems
google-chrome --version
# Expected output should be 123.0.6312.105 or higher
# For enterprise deployments, enforce minimum version via policy
# Example Chrome policy setting (Linux/macOS)
echo '{"BrowserSignin": 0, "ExtensionInstallBlocklist": ["*"]}' | sudo tee /etc/opt/chrome/policies/managed/security_policy.json
Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.


