<html devsite>
  <head>
    <title>Pixel&hairsp;/&hairsp;Nexus Security Bulletin—February 2018</title>
    <meta name="project_path" value="/_project.yaml" />
    <meta name="book_path" value="/_book.yaml" />
  </head>
  <body>
  <!--
      Copyright 2018 The Android Open Source Project

      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
      You may obtain a copy of the License at

          //www.apache.org/licenses/LICENSE-2.0

      Unless required by applicable law or agreed to in writing, software
      distributed under the License is distributed on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
      See the License for the specific language governing permissions and
      limitations under the License.
  -->


<p><em>Published February 5, 2018 | Updated April 30, 2018</em></p>

<p>
The Pixel&hairsp;/&hairsp;Nexus Security Bulletin contains details of security
vulnerabilities and functional improvements affecting <a
href="https://support.google.com/pixelphone/answer/4457705#pixel_phones&nexus_devices">supported
Google Pixel and Nexus devices</a> (Google devices). For Google devices,
security patch levels of 2018-02-05 or later address all issues in this
bulletin and all issues in the  <a href="/security/bulletin/2018-02-01">February
2018 Android Security Bulletin</a>. To learn how to check a device's security
patch level, see <a href="https://support.google.com/pixelphone/answer/4457705">Check
and update your Android version</a>.</p>
<p>
All supported Google devices will receive an update to the 2018-02-05 patch
level. We encourage all customers to accept these updates to their devices.
</p>
<p class="note">
<strong>Note:</strong> The Google device firmware images are available on the <a
href="https://developers.google.com/android/nexus/images">Google Developer
site</a>.
</p>
<h2 id="announcements">Announcements</h2>
<p>In addition to the security vulnerabilities described in the
<a href="/security/bulletin/2018-02-01">February 2018 Android Security Bulletin</a>,
Pixel and Nexus devices also contain patches for the
security vulnerabilities described below. Partners were notified of these issues
at least a month ago and may choose to incorporate them as part of their device
updates.</p>

