Meltdown（メルトダウン）とは、コンピュータ、スマートフォン、IoT家電など、マイクロプロセッサ（CPUなど）を使用する電子機器に幅広く存在するハードウェアレベルの脆弱性のひとつである。

本来マイクロプロセッサが実行するソフトウェアには、それぞれの種類に応じて特権レベルと呼ばれる権限階層が割り当てられており、OSの中枢であるカーネルやドライバには高い権限が、利用者がダウンロードしたアプリなどには低い権限が与えられ、低い権限のアプリが中枢機能の動作に支障しないように制御されている。

この脆弱性を利用すると、正当な権限のないプロセスが、ドライバやカーネルなどより高い特権レベルのメモリにアクセスすることが可能になる。

 概要 
脆弱性の影響を受けるマイクロプロセッサは、インテルの大多数の製品とARMの一部の製品であり、AMDの製品には影響しないとセキュリティ研究者によって考えられている。

CVE番号はCVE-2017-5754、脆弱性通称は"Rogue Data Cache Load"。

なお、Spectreという別の脆弱性（CVE-2017-5753:"Bounds Check Bypass"、"CVE-2017-5715":"Branch Target Injection"）もMeltdownと同時に発表されたが、こちらはインテルだけでなくAMDやARMの製品にも存在すると指摘されている。

 経緯 
Meltdownは、GoogleのProject ZeroとCyberus Technologyと グラーツ大学の研究者らによって別々に発見された。Spectreという別の脆弱性とともに、2018年1月4日 (JST) に公開された。
+タイムライン（日付は現地時間）2014年LinuxカーネルのASLR (KASLR) が実装2017年6月セキュリティ研究者によりKASLRに新たな脆弱性が見つかる。それを受け、 (kernel

page-table isolation) が開発された。KPTIは多くの脆弱性を除去することが分かった。この時点で

Meltdownは未発見だったが、Meltdownの脆弱性発見者によりKPTIがその有効な回避策であること

が検証された。2017年7月CyberWTFというウェブサイトで、脆弱性の概要が公表された。?Meltdown脆弱性は複数の研究者によって、Spectreという別の脆弱性と同様に発見された。2018年1月3日MeltdownとSpectreの両脆弱性がマスメディアで報道された。2018年2月1日Meltdown/Spectre脆弱性を突くマルウェアサンプル（実証コード）がAV-TESTにより発見された。

 詳細 
Meltdown Paper（PDF、英語）を参照のこと。

参考文献：Hisa Ando、『投機実行の隙を突くSpectre/Meltdownの仕組みを知る』マイナビニュース

 影響 

 インテル 
研究者によれば、原理的に、アウト・オブ・オーダー実行（投機的実行を含む）を実装しているインテル製プロセッサに潜在的影響があると指摘されている。Googleは1995年以降のプロセッサ全て（Intel Itaniumおよび2013年以前のIntel Atomを除く）が潜在的に影響を受けるとしている 。インテルはそれがIA-32アーキテクチャのPentium Pro 以降だとしている。もっとも、全てのCPUについて研究者による実証実験が実施された訳ではない。

インテルは2018年1月22日時点で影響があると判明しているプロセッサのリストを公表している。
 Nahalem世代のCore i3/i5/i7/M （32nm - 45nmプロセスルール）
 第2世代 - 第8世代Coreプロセッサ
 Core X for Intel X99/X299
 Xeon 3400/3600/5500/5600/6500/7500/E3/E3 v2 - v6/E5/E5 v2 - v4/E7/E7 v2 - v4
 Xeon Scalable/Phi 3200/5200/7200
 Atom C/E/A/x3/Z
 Celeron J/N (Bay Trail-D/M)
 Pentium J/N (Bay Trail-D/M)

 AMD 
2018年1月5日時点で、AMDのCPUがMeltdownの影響を受けたとするテスト結果は報告されていない。

 ARM 
