Android Security Bulletin—August 2017

Published August 7, 2017 | Updated August 23, 2017

The Android Security Bulletin contains details of security vulnerabilities affecting Android devices. Security patch levels of August 05, 2017 or later address all of these issues. Refer to the Pixel and Nexus update schedule to learn how to check a device's security patch level.

Partners were notified of the issues described in the bulletin at least a month ago. 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 media framework that could enable a remote attacker using a specially crafted file to execute arbitrary code within the context of a privileged process. 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.

We have had no reports of active customer exploitation or abuse of these newly reported issues. 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.

We encourage all customers to accept these updates to their devices.

Note: Information on the latest over-the-air update (OTA) and firmware images for Google devices is available in the Google device updates section.

Announcements

  • This bulletin has two security patch level strings to provide Android partners with the flexibility to more quickly fix a subset of vulnerabilities that are similar across all Android devices. See Common questions and answers for additional information:
    • 2017-08-01: Partial security patch level string. This security patch level string indicates that all issues associated with 2017-08-01 (and all previous security patch level strings) are addressed.
    • 2017-08-05: Complete security patch level string. This security patch level string indicates that all issues associated with 2017-08-01 and 2017-08-05 (and all previous security patch level strings) are addressed.

Android and Google Play Protect 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.

2017-08-01 security patch level—Vulnerability details

In the sections below, we provide details for each of the security vulnerabilities that apply to the 2017-08-01 patch level. Vulnerabilities are grouped under the component that 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, like the AOSP change list. When multiple changes relate to a single bug, additional references are linked to numbers following the bug ID.

Framework

The most severe vulnerability in this section could enable a local malicious application using a specially crafted file to execute arbitrary code within the context of a privileged process.

CVE References Type Severity Updated AOSP versions
CVE-2017-0712 A-37207928 EoP Moderate 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2

Libraries

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-2017-0713 A-32096780 [2] RCE High 4.4.4, 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2

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-2017-0714 A-36492637 RCE Critical 4.4.4, 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0715 A-36998372 RCE Critical 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0716 A-37203196 RCE Critical 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0718 A-37273547 RCE Critical 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0719 A-37273673 RCE Critical 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0720 A-37430213 RCE Critical 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0721 A-37561455 RCE Critical 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0722 A-37660827 RCE Critical 4.4.4, 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0723 A-37968755 RCE Critical 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0745 A-37079296 RCE Critical 4.4.4, 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0724 A-36819262 DoS High 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0725 A-37627194 DoS High 7.0, 7.1.1, 7.1.2
CVE-2017-0726 A-36389123 DoS High 4.4.4, 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0727 A-33004354 EoP High 7.0, 7.1.1, 7.1.2
CVE-2017-0728 A-37469795 DoS High 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0729 A-37710346 EoP High 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0730 A-36279112 DoS High 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0731 A-36075363 EoP High 4.4.4, 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0732 A-37504237 EoP High 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0733 A-38391487 DoS High 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0734 A-38014992 DoS High 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0735 A-38239864 [2] DoS High 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0736 A-38487564 DoS High 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0687 A-35583675 DoS High 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0737 A-37563942 EoP High 4.4.4, 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0805 A-37237701 EoP High 4.4.4, 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0738 A-37563371 [2] ID Moderate 4.4.4, 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2
CVE-2017-0739 A-37712181 ID Moderate 5.0.2, 5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2

2017-08-05 security patch level—Vulnerability details

In the sections below, we provide details for each of the security vulnerabilities that apply to the 2017-08-05 patch level. Vulnerabilities are grouped under the component that 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, like the AOSP change list. When multiple changes relate to a single bug, additional references are linked to numbers following the bug ID.

Broadcom components

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 Component
CVE-2017-0740 A-37168488*
B-RB#116402
RCE Moderate Networking driver

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-2017-10661 A-36266767
Upstream kernel
EoP High File system
CVE-2017-0750 A-36817013* EoP Moderate File system
CVE-2017-10662 A-36815012
Upstream kernel
EoP Moderate File system
CVE-2017-10663 A-36588520
Upstream kernel
EoP Moderate File System
CVE-2017-0749 A-36007735* EoP Moderate Linux kernel

MediaTek 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-2017-0741 A-32458601*
M-ALPS03007523
EoP High GPU driver
CVE-2017-0742 A-36074857*
M-ALPS03275524
EoP Moderate Video driver

Qualcomm 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-2017-0746 A-35467471*
QC-CR#2029392
EoP Moderate IPA driver
CVE-2017-0747 A-32524214*
QC-CR#2044821
EoP Moderate Proprietary Component
CVE-2017-9678 A-35258962*
QC-CR#2028228
EoP Moderate Video driver
CVE-2017-9691 A-33842910*
QC-CR#1116560
EoP Moderate MobiCore driver (Trustonic)
CVE-2017-9684 A-35136547*
QC-CR#2037524
EoP Moderate USB driver
CVE-2017-9682 A-36491445*
QC-CR#2030434
ID Moderate GPU driver

Google device updates

This table contains the security patch level in the latest over-the-air update (OTA) and firmware images for Google devices. The Google device firmware images are available on the Google Developer site.

