【号外】Meltdown、Spectorの影響、及び対策について
皆様こんにちは。キューブ・エス中村です。
ブログを書き始めて早々ですが、今年1月3日に
この世に出回っている多くのコンピュータの根幹、頭脳である
CPUにバグが発見されたという、相当にクリティカルな報告が
世界中を駆け巡りました。
本日は号外としてこのバグ、
「メルトダウン」、及び「スペクター」について
色々書かせて頂ければと考えます。
■「メルトダウン」、「スペクター」とはどういうバグなのか
スペクターはCPUの高速化の為の仕組みの一つである「分岐予測」を悪用し、
通常ロールバックする事でフラッシュされるべきキャッシュ内の情報を
意図的に短時間滞留させて、不要判断される前にプログラムに計算させて
読み出しをすることが出来る様になるという仕組み(CVE-2017-5753)と
分岐元のメモリアドレスの内の12bitを元に分岐先のメモリアドレスを
予想している特性を使った、同一CPUコアをそのCPU上にて展開する仮想CPUコアで
共有する別VM上に作ったPCのメモリ内のプログラムの
意図的投機実行(CVE-2017-5715)が出来てしまう脆弱性との総称です。
このスペクターの前者に比べ、後者は再現性は高いものの
条件的にかなりインフラや環境レベルで限定的な場合に起こり得る脆弱性であり
脆弱性として存在している物の、そこまでクリティカルでは無いようです。
ただ、一方で前者は勿論根本的な対策=CPU交換となる為、
基盤レベルでの対策が難しい事を考えると、今後年単位で
プログラム単位での対策を求められる事になるでしょう。
一方、メルトダウン(CVE-2017-5754)は「アウト・オブ・オーダー」と
「分岐予測」の二つを悪用した上で実効する事が出来る脆弱性で、
悪用するとキャッシュに保存されたメモリ情報を読み出す事が出来る様になります。
但し、こちらも実効条件が厳しく、実効環境、実行命令等が時系列に則る必要があります。
■発生する対象CPUは?
Intel系CPUは過去に遡りほぼ全てスペクター、メルトダウン共に
対象であると考えて問題は無い様です。
AMD系CPUはスペクターに関しては特に発生しないとの声明が出ている様ですが
メルトダウンは対象であると考えないといけない様です。
また、一部のARM系CPUも対象との事ですので、
UNIX系OSで作られている昨今のスマートホンは
基本的に影響を受ける可能性があります。
尚、下記等のチェッカーもある為、OS別で確認をして
対応を検討して下さい。
・Windows: Ashampoo Spectre Meltdown CPU Checker
・Linux : spectre-meltdown-checker
■対策はどうすれば良いのか?
簡単に言えば、OSのアップグレードを行なう事で各環境対応が出来る様です。
Windows、及びMACに関しては通常通りWindowsUpdateやOSアップグレード等の
パッチ適用をすれば問題ありません。
LinuxについてはRedhat系、Debian/GNU系両方ともに
パッケージ管理ツールを使用して対応可能なようです。
yum upgrade、又はapt-get upgradeを実行してカーネルも含めた
アップグレードが出来れば解決できそうです。
ただ、2018年1月15日現在、CVE-2017-5715の対策が完了していない様に見えます。
基本的に環境的に厳密且つ限定的な条件が揃った時のみ発生する事象である為、
他二つが正常に対策できていれば問題は無い様に思いますが、
継続的に状況を注視した方が良いでしょう。
後ほど調べていて気付いたのですが、パッチレベルでは
どうやら適用されている事に気づきました。
ただ、BIOSの設定変更等、基盤側の問題もありますので、
とりあえずわかっているのは
「弊社の契約しているクラウドサービスではまだ未対応」
と言う状態の様子です。
各社順次対応については検討されている様子ですので、
結局のところ結論は継続的な状況注視にはなるのですが、
誤った情報公開については失礼いたしました。