IntelのCPUに、メッセージの署名鍵が漏えいする可能性がある新たな脆弱性が存在することが明らかになったが、同社はこの脆弱性の有効性を否定しており、修正を行う予定はないようだ。
この脆弱性は「Black Hat USA 2018」で発表される予定で、この発表では、「OpenBSD」でIntelのCPUのハイパースレッディング機能を無効化する決定をした理由が説明される。
OpenBSDプロジェクトの責任者Theo de Raadt氏は、アムステルダム自由大学のSystems and Network Security Groupの研究者が書いた論文を読んで、この機能に対するサポートを停止したと述べている。
米国時間6月22日には、The Registerがこの論文の詳細について報じている。この論文は、Intelのハイパースレッディング技術を利用して、データの暗号署名に使用される256ビットのEdDSA暗号鍵を高確率で入手する攻撃方法を詳しく説明したものだ。
研究者らは、「TLBleed」と名付けられたこの攻撃は、IntelのCPUアーキテクチャに応じて、最低でも98%のテストで別のプログラムが持っている暗号鍵のデータを取得できたと主張している。情報の取得は、その鍵がデータの署名に使用されている際に発生している。
この攻撃はIntelのハイパースレッディング技術を利用するもので、投機的実行を利用する「Spectre」や「Meltdown」とは異なるものだ。ハイパースレッディング技術は、Intelのプロセッサシリーズ「Core」「Core vPro」「Core M」「Xeon」に搭載されている。
公開された論文の概要によれば、このサイドチャネル攻撃は、最近使用された仮想メモリアドレスと物理メモリアドレスのマッピング情報を保持するキャッシュである、トランスレーションルックアサイドバッファ(TLB)から情報を取得するという。
ハイパースレッディング技術が有効になっていると、単一のコアで同時に複数のスレッドを実行することができるが、この際、コアではメモリキャッシュとTLBが共有される。
研究者らは、これを悪用するエクスプロイトを使用することで、別のプログラムが暗号ライブラリ「libgcrypt」でメッセージを署名している際に、署名鍵を取得することができると述べている。
脆弱性を悪用するには、標的のシステムにあらかじめマルウェアを走らせておくか、システムにログインできている必要がある。しかし、パブリッククラウドで仮想マシンを稼働している場合は、同じマシン上の他のインスタンスが脅威となる可能性がある。
Intelがこのバグを修正する可能性は低く、研究者らに脆弱性発見報奨金も支払っていない。Intelは、同社が使用しているキャッシュの保護手段で、TLBleedの攻撃をブロックできるとしている。
しかしTLBleedを考案した研究者グループの1人であるBen Gras氏は、ツイートの中で、この攻撃は、キャッシュの分離などのサイドチャネル攻撃に対する既存の保護手段は不十分であることを示していると述べている。
この記事は海外CBS Interactive発の記事を朝日インタラクティブが日本向けに編集したものです。