Cloudanix VulnDB

CVE-2023-21031

Medium · 4.7

CVSS

4.7

EPSS

0.1%

Published

Mar 24, 2023

CISA due date

—

Cloudanix analysis

Monitor only SSVC: Track

A bug in Android could let another app on the same phone read private information without asking for permission.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
High
Impact
Data Exposure
Component
Application
Class
Memory Corruption
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Race condition in setPowerMode of HWC2.cpp allows an out-of-bounds read, disclosing kernel or process memory contents to a local process without elevated privileges.

Why it matters to the business

Attackers with local access can silently extract sensitive data such as encryption keys, user credentials, or application state from affected Android devices, increasing risk of data theft on unpatched devices.

How an attack unfolds

A local attacker runs a malicious application that repeatedly invokes setPowerMode while racing against display hardware state changes, causing the out-of-bounds read to return adjacent memory contents that are then exfiltrated.

How to fix it

Upgrade affected Android-13 devices to the security patch level that resolves A-242688355. Apply vendor firmware updates as soon as they become available; where updates are delayed, restrict local app sideloading and monitor for anomalous local processes.

How to confirm the fix worked

Confirm the device reports a build ID containing the fix for A-242688355; attempt to reproduce the race in a lab environment on patched versus unpatched builds to verify the out-of-bounds read is no longer possible.

Typical attack path

  1. Obtain local code execution via installed app or ADB
  2. Trigger concurrent calls to setPowerMode from multiple threads
  3. Time the calls to win the race condition and read beyond allocated buffers
  4. Parse leaked memory for useful artifacts and transmit them to attacker-controlled infrastructure

How to detect it

Review Android system logs and dmesg for repeated power-mode state transitions originating from untrusted packages; correlate with unusual memory-access patterns or crashes in SurfaceFlinger/HWC processes.

What your security team should do

  • Prioritize deployment of the March 2023 (or later) Android security bulletin to all Android-13 endpoints
  • Enable verified boot and restrict developer options to reduce local attack surface
  • Add Android version and patch-level checks to device compliance policies

The record

In setPowerMode of HWC2.cpp, there is a possible out of bounds read due to a race condition. This could lead to local information disclosure with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android-13Android ID: A-242688355

Affected packages

Ecosystem Package Introduced Fixed
Android platform/frameworks/native 13-next:0 13-next:2023-06-01
Android platform/frameworks/native 13:0 13:2023-06-01
Ubuntu:16.04:LTS android-platform-frameworks-native 0 No fix
Ubuntu:18.04:LTS android-platform-frameworks-native 0 No fix
Ubuntu:20.04:LTS android-platform-frameworks-native 0 No fix
Ubuntu:22.04:LTS android-platform-frameworks-native 0 No fix
Ubuntu:22.04:LTS android-platform-tools 0 No fix
Ubuntu:24.04:LTS android-platform-frameworks-native 0 No fix
Ubuntu:24.04:LTS android-platform-tools 0 No fix
Ubuntu:24.10 android-platform-frameworks-native 0 No fix
Ubuntu:24.10 android-platform-tools 0 No fix
Ubuntu:Pro:16.04:LTS android-platform-frameworks-native 0 No fix
Ubuntu:Pro:18.04:LTS android-platform-frameworks-native 0 No fix
Ubuntu:Pro:20.04:LTS android-platform-frameworks-native 0 No fix

Related vulnerabilities