Published December 2, 2019 | Updated January 14, 2020
The Android Security Bulletin contains details of security vulnerabilities affecting Android devices. Security patch levels of 2019-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. 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 Framework component that could enable a remote attacker using a specially crafted message to cause a permanent denial of service. 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.
Note: Information on the latest over-the-air update (OTA) and firmware images for Google devices is available in the December 2019 Pixel Update Bulletin.
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.
2019-12-01 security patch level vulnerability details
In the sections below, we provide details for each of the security vulnerabilities that apply to the 2019-12-01 patch level. Vulnerabilities are grouped under the component they affect. There is a description of the issue and a table with the CVE, 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, such as 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 enable a remote attacker using a specially crafted message to cause a permanent denial of service.
CVE | References | Type | Severity | Updated AOSP versions |
---|---|---|---|---|
CVE-2019-2232 | A-140632678 | DoS | Critical | 8.0, 8.1, 9, 10 |
CVE-2019-9464 | A-141028068 [2] [3] [4] | EoP | High | 10 |
CVE-2019-2217 | A-141003796 | EoP | High | 10 |
CVE-2019-2218 | A-141169173 | EoP | High | 8.0, 8.1, 9, 10 |
CVE-2019-2220 | A-138636979 [2] | ID | High | 9, 10 |
CVE-2019-2221 | A-138583650 [2] | EoP | Moderate | 10 |
Media framework
The most severe vulnerability in this section could enable a remote attacker using a specially crafted file to execute arbitrary code within the context of a privileged process.
CVE | References | Type | Severity | Updated AOSP versions |
---|---|---|---|---|
CVE-2019-2222 | A-140322595 | RCE | Moderate | 10 |
RCE | Critical | 8.0, 8.1, 9 | ||
CVE-2019-2223 | A-140692129 | RCE | Moderate | 10 |
RCE | Critical | 8.0, 8.1, 9 |
System
The most severe vulnerability in this section could enable a remote attacker using a specially crafted file to execute arbitrary code within the context of an unprivileged process.
CVE | References | Type | Severity | Updated AOSP versions |
---|---|---|---|---|
CVE-2019-15140 | A-140328986 | RCE | High | 8.0, 8.1, 9, 10 |
CVE-2019-2225 | A-110433804 [2] | EoP | High | 8.0, 8.1, 9, 10 |
CVE-2019-2226 | A-140152619 | ID | High | 8.0, 8.1, 9, 10 |
CVE-2019-2227 | A-140768453 | ID | High | 9, 10 |
CVE-2019-2228 | A-111210196 [2] | ID | High | 8.0, 8.1, 9, 10 |
CVE-2019-2229 | A-139803872 [2] | ID | High | 8.0, 8.1, 9, 10 |
CVE-2019-2230 | A-141170038 | ID | High | 10 |
Google Play system updates
These security issues are included in Google Play system updates.
Component | CVEs |
---|---|
Media Codecs | CVE-2019-2222, CVE-2019-2223 |
2019-12-05 security patch level vulnerability details
In the sections below, we provide details for each of the security vulnerabilities that apply to the 2019-12-05 patch level. Vulnerabilities are grouped under the component they affect and include details such as the CVE, associated references, type of vulnerability, severity, component (where applicable), and updated AOSP versions (where applicable). When available, we link the public change that addressed the issue to the bug ID, such as the AOSP change list. When multiple changes relate to a single bug, additional references are linked to numbers following the bug ID.
System
The vulnerability in this section could enable a local attacker with privileged access to gain access to sensitive data.
CVE | References | Type | Severity | Updated AOSP versions |
---|---|---|---|---|
CVE-2019-2231 | A-141955555 | ID | High | 9, 10 |
Kernel components
The most severe vulnerability in this section could enable a local malicious application to execute arbitrary code within the context of a privileged process.
CVE | References | Type | Severity | Component |
---|---|---|---|---|
CVE-2018-20961 | A-139522588 Upstream kernel |
EoP | High | USB MIDI class function driver |
CVE-2019-15220 | A-140329469 Upstream kernel |
EoP | High | Prism54 WiFi USB Driver |
CVE-2019-15239 | A-140328996 Upstream kernel |
EoP | High | TCP Stack |
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 | Type | Severity | Component |
---|---|---|---|---|
CVE-2019-10557 | A-78657016 QC-CR#2255369 QC-CR#2259707 |
N/A | High | WLAN host |
CVE-2018-11980 | A-140423440 QC-CR#2270117 |
N/A | High | WLAN host |
CVE-2019-10480 | A-140423811 QC-CR#2309399 |
N/A | High | WLAN host |
CVE-2019-10481 | A-140423794 QC-CR#2304610 QC-CR#2318632 |
N/A | High | WLAN host |
CVE-2019-10536 | A-140423334 QC-CR#2433802 |
N/A | High | WLAN host |
CVE-2019-10537 | A-140423693 QC-CR#2436502 |
N/A | High | WLAN host |
CVE-2019-10595 | A-140423810 QC-CR#2148184 |
N/A | High | WLAN host |
CVE-2019-10598 | A-140423155 QC-CR#2324139 |
N/A | High | WLAN host |
CVE-2019-10601 | A-140423156 QC-CR#2428798 |
N/A | High | WLAN host |
CVE-2019-10605 | A-140424124 QC-CR#2187441 |
N/A | High | WLAN host |
CVE-2019-10607 | A-140423690 QC-CR#2211711 |
N/A | High | Security |
CVE-2019-2304 | A-123238115 QC-CR#2331868 QC-CR#2335530 QC-CR#2348299 QC-CR#2203904* |
N/A | High | WLAN host |
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 | Type | Severity | Component |
---|---|---|---|---|
CVE-2019-2242 | A-123998200* | N/A | Critical | Closed-source component |
CVE-2019-10500 | A-134437248* | N/A | Critical | Closed-source component |
CVE-2019-10525 | A-134437319* | N/A | Critical | Closed-source component |
CVE-2019-10482 | A-132108950* | N/A | High | Closed-source component |
CVE-2019-10487 | A-134437030* | N/A | High | Closed-source component |
CVE-2019-10516 | A-134437075* | N/A | High | Closed-source component |
CVE-2019-2274 | A-134437362* | N/A | High | Closed-source component |
CVE-2019-10513 | A-134437225* | N/A | High | Closed-source component |
CVE-2019-10517 | A-140424724* | N/A | High | Closed-source component |
CVE-2019-10600 | A-140424089* | N/A | High | Closed-source component |
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 2019-12-01 or later address all issues associated with the 2019-12-01 security patch level.
- Security patch levels of 2019-12-05 or later address all issues associated with the 2019-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]:[2019-12-01]
- [ro.build.version.security_patch]:[2019-12-05]
For some devices on Android 10 or later, the Google Play system update will have a date string that matches the 2019-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 2019-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 2019-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 |
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 Android bug ID in the References column. 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 2, 2019 | Bulletin published |
1.1 | December 3, 2019 | Bulletin revised to include AOSP links |
1.2 | December 13, 2019 | Revised CVE table |
1.3 | January 14, 2020 | The CVE ID for issue A-140328986 has been updated to CVE-2019-15140 |