Skip to main content
CVE Vulnerability Database
Vulnerability Database/CVE-2024-43096

CVE-2024-43096: Google Android RCE Vulnerability

CVE-2024-43096 is a remote code execution vulnerability in Google Android caused by an out of bounds write in gatt_sr.cc. Attackers can exploit this flaw without user interaction. This article covers technical details, affected versions, impact, and mitigation strategies.

Published:

CVE-2024-43096 Overview

CVE-2024-43096 is an out-of-bounds write vulnerability in the Android Bluetooth stack. The flaw resides in the build_read_multi_rsp function of gatt_sr.cc, where a missing bounds check allows memory corruption during Generic Attribute Profile (GATT) response construction. An attacker within Bluetooth range can trigger the flaw to achieve remote code execution without user interaction and without additional execution privileges. Google addressed the vulnerability in the Android Security Bulletin January 2025. The vulnerability affects Android versions 12 through 15, exposing a broad segment of the active device population.

Critical Impact

Adjacent attackers can execute arbitrary code on affected Android devices over Bluetooth without user interaction, potentially compromising the entire device.

Affected Products

  • Google Android 12.0 and 12.1
  • Google Android 13.0 and 14.0
  • Google Android 15.0

Discovery Timeline

  • 2025-01-21 - CVE-2024-43096 published to the National Vulnerability Database
  • 2025-01-01 - Google publishes fix in the Android Security Bulletin
  • 2026-06-17 - Last updated in NVD database

Technical Details for CVE-2024-43096

Vulnerability Analysis

The vulnerability is an out-of-bounds write [CWE-787] in the Android Bluetooth GATT server implementation. The build_read_multi_rsp function in gatt_sr.cc constructs responses to GATT Read Multiple requests. A missing bounds check allows response data to be written past the boundaries of the destination buffer.

GATT operates over Bluetooth Low Energy (BLE) and handles attribute reads across paired and unpaired peers. When a device within Bluetooth range issues a crafted Read Multiple request, the server-side response builder writes attribute data without validating the target buffer size. This memory corruption can be steered toward remote code execution in the Bluetooth process context.

Exploitation requires no user interaction and no prior authentication. The attacker must be within radio range of the target device, classifying the attack as adjacent network.

Root Cause

The root cause is a missing length validation before writing multi-attribute response data into a response buffer inside build_read_multi_rsp. When aggregate attribute payloads exceed the allocated buffer capacity, the write operation crosses the buffer boundary and corrupts adjacent memory structures.

Attack Vector

An attacker within Bluetooth range sends a specially crafted GATT Read Multiple request targeting attributes whose combined values overflow the response buffer. The server processes the request, invokes build_read_multi_rsp, and writes past buffer bounds. The resulting corruption can be shaped to hijack control flow within the Bluetooth stack, leading to code execution.

Refer to the Android Security Bulletin January 2025 for vendor technical details and patch metadata.

Detection Methods for CVE-2024-43096

Indicators of Compromise

  • Unexpected Bluetooth service crashes or restarts on Android devices, particularly in com.android.bluetooth.
  • Kernel or system logs referencing faults inside gatt_sr or GATT Read Multiple handlers.
  • Anomalous BLE pairing attempts or repeated GATT read operations from unknown peers in proximity.

Detection Strategies

  • Monitor Android system logs (logcat) for repeated tombstone entries and native crashes referencing the Bluetooth process.
  • Aggregate mobile device telemetry to identify clusters of Bluetooth stack instability across a fleet, which may indicate active probing.
  • Correlate mobile threat defense alerts with proximity-based anomalous BLE activity in sensitive physical locations.

Monitoring Recommendations

  • Enforce mobile device management (MDM) policies that report Android patch level and flag devices below the January 2025 security patch level.
  • Track Bluetooth-related process crashes as security events, not just reliability signals.
  • Restrict Bluetooth usage in high-risk environments and monitor for unauthorized BLE peripheral scanning.

How to Mitigate CVE-2024-43096

Immediate Actions Required

  • Apply the January 2025 Android security patch level (2025-01-01 or later) on all affected devices.
  • Prioritize patching for devices operating in public or high-density environments where Bluetooth exposure is greatest.
  • Inventory Android 12 through 15 devices across the organization and confirm vendor patch availability from device OEMs.

Patch Information

Google released a fix as part of the Android Security Bulletin January 2025. Device manufacturers integrate the fix into OEM firmware updates. Confirm patch level in Settings > About phone > Android security update and ensure the value is 2025-01-01 or later.

Workarounds

  • Disable Bluetooth on devices that cannot be immediately updated, especially when in untrusted environments.
  • Enforce MDM policies that restrict Bluetooth to paired accessories only and disable discoverability.
  • Segregate unpatched devices from sensitive workloads and data until the vendor patch is applied.
bash
# Verify Android security patch level via adb
adb shell getprop ro.build.version.security_patch
# Expected output: 2025-01-01 or later

Disclaimer: This content was generated using AI. While we strive for accuracy, please verify critical information with official sources.

Default Legacy - Prefooter | Experience the World’s Most Advanced Cybersecurity Platform

Experience the Most Advanced Cybersecurity Platform

See how the world’s most intelligent, autonomous cybersecurity platform can protect your organization today and into the future.