<h2 id="security-patches">Security patches</h2>
<p>
Vulnerabilities are grouped under the component that they affect. There is a
description of the issue and a table with the CVE, associated references, <a
href="#type">type of vulnerability</a>, <a
href="https://source.android.com/security/overview/updates-resources.html#severity">severity</a>,
and updated Android Open Source Project (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.
</p>

<h3 id="framework">Framework</h3>

<table>
  <col width="17%">
  <col width="19%">
  <col width="9%">
  <col width="14%">
  <col width="39%">
  <tr>
    <th>CVE</th>
    <th>References</th>
    <th>Type</th>
    <th>Severity</th>
    <th>Updated AOSP versions</th>
  </tr>
  <tr>
    <td>CVE-2017-13239</td>
    <td>A-66244132<a href="#asterisk">*</a></td>
    <td>ID</td>
    <td>Moderate</td>
    <td>8.0</td>
  </tr>
  <tr>
    <td>CVE-2017-13240</td>
   <td><a href="https://android.googlesource.com/platform/frameworks/base/+/5025791ac6d1538224e19189397de8d71dcb1a12">
   A-68694819</a>
   </td>
    <td>ID</td>
    <td>Moderate</td>
    <td>8.0, 8.1</td>
  </tr>
</table>


<h3 id="media-framework">Media framework</h3>

<table>
  <col width="17%">
  <col width="19%">
  <col width="9%">
  <col width="14%">
  <col width="39%">
  <tr>
    <th>CVE</th>
    <th>References</th>
    <th>Type</th>
    <th>Severity</th>
    <th>Updated AOSP versions</th>
  </tr>
  <tr>
    <td>CVE-2017-13241</td>
   <td><a href="https://android.googlesource.com/platform/frameworks/av/+/158af2ed6d9d03ff24fe1d12ea6eb6a7bbcce383">
   A-69065651</a>
   </td>
    <td>ID</td>
    <td>Moderate</td>
    <td>5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2, 8.0, 8.1</td>
  </tr>
  <tr>
    <td rowspan="2">CVE-2017-13229</td>
    <td rowspan="2"><a href="https://android.googlesource.com/platform/external/sonivox/+/f3decaa147faaf090a23b65239658a6749a4e80c">
    A-68160703</a></td>
    <td>RCE</td>
    <td>Moderate</td>
    <td>7.0, 7.1.1, 7.1.2, 8.0, 8.1</td>
  </tr>
  <tr>
    <td>RCE</td>
    <td>Critical</td>
    <td>5.1.1, 6.0, 6.0.1</td>
  </tr>
  <tr>
    <td rowspan="2">CVE-2017-13235</td>
    <td rowspan="2"><a href="https://android.googlesource.com/platform/frameworks/av/+/28e9a544ef076b5cadb30066b2e283017ad9e3b3">
    A-68342866</a></td>
    <td>NSI</td>
    <td>NSI</td>
    <td>7.0, 7.1.1, 7.1.2, 8.0, 8.1</td>
  </tr>
  <tr>
    <td>DoS</td>
    <td>High</td>
    <td>5.1.1, 6.0, 6.0.1</td>
  </tr>
</table>


<h3 id="system">System</h3>

<table>
  <col width="17%">
  <col width="19%">
  <col width="9%">
  <col width="14%">
  <col width="39%">
  <tr>
    <th>CVE</th>
    <th>References</th>
    <th>Type</th>
    <th>Severity</th>
    <th>Updated AOSP versions</th>
  </tr>
  <tr>
    <td>CVE-2017-13242</td>
   <td><a href="https://android.googlesource.com/platform/packages/apps/Settings/+/26e2b2456a444777de114f728c4dc2af88c2fb03">
   A-62672248</a>
   [<a href="https://android.googlesource.com/platform/packages/apps/Settings/+/7ed7d00e6028234088b58bf6d6d9362a5effece1">2</a>]
   </td>
    <td>ID</td>
    <td>Moderate</td>
    <td>6.0, 6.0.1, 7.0, 7.1.1, 7.1.2, 8.0, 8.1</td>
  </tr>
  <tr>
    <td>CVE-2017-13243</td>
    <td>A-38258991<a href="#asterisk">*</a></td>
    <td>ID</td>
    <td>Moderate</td>
    <td>5.1.1, 6.0, 6.0.1, 7.0, 7.1.1, 7.1.2, 8.0</td>
  </tr>
</table>


<h3 id="kernel-components">Kernel components</h3>

<table>
  <col width="17%">
  <col width="19%">
  <col width="9%">
  <col width="14%">
  <col width="39%">
  <tr>
    <th>CVE</th>
    <th>References</th>
    <th>Type</th>
    <th>Severity</th>
    <th>Component</th>
  </tr>
  <tr>
    <td>CVE-2017-13244</td>
    <td>A-62678986<a href="#asterisk">*</a></td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>Easel</td>
  </tr>
  <tr>
    <td>CVE-2017-13245</td>
    <td>A-64315347<a href="#asterisk">*</a></td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>Audio driver</td>
  </tr>
  <tr>
    <td>CVE-2017-1000405</td>
    <td>A-69934280<br />
        <a href="https://github.com/torvalds/linux/commit/a8f97366452ed491d13cf1e44241bc0b5740b1f0">
Upstream kernel</a></td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>Page management</td>
  </tr>
  <tr>
    <td>CVE-2017-13246</td>
    <td>A-36279469<a href="#asterisk">*</a></td>
    <td>ID</td>
    <td>Moderate</td>
    <td>Network driver</td>
  </tr>
</table>


<h3 id="qualcomm-components">Qualcomm components</h3>

<table>
  <col width="17%">
  <col width="19%">
  <col width="9%">
  <col width="14%">
  <col width="39%">
  <tr>
    <th>CVE</th>
    <th>References</th>
    <th>Type</th>
    <th>Severity</th>
    <th>Component</th>
  </tr>
  <tr>
    <td>CVE-2017-15817</td>
    <td>A-68992394<br />
        <a href="https://source.codeaurora.org/quic/la/platform/vendor/qcom-opensource/wlan/prima/commit/?id=8ba78e506e5002cdae525dd544dbf1df0ccce1ef">
QC-CR#2076603</a>
       [<a href="https://source.codeaurora.org/quic/la/platform/vendor/qcom-opensource/wlan/prima/commit/?id=fe43c2b64ac81199de17efc258e95546cb0546f1">2</a>]</td>
    <td>RCE</td>
    <td>Critical</td>
    <td>WLan</td>
  </tr>
  <tr>
    <td>CVE-2017-15859</td>
    <td>A-65468985<br />
        <a href="https://source.codeaurora.org/quic/la/platform/vendor/qcom-opensource/wlan/qcacld-2.0/commit/?id=88dcc44ea8fbe158d1dee3ea197e47794bf4449d">
QC-CR#2059715</a></td>
    <td>ID</td>
    <td>Moderate</td>
    <td>qcacld-2.0</td>
  </tr>
  <tr>
    <td>CVE-2017-17769</td>
    <td>A-65172622<a href="#asterisk">*</a><br />
        QC-CR#2110256</td>
    <td>ID</td>
    <td>Moderate</td>
    <td>qdsp6v2</td>
  </tr>
  <tr>
    <td>CVE-2017-9723</td>
    <td>A-68992479<br />
        <a href="https://source.codeaurora.org/quic/la/kernel/msm-3.18/commit/?id=e83ebd2098009b0d336ffab11e00f739902bd5d9">
QC-CR#2007828</a></td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>synaptics_dsx_htc touchscreen driver</td>
  </tr>
  <tr>
    <td>CVE-2017-14881</td>
    <td>A-68992478<br />
        <a href="https://source.codeaurora.org/quic/la/kernel/msm-3.10/commit/?id=81ea9c34f575422a78015535c619500c34b8a69c">
QC-CR#2087492</a>
    [<a href="https://source.codeaurora.org/quic/la/kernel/msm-3.18/commit/?id=1e14c7342bbb55f4ff761cf8cb7374750620c903">2</a>]</td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>ipa driver</td>
  </tr>
  <tr>
    <td>CVE-2017-14877</td>
    <td>A-68992473<br />
        <a href="https://source.codeaurora.org/quic/la/kernel/msm-3.10/commit/?id=ca395c15c49cf6463a39d197b6a9331d183d94cb">
QC-CR#2057803</a>
    [<a href="https://source.codeaurora.org/quic/la/kernel/msm-3.18/commit/?id=c2fd287bf16dc5e9f98145ba91083bdc56dfc01f">2</a>]</td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>ipa driver</td>
  </tr>
  <tr>
    <td>CVE-2017-15826</td>
    <td>A-68992471<br />
        <a href="https://source.codeaurora.org/quic/la/kernel/msm-4.4/commit/?id=5ac3e9d038a7ee7edf77dde2dffae6f8ba528848">
QC-CR#2100085</a>
    [<a href="https://source.codeaurora.org/quic/la/kernel/msm-3.18/commit/?id=46db8f8292f71d0086140ae90bce5ae8ff161cb1">2</a>]</td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>MDSS rotator</td>
  </tr>
  <tr>
    <td>CVE-2017-14876</td>
    <td>A-68992468<br />
        <a href="https://source.codeaurora.org/quic/la/kernel/msm-3.18/commit/?id=f26dbd9d9491333766ba383044064b1304127ac0">
QC-CR#2054041</a></td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>MSM camera_v2 driver</td>
  </tr>
  <tr>
    <td>CVE-2017-14892</td>
    <td>A-68992455<br />
        <a href="https://source.codeaurora.org/quic/la/kernel/msm-3.18/commit/?id=a3bed71777c133cfec78b5140877c6ba109961a0">
QC-CR#2096407</a></td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>qdsp6v2</td>
  </tr>
  <tr>
    <td>CVE-2017-17766</td>
    <td>A-68992448<br />
        <a href="https://source.codeaurora.org/quic/la/platform/vendor/qcom-opensource/wlan/qcacld-3.0/commit/?id=a37d8a78f5bd0e9a2c91de46721a6d80bd229a43">
QC-CR#2115366</a></td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>WiFi</td>
  </tr>
  <tr>
    <td>CVE-2017-15823</td>
    <td>A-68992447<br />
        <a href="https://source.codeaurora.org/quic/la/platform/vendor/qcom-opensource/wlan/qcacld-3.0/commit/?id=49c1ce19c8a4689c33e6e8f17ab77d77fae6ff93">
QC-CR#2115365</a></td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>WiFi</td>
  </tr>
  <tr>
    <td>CVE-2017-15852</td>
    <td>A-36730614<a href="#asterisk">*</a><br />
        QC-CR#2028702</td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>Framebuffer</td>
  </tr>
  <tr>
    <td>CVE-2017-15846</td>
    <td>A-67713103<br />
        <a href="https://source.codeaurora.org/quic/la/kernel/msm-3.18/commit/?id=9fdbd92ec9196ba3629f68f4c22342aa6eedc960">
QC-CR#2083314</a>
    [<a href="https://source.codeaurora.org/quic/la/kernel/msm-3.18/commit/?id=9c18cc5551afc7318f57571611252fa80e1753a0">2</a>]</td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>Camera</td>
  </tr>
  <tr>
    <td>CVE-2017-14883</td>
    <td>A-68992426<br />
        <a href="https://source.codeaurora.org/quic/la/platform/vendor/qcom-opensource/wlan/qcacld-3.0/commit/?id=3de34af4e2ca91e1a2260deb380b81620a631c85">
QC-CR#2112832</a></td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>Power</td>
  </tr>
  <tr>
    <td>CVE-2017-11043</td>
    <td>A-68992421<br />
        <a href="https://source.codeaurora.org/quic/la/platform/vendor/qcom-opensource/wlan/qcacld-3.0/commit/?id=befd1f713a72b992ee63970b7e3d1d7a32ba5a01">
QC-CR#2091584</a></td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>WiFi</td>
  </tr>
  <tr>
    <td>CVE-2017-14875</td>
    <td>A-68992465<br />
        <a href="https://source.codeaurora.org/quic/la/kernel/msm-4.4/commit/?id=755261330733bb2440907a8407ed691c99451ddc">
QC-CR#2042147</a></td>
    <td>ID</td>
    <td>Moderate</td>
    <td>Camera</td>
  </tr>
  <tr>
    <td>CVE-2017-14891</td>
    <td>A-68992453<br />
        <a href="https://source.codeaurora.org/quic/la/kernel/msm-3.18/commit/?id=736667bf08b03fdca824e88b901c2dbdd6703a0c">
QC-CR#2096006</a></td>
    <td>ID</td>
    <td>Moderate</td>
    <td>KGSL</td>
  </tr>
  <tr>
    <td>CVE-2017-17771</td>
    <td>A-38196031<br />
        <a href="https://source.codeaurora.org/quic/la//kernel/msm-4.4/commit/?id=a452045792bc09548b4e1b940aa8adfed822b51c">
QC-CR#2003798</a></td>
    <td>EoP</td>
    <td>Moderate</td>
    <td>Camera driver</td>
  </tr>
  <tr>
    <td>CVE-2017-11087</td>
    <td>A-34735194<a href="#asterisk">*</a><br />
        QC-CR#2053869</td>
    <td>ID</td>
    <td>Moderate</td>
    <td>Media framework</td>
  </tr>
</table>

<h2 id="functional-updates">Functional updates</h2>
<p>
These updates are included for affected Pixel devices to address functionality
issues not related to the security of Pixel devices. The table includes
associated references; the affected category, such as Bluetooth or mobile data;
and a summary of the issue.
</p>

<table>
  <tr>
   <th>References</th>
   <th>Category</th>
   <th>Improvements</th>
   <th>Devices</th>
  </tr>
  <tr>
   <td>A-68863351</td>
   <td>UX</td>
   <td>Improved icons in Settings app.</td>
   <td>All</td>
  </tr>
  <tr>
   <td>A-68198663</td>
   <td>Bluetooth</td>
   <td>Improved Bluetooth call quality for some headsets.</td>
   <td>Pixel, Pixel XL, Pixel 2, Pixel 2 XL</td>
  </tr>
  <tr>
   <td>A-68317240</td>
   <td>Wi-Fi</td>
   <td>Improved Wi-Fi uplink performance.</td>
   <td>Pixel 2, Pixel 2 XL</td>
  </tr>
  <tr>
   <td>A-69263786</td>
   <td>Camera</td>
   <td>Improved Camera performance in certain light conditions.</td>
   <td>Pixel 2, Pixel 2 XL</td>
  </tr>
  <tr>
   <td>A-67844294</td>
   <td>Android Auto</td>
   <td>Improved Android Auto Projected performance for some cars.</td>
   <td>Pixel 2, Pixel 2 XL</td>
  </tr>
  <tr>
   <td>A-69349260</td>
   <td>App compatibility</td>
   <td>Improved RSA key parsing from byte arrays.</td>
   <td>All</td>
  </tr>
  <tr>
   <td>A-68832228</td>
   <td>Power</td>
   <td>Improved battery performance on some Pixel 2XL devices.</td>
   <td>Pixel 2 XL</td>
  </tr>
  <tr>
   <td>A-69797895</td>
   <td>Mobile data</td>
   <td>Improved data performance for Telus users in certain network
environments.</td>
   <td>Pixel 2</td>
  </tr>
  <tr>
   <td>A-68368139</td>
   <td>Stability</td>
   <td>Improved device stability after booting in certain situations.</td>
   <td>Pixel 2, Pixel 2 XL</td>
  </tr>
  <tr>
   <td>A-68874871</td>
   <td>Audio</td>
   <td>Improved routing when switching audio outputs.</td>
   <td>Pixel 2, Pixel 2 XL</td>
  </tr>
</table>


<h2 id="common-questions-and-answers">Common questions and answers</h2>
<p>
This section answers common questions that may occur after reading this
bulletin.
</p>
<p>
<strong>1. How do I determine if my device is updated to address these issues?
</strong>
</p>
<p>
Security patch levels of 2018-02-05 or later address all issues associated with
the 2018-02-05 security patch level and all previous patch levels. To learn how
to check a device's security patch level, read the instructions on the
<a href="https://support.google.com/pixelphone/answer/4457705#pixel_phones&nexus_devices">Pixel
and Nexus update schedule</a>.
</p>
<p id="type">
<strong>2. What do the entries in the <em>Type</em> column mean?</strong>
</p>
<p>
Entries in the <em>Type</em> column of the vulnerability details table reference
the classification of the security vulnerability.
</p>
<table>
  <col width="25%">
  <col width="75%">
  <tr>
   <th>Abbreviation</th>
   <th>Definition</th>
  </tr>
  <tr>
   <td>RCE</td>
   <td>Remote code execution</td>
  </tr>
  <tr>
   <td>EoP</td>
   <td>Elevation of privilege</td>
  </tr>
  <tr>
   <td>ID</td>
   <td>Information disclosure</td>
  </tr>
  <tr>
   <td>DoS</td>
   <td>Denial of service</td>
  </tr>
  <tr>
   <td>N/A</td>
   <td>Classification not available</td>
  </tr>
</table>
<p>
<strong>3. What do the entries in the <em>References</em> column mean?</strong>
</p>
<p>
Entries under the <em>References</em> column of the vulnerability details table
may contain a prefix identifying the organization to which the reference value
belongs.
</p>
<table>
  <col width="25%">
  <col width="75%">
  <tr>
   <th>Prefix</th>
   <th>Reference</th>
  </tr>
  <tr>
   <td>A-</td>
   <td>Android bug ID</td>
  </tr>
  <tr>
   <td>QC-</td>
   <td>Qualcomm reference number</td>
  </tr>
  <tr>
   <td>M-</td>
   <td>MediaTek reference number</td>
  </tr>
  <tr>
   <td>N-</td>
   <td>NVIDIA reference number</td>
  </tr>
  <tr>
   <td>B-</td>
   <td>Broadcom reference number</td>
  </tr>
</table>
<p id="asterisk">
<strong>4. What does a * next to the Android bug ID in the <em>References</em>
column mean?</strong>
</p>
<p>
Issues that are not publicly available have a * next to the Android bug ID in
the <em>References</em> column. The update for that issue is generally contained
in the latest binary drivers for Nexus devices available from the
<a href="https://developers.google.com/android/nexus/drivers">Google Developer
site</a>.
</p>
<p>
<strong>5. Why are security vulnerabilities split between this bulletin and the
Android Security Bulletins?</strong>
</p>
<p>
Security vulnerabilities that are documented in the Android Security Bulletins
are required in order to declare the latest security patch level on Android
devices. Additional security vulnerabilities, such as those documented in this
bulletin, are not required for declaring a security patch level.
</p>
<h2 id="versions">Versions</h2>
<table>
  <col width="25%">
  <col width="25%">
  <col width="50%">
  <tr>
   <th>Version</th>
   <th>Date</th>
   <th>Notes</th>
  </tr>
  <tr>
   <td>1.0</td>
   <td>February 5, 2018</td>
   <td>Bulletin published.</td>
  </tr>
  <tr>
   <td>1.1</td>
   <td>February 7, 2018</td>
   <td>Bulletin revised to include AOSP links.</td>
  </tr>
      <tr>
   <td>1.3</td>
   <td>April 2, 2018</td>
   <td>Moved CVE-2017-15817 from the February Android Bulletin to the February Pixel Bulletin.</td>
  </tr>
   <tr>
   <td>1.4</td>
   <td>April 30, 2018</td>
   <td>Updated CVE-2017-15852 from CR 2046770 to CR 2028702.</td>
  </tr>
</table>

</body></html>
