Androidの「セキュリティパッチレベル」について説明します。

セキュリティパッチレベルの確認の仕方

Android端末を購入するとき、Androidのバージョンを調べる人は多いと思います。だいたい年1回ごとにアップデートされ、開発コード名はアルファベット順にお菓子の名前が割り当てられます。 KitkatとかMarshmallowとかのあれです。

お菓子のバージョンは搭載されている機能などの比較に使えますが、これとは別に重要なものとして「セキュリティパッチレベル」というものがあります。レベルは日付で表記される点が特徴的です。「設定」→「端末情報」から確認してみましょう。

なおセキュリティパッチレベルが明示されるのはAndroid6.0以降の端末で、メーカによっては表示されていないかもしれません。例えばXperia Z3ではAndroid6.0.1のアップデート以降はセキュリティパッチレベルが表示されています。

セキュリティパッチレベルとは?

セキュリティパッチレベルは基準となる日付で表記されており、その一覧はAndroid Security Bulletinsから確認できます。日付が後の方が、セキュリティがしっかりしているという事になります。

例えば2016年11月では、1日・5日・6日の3種類が用意されています。 2016/11/01では、主に以下の脆弱性に対処する必要があります。

  • CVE-2016-6699
  • CVE-2016-6700

2016/11/05では、2016/11/01で対応される脆弱性に加えて主に以下に対処する必要があります。

  • CVE-2016-6725
  • CVE-2016-6828

2016/11/06では、2016/11/05に加えて以下に対処します。

  • CVE-2016-5195

このように、各セキュリティレベルには「対処すべき脆弱性」が定められており、それらにすべて対応出来た端末だけが当該パッチレベルを表示できます。 Androidはセキュリティの対応がグダグダであることが問題となっていますが、Googleもその現状を何とかしたいと考えているようです。セキュリティパッチレベルは2015年10月から始まっています。

Androidのバージョンとセキュリティパッチレベルについて

Android Security Bulletinsでは、各脆弱性がAndroidのどのバージョンで改修されるかが分かります。 例えばCVE-2016-6703では以下のように示されます。

CVE 参照 重大度 更新対象のGoogle端末 更新対象のAOSPバージョン 報告日
CVE-2016-6703 A-30765246 なし 4.4.4, 5.0.2, 5.1.1
6.0, 6.0.1
Google 社内

この例の場合Android6.0.1ならパッチがアップされていますが、おそらくAndroid3.0系ではパッチがありません。(脆弱性そのものに関係ないかもしれません。)

問題は、メーカがそのアップデートを反映させるかどうかです。こういったセキュリティの心配に対してわかりやすさを提供してくれるのが「セキュリティパッチレベル」と言うことが出来そうです。