Headline
CVE-2021-0675: Android Security Bulletin—December 2021 | Android Open Source Project
In alac decoder, there is a possible out of bounds write due to an incorrect bounds check. This could lead to local escalation of privilege with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android SoCAndroid ID: A-201895896
Published December 6, 2021 | Updated December 8, 2021
The Android Security Bulletin contains details of security vulnerabilities affecting Android devices. Security patch levels of 2021-12-05 or later address all of these issues. To learn how to check a device’s security patch level, see Check and update your Android version.
Android partners are notified of all issues at least a month before publication. Android partners are notified of all issues at least a month before publication. Source code patches for these issues have been released to the Android Open Source Project (AOSP) repository and linked from this bulletin. This bulletin also includes links to patches outside of AOSP
The most severe of these issues is a critical security vulnerability in the Media Framework component that could lead to remote information disclosure with no additional execution privileges needed. The severity assessment is based on the effect that exploiting the vulnerability would possibly have on an affected device, assuming the platform and service mitigations are turned off for development purposes or if successfully bypassed.
Refer to the Android and Google Play Protect mitigations section for details on the Android security platform protections and Google Play Protect, which improve the security of the Android platform.
Android and Google service mitigations
This is a summary of the mitigations provided by the Android security platform and service protections such as Google Play Protect. These capabilities reduce the likelihood that security vulnerabilities could be successfully exploited on Android.
- Exploitation for many issues on Android is made more difficult by enhancements in newer versions of the Android platform. We encourage all users to update to the latest version of Android where possible.
- The Android security team actively monitors for abuse through Google Play Protect and warns users about Potentially Harmful Applications. Google Play Protect is enabled by default on devices with Google Mobile Services, and is especially important for users who install apps from outside of Google Play.
2021-12-01 security patch level vulnerability details
In the sections below, we provide details for each of the security vulnerabilities that apply to the 2021-12-01 patch level. Vulnerabilities are grouped under the component they affect. Issues are described in the tables below and include CVE ID, associated references, type of vulnerability, severity, and updated AOSP versions (where applicable). When available, we link the public change that addressed the issue to the bug ID, like the AOSP change list. When multiple changes relate to a single bug, additional references are linked to numbers following the bug ID. Devices with Android 10 and later may receive security updates as well as Google Play system updates.
Framework
The most severe vulnerability in this section could lead to memory corruption by a local attacker, with no privileges or user interaction required.
CVE
References
Type
Severity
Updated AOSP versions
CVE-2021-0955
A-192085766
EoP
High
11
CVE-2021-0970
A-196970023
EoP
High
9, 10, 11, 12
CVE-2021-0704
A-179338675
ID
High
9, 10, 11
Media Framework
The most severe vulnerability in this section could lead to remote information disclosure with no additional execution privileges needed.
CVE
References
Type
Severity
Updated AOSP versions
CVE-2021-0967
A-199065614
ID
High
10, 11, 12
RCE
Critical
9
CVE-2021-0964
A-193363621
ID
High
9, 10, 11, 12
System
The most severe vulnerability in this section could enable a remote attacker to execute arbitrary code within the context of a privileged process.
CVE
References
Type
Severity
Updated AOSP versions
CVE-2021-0968
A-197868577
RCE
Critical
9, 10, 11, 12
CVE-2021-0956
A-189942532
EoP
Critical
11, 12
CVE-2021-0953
A-184046278
EoP
High
9, 10, 11, 12
CVE-2021-0954
A-143559931
EoP
High
10, 11
CVE-2021-0963
A-199754277 [2]
EoP
High
9, 10, 11, 12
CVE-2021-0965
A-194300867
EoP
High
9, 10, 11, 12
CVE-2021-0952
A-195748381
ID
High
9, 10, 11, 12
CVE-2021-0966
A-198346478
ID
High
11, 12
CVE-2021-0958
A-200041882
DoS
Moderate
11, 12
CVE-2021-0969
A-199922685
DoS
Moderate
10, 11
Google Play system updates
The following issues are included in Project Mainline components.
Component
CVE
Media Codecs
CVE-2021-0964
Media Codecs, Media Framework components
CVE-2021-0967
2021-12-05 security patch level vulnerability details
In the sections below, we provide details for each of the security vulnerabilities that apply to the 2021-12-05 patch level. Vulnerabilities are grouped under the component they affect. Issues are described in the tables below and include CVE ID, associated references, type of vulnerability, severity, and updated AOSP versions (where applicable). When available, we link the public change that addressed the issue to the bug ID, like the AOSP change list. When multiple changes relate to a single bug, additional references are linked to numbers following the bug ID.
Media Framework
The vulnerability in this section could lead to remote information disclosure with no additional execution privileges needed.
CVE
References
Type
Severity
Updated AOSP versions
CVE-2021-0971
A-188893559
ID
High
9, 10, 11, 12
Kernel components
The most severe vulnerability in this section could lead to an integer overflow, an Out-of-bounds Write, and escalation to root by an unprivileged user.
CVE
References
Type
Severity
Component
CVE-2021-33909
A-195082750
Upstream kernel
EoP
High
Filesystem
CVE-2021-38204
A-196448784
Upstream kernel
EoP
High
USB
CVE-2021-0961
A-196046570
Upstream kernel [2] [3]
ID
Moderate
netfilter
MediaTek components
These vulnerabilities affect MediaTek components and further details are available directly from MediaTek. The severity assessment of these issues is provided directly by MediaTek.
CVE
References
Severity
Component
CVE-2021-0675
A-201895896
M-ALPS06064258 *
High
alac decoder
CVE-2021-0904
A-201779035
M-ALPS06076938 *
High
SRAMROM
Qualcomm components
These vulnerabilities affect Qualcomm components and are described in further detail in the appropriate Qualcomm security bulletin or security alert. The severity assessment of these issues is provided directly by Qualcomm.
CVE
References
Severity
Component
CVE-2021-30262
A-190402578
QC-CR#2774954
High
Modem
CVE-2021-30335
A-199191310
QC-CR#2964455
High
Kernel
CVE-2021-30337
A-199190644
QC-CR#2971293
High
Kernel
Qualcomm closed-source components
These vulnerabilities affect Qualcomm closed-source components and are described in further detail in the appropriate Qualcomm security bulletin or security alert. The severity assessment of these issues is provided directly by Qualcomm.
CVE
References
Severity
Component
CVE-2021-30275
A-190403081 *
Critical
Closed-source component
CVE-2021-30276
A-190404445 *
Critical
Closed-source component
CVE-2021-30351
A-201430561 *
Critical
Closed-source component
CVE-2020-11263
A-190404447 *
High
Closed-source component
CVE-2021-1894
A-190404405 *
High
Closed-source component
CVE-2021-1918
A-190403729 *
High
Closed-source component
CVE-2021-30267
A-190403212 *
High
Closed-source component
CVE-2021-30268
A-190404446 *
High
Closed-source component
CVE-2021-30269
A-190403511 *
High
Closed-source component
CVE-2021-30270
A-190402575 *
High
Closed-source component
CVE-2021-30271
A-190404402 *
High
Closed-source component
CVE-2021-30272
A-190404323 *
High
Closed-source component
CVE-2021-30273
A-190404403 *
High
Closed-source component
CVE-2021-30274
A-190403731 *
High
Closed-source component
CVE-2021-30278
A-190403213 *
High
Closed-source component
CVE-2021-30279
A-190402580 *
High
Closed-source component
CVE-2021-30282
A-190404328 *
High
Closed-source component
CVE-2021-30283
A-190403513 *
High
Closed-source component
CVE-2021-30289
A-190404404 *
High
Closed-source component
CVE-2021-30293
A-190404327 *
High
Closed-source component
CVE-2021-30303
A-199192449 *
High
Closed-source component
CVE-2021-30336
A-199191065 *
High
Closed-source component
Google Play system updates
The following issues are included in Project Mainline components.
Component
CVE
Media Framework components
CVE-2021-0971
Common questions and answers
This section answers common questions that may occur after reading this bulletin.
1. How do I determine if my device is updated to address these issues?
To learn how to check a device’s security patch level, see Check and update your Android version.
- Security patch levels of 2021-12-01 or later address all issues associated with the 2021-12-01 security patch level.
- Security patch levels of 2021-12-05 or later address all issues associated with the 2021-12-05 security patch level and all previous patch levels.
Device manufacturers that include these updates should set the patch string level to:
- [ro.build.version.security_patch]:[2021-12-01]
- [ro.build.version.security_patch]:[2021-12-05]
For some devices on Android 10 or later, the Google Play system update will have a date string that matches the 2021-12-01 security patch level. Please see this article for more details on how to install security updates.
2. Why does this bulletin have two security patch levels?
This bulletin has two security patch levels so that Android partners have the flexibility to fix a subset of vulnerabilities that are similar across all Android devices more quickly. Android partners are encouraged to fix all issues in this bulletin and use the latest security patch level.
- Devices that use the 2021-12-01 security patch level must include all issues associated with that security patch level, as well as fixes for all issues reported in previous security bulletins.
- Devices that use the security patch level of 2021-12-05 or newer must include all applicable patches in this (and previous) security bulletins.
Partners are encouraged to bundle the fixes for all issues they are addressing in a single update.
3. What do the entries in the Type column mean?
Entries in the Type column of the vulnerability details table reference the classification of the security vulnerability.
Abbreviation
Definition
RCE
Remote code execution
EoP
Elevation of privilege
ID
Information disclosure
DoS
Denial of service
N/A
Classification not available
4. What do the entries in the References column mean?
Entries under the References column of the vulnerability details table may contain a prefix identifying the organization to which the reference value belongs.
Prefix
Reference
A-
Android bug ID
QC-
Qualcomm reference number
M-
MediaTek reference number
N-
NVIDIA reference number
B-
Broadcom reference number
U-
UNISOC reference number
5. What does an * next to the Android bug ID in the References column mean?
Issues that are not publicly available have an * next to the corresponding reference ID. The update for that issue is generally contained in the latest binary drivers for Pixel devices available from the Google Developer site.
6. Why are security vulnerabilities split between this bulletin and device / partner security bulletins, such as the Pixel bulletin?
Security vulnerabilities that are documented in this security bulletin are required to declare the latest security patch level on Android devices. Additional security vulnerabilities that are documented in the device / partner security bulletins are not required for declaring a security patch level. Android device and chipset manufacturers may also publish security vulnerability details specific to their products, such as Google, Huawei, LGE, Motorola, Nokia, or Samsung.
Versions
Version
Date
Notes
1.0
December 6, 2021
Bulletin Released
1.1
December 8, 2021
Bulletin revised to include AOSP links
Related news
In memzero_explicit of compiler-clang.h, there is a possible bypass of defense in depth due to uninitialized data. This could lead to local information disclosure with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android kernelAndroid ID: A-171418586References: Upstream kernel
In getAllSubInfoList of SubscriptionController.java, there is a possible way to retrieve a long term identifier without the correct permissions due to a missing permission check. This could lead to local information disclosure with User execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android-11 Android-10Android ID: A-183612370
In loadLabel of PackageItemInfo.java, there is a possible way to DoS a device by having a long label in an app due to incorrect input validation. This could lead to local denial of service with no additional execution privileges needed. User interaction is needed for exploitation.Product: AndroidVersions: Android-11 Android-9 Android-10Android ID: A-67013844
In startListening of PluginManagerImpl.java, there is a possible way to disable arbitrary app components due to a missing permission check. This could lead to local denial of service with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android-9 Android-10 Android-11 Android-8.1Android ID: A-193444889
In sendAccessibilityEvent of NotificationManagerService.java, there is a possible disclosure of notification data due to a missing permission check. This could lead to local information disclosure with User execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android-11 Android-8.1 Android-9 Android-10Android ID: A-159624555
In RGB_to_BGR1_portable of SkSwizzler_opts.h, there is a possible out of bounds read due to a missing bounds check. This could lead to local information disclosure with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android-10 Android-11 Android-8.1 Android-9Android ID: A-190188264
In getDefaultSmsPackage of RoleManagerService.java, there is a possible way to get information about the default sms app of a different device user due to a missing permission check. This could lead to local information disclosure with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android-11 Android-10Android ID: A-177927831
In openFile of HeapDumpProvider.java, there is a possible way to retrieve generated heap dumps from debuggable apps due to an unprotected provider. This could lead to local information disclosure with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android-11Android ID: A-184046948
In system properties, there is a possible information disclosure due to a missing permission check. This could lead to local information disclosure with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android SoCAndroid ID: A-192535337
In get_sock_stat of xt_qtaguid.c, there is a possible out of bounds read due to a use after free. This could lead to local information disclosure with User execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android kernelAndroid ID: A-184018316References: Upstream kernel
In system properties, there is a possible information disclosure due to a missing permission check. This could lead to local information disclosure with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android SoCAndroid ID: A-192535676
In conditionallyRemoveIdentifiers of SubscriptionController.java, there is a possible way to retrieve a trackable identifier due to a missing permission check. This could lead to local information disclosure with User execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android-11 Android-10Android ID: A-181053462
In psi_write of psi.c, there is a possible out of bounds write due to a missing bounds check. This could lead to local escalation of privilege with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android kernelAndroid ID: A-148159562References: Upstream kernel
Bypass lock protection in the Nextcloud Android app prior to version 3.6.2 causes leaking of thumbnails when requesting the Android content provider although the lock protection was not solved.