ARMは、Cortex-R7/R8/A8/A9/A15/A17/A57/A72/A73/A75はSpectreの影響を受け、これに加えてCortex-A75はMeltdownの影響を受ける事を認めた。

ミドルレンジAndroid携帯電話端末の多数に使用されるオクタコアのARM Cortex-A53/A55 はアウト・オブ・オーダー実行をしないため、MeltdownやSpectreのいずれの脆弱性の影響も受けないとされている。Qualcomm Snapdragon 630/626/625/4xxもベースコアがCortex-A53/A55 のため同様である。Raspberry Piも影響を受けないとされている。

 POWER / IBM Z 
IBMは、POWERファミリーは当脆弱性の影響を受け、IBM Zの情報はIBM Z Portalで公開されると発表した。

 その他のCPUおよびベンダー 
Meltdown and Spectre: Which systems are affected by Meltdown?（英語）を参照のこと。

 システム 
本脆弱性は、Amazon Web Services (AWS)、Microsoft Azureや、Google Cloud Platform など主要なクラウドプロバイダへの影響が見込まれている。クラウドプロバイダは、構造上、重要なデータが保存されているのと同一の物理サーバ上でユーザーにプログラムを実行させており、重要なデータが保存されている特権メモリのロケーションへの不正なアクセスを防ぐ措置をCPUによるセーフガードに委ねているが、このセーフガードはMeltdown脆弱性により回避可能であるとされている。

論文の著者の1人は、準仮想化 (Xen) や、Docker、LXC、OpenVZといったコンテナが影響を受けると報告している。完全に仮想化されたマシンへの攻撃を行うと、ゲストユーザ空間がゲストカーネルメモリを読み込むことができるが、ホストのカーネル空間からはできないと述べている。

 回避策、アップデート 
（本見出し中の日付は特記ない場合2018年）

Meltdownは、Spectreと同様にCPUのハードウェアレベルの脆弱性であるため、オペレーティングシステム (OS) 側で回避策が取られつつある。また、(kernel page-table isolation) パッチはMeltdownに有効、Spectreには無効であるが、多くのベンダーはパッチがMeltdownとSpectreのどちらか（または双方）を回避、緩和するのか明確にしていない。

 インテル 
インテルは脆弱性に対処するためCPUのマイクロコードアップデートを、マザーボードおよびエンドユーザー製品メーカー向けに供給したが、予期しない再起動が頻発するために2018年1月22日には当該アップデートの適用を中止するよう促す公報を発表した。

 Windows 
マイクロソフトは、2018年1月3日（現地時間）に、本脆弱性に対処する緊急アップデートをWindows 10/8.1/7 SP1向けおよびServer製品やPosReady製品向けにリリースした 。

このアップデートは、一部のサードパーティー製アンチウイルス製品と互換性が無く、BSODを引き起こすことが知られている。Windows DefenderとMicrosoft Security Essentialsは互換性があるとされている。

アンチウイルス製品メーカー側の対応が完了するまでは、レジストリが設定されないので、このアップデートはダウンロードされないようになっている。アンチウイルス製品側が対応完了・アップデートされた場合は、自動的にレジストリが設定され、このアップデートがダウンロード、適用されるとしている。

また、上記アップデートはAMD Athlon X2 6000+ユーザーにも異常を引き起こすことが分かったが詳細な原因は不明である。

 macOS 
macOSは10.13.2以降、Meltdown対策が適用されている。なお、1月8日にリリースされた"macOS High Sierra 10.13.2 Supplemental Update" にてSpectre対策が適用されている（同時にSafariもアップデートされる）。

 Linux 
Linuxカーネルの開発者は、(kernel page-table isolation)と名付けたパッチ群を2018年初頭にカーネル4.15でリリースし、 これはカーネル4.9.75/4.14.11ではバックポートとしてリリースされた。

 レッドハット 
Red Hat Enterprise Linux のディストリビューション Ver.6 および Ver.7 でカーネルアップデートが実施された。 

 CentOS 
CentOS-6 / CentOS-7でカーネルアップデートがリリースされている。