kledgeb UbuntuやLinuxの最新情報を紹介

MeltdownとSpectreの対応状況(2018/1/29)

2018年1月29日時点の「Meltdown」と「Spectre」の対応状況の紹介です。


ここではデスクトップユーザー向けの情報を中心にピックアップします。
クラウド環境や開発者は、以下のドキュメントを参照してください。

MeltdownとSpectre

「Meltdown」と「Spectre」の内容や「Ubuntu」の対応方針は、以下を参照してください。


「Ubuntu」では「Meltdown」と「Spectre」に対応するため、以下のアップデートが必要になります。

  • Linux kernel
  • CPUのマイクロコード(もしくはファームウェアのアップデート) 
  • ハイパーバイザー
  • ユーザースペースで動作する様々なソフトウェア及びそれを含むパッケージ

脆弱性の識別情報

「Meltdown」と「Spectre」は、以下の「CVE」によって識別されます。

名称 Variant 概要 Ubuntu CVEトラッカー
Spectre Variant 1 Bounds Check Bypass CVE-2017-5753
Spectre Variant 2 Branch Target Injection CVE-2017-5715
Meltdown Variant 3 Rogue Data Cache Load CVE-2017-5754

ドキュメント

常に「Ubuntu」の対応状況に関する最新の情報を把握したい場合は、以下のドキュメントを参照してください。


技術的なFAQは、以下のドキュメントを参照してください。


軽減策の導入によるパフォーマンスの影響に関し、いくつかのサードパーティーがパフォーマンスデータを公開しています。
その内容は、以下のドキュメントを参照してください。


軽減策の有効・無効の切り替えは、以下のドキュメントを参照してください。
既定では有効になります。


Linux kernelの対応状況

「Linux kernel」の対応状況です。

Ubuntu Linux
kernel
i386
(x86)
amd64
(x86_64)
ppc64el s390x armhf arm64 最新のUSN
S1 S2 M S1 S2 M S1 S2 M S1 S2 M S1 S2 M S1 S2 M
17.10 4.13 Y - - Y F Y Y F F Y F NA - - - - - - USN-3541-1 
16.04 LTS 4.13 HWE Y - - Y F Y Y F F Y F NA - - - - - - USN-3541-2 
4.4 Y - - Y F Y Y F F Y F NA - - - - - - USN-3540-1
14.04 LTS 4.4 HWE Y - - Y F Y Y F F U - - - - - - USN-3540-2
3.13 Y - - Y F Y - - - U - - - - - - USN-3542-1
12.04 ESM 3.13 HWE U Y F Y U U U U USN-3542-2
3.2 U - - Y U U U U USN-3525-1

凡例

記号 内容
S1 Spectre / Variant 1 / CVE-2017-5753
S2 Spectre / Variant 2 / CVE-2017-5715
M Meltdown / Variant 3 / CVE-2017-5754
Y 問題を軽減するアップデートは提供済み
F 問題を軽減するアップデートは提供済みだが、
それ加え問題に対応したマイクロコードもしくはファームウェアのアップデートが必要
- 問題を軽減するアップデートは、まだ提供されていない
NA このアーキテクチャーは、影響を受けない
U このアーキテクチャーは、サポートされていない

注意事項

  • Linux kernelはretpolineを使用してビルドされていない(retpolineのサポートはまだ行われていない)
  • Intel及びAMDからマイクロコードがリリースされていない
  • 問題に対応したマイクロコードもしくはファームウェアのアップデートが提供されていない場合、Spectre Variant 2の影響の軽減は行われない
  • Ubuntu 16.04 LTSのHWEカーネルは、4.13に移行済み(4.10 HWEカーネルは本脆弱性に対応しないため) 
  • 現在i386/x86(いわゆる32bit版)向けにMeltdownに対応したカーネルが提供されていないため、amd64/x86_64(いわゆる64bit版)カーネルへの移行を推奨する
  • ARM向けのアップデートはまだ一切提供されていない
  • ハイパーバイザーではqemuやカーネルのアップデートに加え、ゲストにSpectre Variant 2の軽減策を提供する必要がある

影響を受けるARMプロセッサーは、以下を参照してください。


Ubuntu 32bit版(i386/x86)のMeltdown対策について

現時点で32bit版「Linux kernel」に「KPTI」が実装されていないため、「Ubuntu 32bit版」ユーザーは「Meltdown」の影響を軽減することができません。
将来的にサポートされる可能性はありますが、現時点では軽減策がありません。

また32bit版「Linux kernel」に「KPTI」が実装されても、32bit版「Linux kernel」では「PCID」や「INVPCID」が利用できないため、「Meltdown」の影響を軽減できてもパフォーマンスへの影響を軽減することができません。

推奨される回避策として、ユーザースペースを32bit版に維持したまま、「KPTI」が有効になっている64bit版の「Linux kernel」をインストールする方法が紹介されています。
具体的な方法は以下を参照してください。


Ubuntu 16.04 LTSのHWEカーネル

「Ubuntu 16.04 LTS」で「HWEカーネル」を利用しているユーザーは、すでに「Ubuntu 17.10」ベースの「Linux kernel」に移行済みです。


ユーザースペースの対応状況

「Ubuntu 18.04」では、すべてのユーザースペースのソフトウェアがリビルドされる予定です。
「Ubuntu 17.10」「Ubuntu 16.04 LTS」「Ubuntu 14.04 LTS」では、一部のユーザースペースのソフトウェアを抜粋してリビルドされる予定です。

また、以下の対策済みソフトウェアは提供済みです。

ソフトウェア USN 備考
Firefox USN-3516-1 タイマーの精度を落とし、
タイマーの構築に利用できるメカニズムの無効化
WebKitGTK+ USN-3530-1 タイマーの精度を落とし、
タイマーの構築に利用できるメカニズムの無効化
NVIDIA graphics drivers USN-3521-1


関連コンテンツ
同一カテゴリーの記事
コメント
オプション