Microsoftは米国時間3月1日、「Windows 10」に対する累積アップデート「KB4482887」をリリースした。同アップデートには重要なセキュリティフィックス、すなわち「Spectre Variant 2」(Spectre v2)脆弱性に対する新たな緩和策が含まれている。
この新たな緩和策は、Googleのエンジニアらによって生み出された「Retpoline」という技術に基づいている。
Retpolineを利用したコードにより、最新のプロセッサに存在するSpectre v2と呼ばれる脆弱性(「CVE-2017-5715」)からの保護が可能になる。Spectre v2を悪用することで攻撃者は、アプリケーション間の隔離機構を無効化し、ローカル環境で実行されているプロセスからデータを盗めるようになる。
Googleは2018年に、Linuxベースの同社サーバにRetpolineを配備するとともに、Linuxカーネルにパッチを寄贈した。そしてRetpolineは2018年を通じて、Red HatやSUSEのLinuxのほか、「Ubuntu」や「Oracle Linux 6」「Oracle Linux 7」といった大手ディストリビューションの間で徐々に採用が進んだ。
Microsoftは2018年に、「Windows」カーネルにRetpolineを統合する作業に着手した。同社は当初、Retpolineを用いた緩和策を、2019年春に提供する予定の次期機能アップデート「Windows 10 19H1」に搭載する計画だった。
当時、CrowdStrikeのリサーチャーであるAlex Ionescu氏をはじめとするWindowsカーネルの専門家らは、Microsoftにその気があれば、「Windows 10 October 2018 Update」(バージョン1809)でもこの緩和策を搭載できていたはずだと主張していた。
しかし、Windowsカーネルチームの開発マネージャーであるMehmet Iyigun氏は1日、Spectre v2の影響緩和に向けた取り組み状況を解説するMicrosoft Communityページをアップデートし、話はそれほど簡単ではないと述べた。
同氏は「この問題に関する実装と変更の複雑さにより、Windows 10のバージョン1809以降のリリースでのみ、Retpolineによるパフォーマンスへの影響を緩和できる」と述べるとともに、「今後数カ月をかけ、クラウド設定を通じた段階的なロールアウトの一環としてRetpolineを有効化していく」と述べた。
Googleが2018年にRetpolineを発表した際、同社は「Google Cloud」のサーバに対する影響が最大で1.5%だという数値をもとに、Retpolineによる「パフォーマンスへの影響は無視できる」と主張していた。
当時においてこの数値は、大半のLinuxディストリビューターらが報告していた10〜20%よりもはるかに小さかった。その差が大きかったがゆえに、OSに対するアップデートと、CPUのマイクロコードに対するアップデートを組み合わせてSpectre v2の緩和策に取り組もうとしていたディストリビューターらは、2018年1月に明らかにされ、一連の騒動の発端となった「Meltdown」と「Spectre」という脆弱性の対処よりも厄介なものだと考えていた。
提供:Image: ZDNet
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。