Google device Security patch level
Pixel / Pixel XL August 05, 2017
Nexus 5X August 05, 2017
Nexus 6 August 05, 2017
Nexus 6P August 05, 2017
Nexus 9 August 05, 2017
Nexus Player August 05, 2017
Pixel C August 05, 2017

Google device updates also contain patches for these security vulnerabilities, if applicable:

CVE References Type Severity Component
CVE-2017-0744 A-34112726*
N-CVE-2017-0744
EoP Low Sound driver
CVE-2017-9679 A-35644510*
QC-CR#2029409
ID Low SoC driver
CVE-2017-9680 A-35764241*
QC-CR#2030137
ID Low SoC driver
CVE-2017-0748 A-35764875*
QC-CR#2029798
ID Low Audio driver
CVE-2017-9681 A-36386593*
QC-CR#2030426
ID Low Radio driver
CVE-2017-9693 A-36817798*
QC-CR#2044820
ID Low Networking driver
CVE-2017-9694 A-36818198*
QC-CR#2045470
ID Low Networking driver
CVE-2017-0751 A-36591162*
QC-CR#2045061
EoP Low QCE driver
CVE-2017-9692 A-36731152*
QC-CR#2021707
DoS Low Graphics driver

Acknowledgements

We would like to thank these researchers for their contributions:

CVEs Researchers
CVE-2017-0741, CVE-2017-0742, CVE-2017-0751 Baozeng Ding (@sploving), Chengming Yang, and Yang Song of Alibaba Mobile Security Group
CVE-2017-9682 Billy Lau of Android Security
CVE-2017-0739 Dacheng Shao, Hongli Han (@HexB1n), Mingjian Zhou (@Mingjian_Zhou), and Xuxian Jiang of C0RE Team
CVE-2017-9691, CVE-2017-0744 Gengjia Chen (@chengjia4574) and pjf of IceSword Lab, Qihoo 360 Technology Co. Ltd.
CVE-2017-0727 Guang Gong (龚广) (@oldfresher) of Alpha Team, Qihoo 360 Technology Co. Ltd.
CVE-2017-0737 Hanxiang Wen, Mingjian Zhou (@Mingjian_Zhou), and Xuxian Jiang of C0RE Team
CVE-2017-0748 Hao Chen and Guang Gong of Alpha Team of Qihoo 360 Technology Co. Ltd.
CVE-2017-0731 Hongli Han (@HexB1n), Mingjian Zhou (@Mingjian_Zhou), and Xuxian Jiang of C0RE Team
CVE-2017-9679 Nathan Crandall (@natecray) of Tesla's Product Security Team
CVE-2017-0726 Niky1235 (@jiych_guru)
CVE-2017-9684, CVE-2017-9694, CVE-2017-9693, CVE-2017-9681, CVE-2017-0738, CVE-2017-0728 Pengfei Ding (丁鹏飞), Chenfu Bao (包沉浮), and Lenx Wei (韦韬) of Baidu X-Lab (百度安全实验室)
CVE-2017-9680 Scott Bauer
CVE-2017-0724 Seven Shen (@lingtongshen) of TrendMicro
CVE-2017-0732, CVE-2017-0805 Timothy Becker of CSS Inc.
CVE-2017-10661 Tong Lin (segfault5514@gmail.com), Yuan-Tsung Lo (computernik@gmail.com), and Xuxian Jiang of C0RE Team
CVE-2017-0712 Valerio Costamagna (@vaio_co) and Marco Bartoli (@wsxarcher)
CVE-2017-0716 Vasily Vasiliev
CVE-2017-0750, CVE-2017-0713, CVE-2017-0715, CVE-2017-10662CVE-2017-10663 V.E.O (@VYSEa) of Mobile Threat Response Team, Trend Micro
CVE-2017-9678 Yan Zhou of Eagleye team, SCC, Huawei
CVE-2017-0749, CVE-2017-0746 Yonggang Guo (@guoygang) of IceSword Lab, Qihoo 360 Technology Co. Ltd.
CVE-2017-0729 Yongke Wang of Tencent's Xuanwu Lab
CVE-2017-0714, CVE-2017-0719, CVE-2017-0718, CVE-2017-0722, CVE-2017-0725, CVE-2017-0720, CVE-2017-0745 Zinuo Han of Chengdu Security Response Center, Qihoo 360 Technology Co. Ltd.

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, read the instructions on the Pixel and Nexus update schedule.

  • Security patch levels of 2017-08-01 or later address all issues associated with the 2017-08-01 security patch level.
  • Security patch levels of 2017-08-05 or later address all issues associated with the 2017-08-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]:[2017-08-01]
  • [ro.build.version.security_patch]:[2017-08-05]

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 August 01, 2017 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 August 05, 2017 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 a * next to the Android bug ID in the References column mean?

Issues that are not publicly available have a * next to the Android bug ID in the References column. The update for that issue is generally contained in the latest binary drivers for Nexus devices available from the Google Developer site.

Versions

Version Date Notes
1.0 August 7, 2017 Bulletin published.
1.1 August 8, 2017 Bulletin revised to include AOSP links and acknowledgements.
1.2 August 14, 2017 Bulletin revised to add CVE-2017-0687.
1.2 August 23, 2017 Bulletin revised to add CVE-2017-0805.