Cloudanix VulnDB

CVE-2022-20495

High · 7.8

CVSS

7.8

EPSS

0.2%

Published

Dec 13, 2022

CISA due date

—

Cloudanix analysis

Schedule a fix SSVC: Track

A flaw in Android lets certain apps hide themselves and gain extra powers on the device without the user noticing or approving anything.

Exploitation
Local Privilege
Attacker needs
Low Privilege
Complexity
Low
Impact
Privilege Gain
Component
Application
Class
Privilege Escalation
Remediation
Upgrade
Effort
Medium
Patch risk
Low

What it actually does

Logic error in AccessibilityManager.java getEnabledAccessibilityServiceList permits an application to conceal its registered accessibility service, enabling unauthorized local privilege escalation without additional permissions or user interaction.

Why it matters to the business

Attackers with local access can silently elevate privileges on affected Android devices, risking data theft, unauthorized actions, and device compromise across the installed base of Android 10 through 13.

How an attack unfolds

An attacker crafts or deploys a malicious Android application that registers an accessibility service; due to the flawed list filtering logic the service is hidden from system queries, allowing the app to perform privileged operations locally with no user interaction required.

How to fix it

Apply the latest Android security patches from device vendors; monitor for updates addressing A-243849844 and upgrade devices beyond the vulnerable versions (Android 10-13) as soon as vendor patches become available.

How to confirm the fix worked

Confirm devices are running patched Android builds by checking the security patch level in Settings > About phone; review source changes in AccessibilityManager.java to verify the list filtering logic correction.

Typical attack path

  1. Install malicious application on target device
  2. Register accessibility service via the vulnerable API path
  3. Exploit logic error to hide the service from enumeration
  4. Abuse elevated context for privilege escalation actions
  5. Perform unauthorized operations such as data access or configuration changes

How to detect it

Review application logs and accessibility service registration events for unexpected hidden services; correlate with package installation timestamps and audit logs for local privilege abuse indicators.

What your security team should do

  • Prioritize patching all managed Android devices to current vendor releases
  • Enforce app-vetting policies to restrict sideloading of untrusted applications
  • Monitor vendor security bulletins for explicit fixes to this accessibility service enumeration flaw

The record

In getEnabledAccessibilityServiceList of AccessibilityManager.java, there is a possible way to hide an accessibility service due to a logic error in the code. This could lead to local escalation of privilege with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android-10 Android-11 Android-12 Android-12L Android-13Android ID: A-243849844

Affected packages

Ecosystem Package Introduced Fixed
Android platform/frameworks/base 10:0 10:2022-12-01
Android platform/frameworks/base 11:0 11:2022-12-01
Android platform/frameworks/base 12:0 12:2022-12-01
Android platform/frameworks/base 12L:0 12L:2022-12-01
Android platform/frameworks/base 13:0 13:2022-12-01
Ubuntu:16.04:LTS android-platform-frameworks-base 0 No fix
Ubuntu:18.04:LTS android-platform-frameworks-base 0 No fix
Ubuntu:20.04:LTS android-platform-frameworks-base 0 No fix
Ubuntu:22.04:LTS android-platform-frameworks-base 0 No fix
Ubuntu:24.04:LTS android-platform-frameworks-base 0 No fix
Ubuntu:24.10 android-platform-frameworks-base 0 No fix
Ubuntu:Pro:16.04:LTS android-platform-frameworks-base 0 No fix
Ubuntu:Pro:18.04:LTS android-platform-frameworks-base 0 No fix
Ubuntu:Pro:20.04:LTS android-platform-frameworks-base 0 No fix

Related vulnerabilities