KNOWLEDGE - COLUMN ナレッジ - コラム

「Black Hat USA 2020」レポート(前編):注目の最新攻撃手法とその対策

サイバーセキュリティはゼロトラストの時代を迎え、日本ではソサエティ5.0へ向けてクラウドサービスやIoTへの取り組みが加速しています。次々に新しい技術や新しい脅威が生まれてくる中で、技術者やエンドユーザーはどんなところに注意すべきなのでしょうか。

本記事では、慶應義塾大学 理工学部 情報工学科の教授である河野健二氏をお迎えし、20208月に開催された米国のセキュリティカンファレンス「Black Hat USA 2020」の印象や、最新のセキュリティ動向、技術などについて、インフォメーション・ディベロプメント(ID)の関原弘樹、内山史一が話をうかがいます。


●「Black Hat USA 2020」で印象に残ったこと

 関原:最初に、「Black Hat USA2020」で印象に残ったことについてお聞かせください。

 河野氏:今年のBlack Hatはオンライン開催でしたので時差が厳しいと思っていましたが、アーカイブも公開されていたので興味のある講演だけを観ました。ハードウェア河野教授_426x756ベンダーが、さまざまな面白い機能を入れてきているのが印象に残っています。具体的には、ムーアの法則の限界で各CPUベンダーがクロック数の向上だけでは差別化が図れなくなってきているので、さまざまなセキュアな機能をCPUプロセッサーに入れて、安全性を高めていることをアピールしたいのだと思います。こうしたハードウェア機能はプリミティブなものを提供するだけなので、実際に使うにはノウハウや工夫が必要です。

基本的には、このようなセキュアな機能がハードウェアに入っていけば、全体的なセキュリティは理論的には改善されていくと期待できますが、実際には周辺のソフトウェアに脆弱性があり、そこから攻撃されてしまうといった講演が多かった印象です。ただし、古典的な手法では攻撃が難しくなっていて、かなり手の込んだ手法で脆弱性をエクスプロイトしています。学生がイタズラ気分で攻撃できる時代は終わりつつあると感じました。   

                                                                                                      

関原さん_782x708関原:CPUの機能が増えることでアタックサーフェイスが広くなると思うのですが、それでもCPUやハードウェアのNICでさまざまなセキュリティ機能を追加する方向で間違いないという印象でしょうか?

 

河野氏:ハードウェアに機能を追加したら安全になると言うつもりはありませんが、一つはCPUの実装の検証はソフトウェアよりは容易であること、もう一つはソフトウェアではオーバーヘッドが大きくなって実用にならないチェックがハードウェアでは可能になるので、攻撃に対する敷居はかなり高くなるでしょう。

  

●IoT時代のフィジカルセキュリティ

AdobeStock_277013344_6500x3656

内山さん_734x708

内山:低レイヤー、ハードウェアに近い部分の脆弱性が悪用されるのは検知しにくいですし、脅威としては無視できないものになってきていると思います。ただ、そういった攻撃が実際に行われる日は近いのでしょうか。それとも、まだまだ先なのでしょうか。Black Hatのスピーカーの方々は、どのようなトーンで話していましたか?

 

河野氏:BlackHatは基本的に、「こんな脆弱性(あるいは攻撃手法)を見つけたぞ」ということをアピールする傾向があります。では現実にクラウドプロバイダーなどが今回の攻撃手法を真剣に気にする必要があるかというと、まだ現状では必要ない気がします。というのも、攻撃の手法が高度でややこしいものになるからです。攻撃者にとっては簡単にできる攻撃が他にたくさんあるので、わざわざ苦労してそこを狙う可能性は低いでしょう。

 

内山:そうですよね。攻撃者としても同じ目的を達成するのであれば、攻撃手法としてやりやすい方を狙いますよね。

 

関原:私からは、「IoT時代のフィジカルセキュリティ」についてお聞きしたいと思います。先ほど、OSに入ってというお話がありましたが、以前のようにデータセンターにサーバーがあるのではなく、手元にCPUOSがある時代です。アタックサーフェイスが変わってきたこの時代に、ファームウェアなど低レイヤーに対するセキュリティのトレンドなどはいかがでしょうか。

 

河野氏:ファームウェアの脆弱性は、論文でも12年前から指摘されていて、脆弱性を見つける手法や防御法も多く目にしています。前述のように攻撃手法は手の込んだものになるので実際に攻撃を受ける可能性は低いのですが、ファームウェアを乗っ取ってしまえばやりたい放題ですので、影響は非常に大きくなります。デバイスが手元にあるという意味では、攻撃者もやりやすいといえます。

 

 ただ、ファームウェアもソフトウェアの一種ですから、対策としてはおそらく丁寧にパッチを当てていくという、今までと同じ作業が現実的になると思います。また、ファームウェアの定義にもいろいろあります。例えば、Linuxを組み込んでいるIoTデバイスでは、ファームウェアとOSが同一ということになりますので、従来のようにOSの脆弱性として対策していくことが現実解になるでしょう。

 

 IoTデバイスの脆弱性の方向性を見ていますと、作る側の責任も大きいと思います。例えばファームウェア、この場合はLinuxですが、そのルートのパスワードがブルートフォースアタックで破れてしまうような簡単なものになっていたり、設定のミスであったり、あるいは古いバージョンのLinuxで開発したものをそのままプロダクトに乗せてしまっているケースも多くあります。これは、ソフトウェアの専門家がいないIoTベンダーが多いことと、開発コストや市場への迅速な商品投入を優先していることが主な要因ですね。攻撃者からすれば、今は非常に狙いやすい状況だと思います。

 

 ●ソサエティ5.0を見据えたIoTへの対策AdobeStock_128568746_3264x1966

 

内山:日本では、国としてソサエティ5.0を見据えてIoTシステムを推進していこうとしていますが、業界的にはどう捉えているのでしょうか。

 

河野氏:私個人としてですが、これまで他の研究者と共同で、非常に薄い仮想化レイヤーを作ってきました。それをIoTデバイスも含めてOSの下に敷くことで、通常は何もしませんが、セキュリティ関する動きがあったときだけフックするということが理論上は可能です。それにより統一した仕組みを入れられるので、全体を制御することが可能になります。今はそれに取り組んでいます。

 

内山:その薄い仮想レイヤーというのは、ローカルにあるIoTのデバイスと、制御や、演算をするクラウド側の双方に入れるわけですか?

 

河野氏:同じものになります。XenKVMの仮想化に比べるとはるかに薄い機能だけを入れて、デバイスへのアクセスを必要に応じてフックするイメージですね。そのためARMが動くデバイスまでは対応したいですね。

 

内山:IoTシステムの安全性担保の面で非常に有益な取り組みですね。一日でも早く実現することを楽しみにしております。

 

関原:設計の担当者がIoTデバイスのセキュリティで気をつけることというと、きちんとファームのバージョンを揃える、ちゃんと更新する、必要な機能に絞っていくといったことでしょうか?

 

河野氏:現実的にはそうだと思います。サポートのツールも研究レベルのものを含めて各種出てきています。例えばパッチが公開されたときに、ベンダーが持っているソースコードに適用すべきかどうかを自動判別するものもありますので、そういったツールを活用できます。

 

関原:利用者側でできることはあまりないと思いますが、設計側で指定しておくべきデバイス要件はありますか? 例えばファームウェアのアップデートが簡単にできるようにするなど。

 

河野氏:ファームウェアなどは自動でアップデートするようにしてもいいですね。それはそれでリスクもありますので、可能であれば利用者がきちんとアップデートかける、サポートの終わったデバイスは使わない、といったことが理想ですね。

269102424_セキュリティアップデート_3988x2657

関原:やはりサポート期間を守る、説明書に従って使うことですね。次の質問ですが、先ほど「CPUの動作クロックが頭打ちになった」という話がありました。それでマルチコアにしたりキャッシュを増やしたり工夫しています。しかし、キャッシュやパイプラインの早期実行などのちょっとした動作がサイドチャネルの攻撃の足がかりになっている。これは認識としては正しいでしょうか。

 

河野氏:投機的実行、スペキュレイティブエクゼキューションのせいで、本来実行していない命令がCPUの内部で実行されて、キャッシュにその痕跡が残る。それを横から見ることで情報を入手するのがキャッシュサイドチャネルアタックですが、痕跡が残ることはCPUの開発者は以前から把握していました。しかし、痕跡が残ること自体は問題ではないのです。実際にCPUのキャッシュをのぞき見ようとすると、通常ではありえないアクセスパターンになるので、かなり簡単に検知できます。

 

 攻撃者が検知を回避しようとすると、非常に複雑な手法を編みだす必要があります。それに今は、CPUにキャッシュを論理的に分ける機能があります。キャッシュサイドチャネル攻撃では、キャッシュが複数のプロセスで共有されているから見ることができ、攻撃が成立します。そのため、共有部分を分けてしまえば攻撃者は見えなくなり、攻撃が成立しないわけです。

 

関原:リモートからのサイドチャネル攻撃であれば共有リソースをきっちり論理分割しておくことが効果的な回避方法だということが分かりました。

 

一方ローカルに物理デバイスを手に入れてのサイドチャネル攻撃では論理分割によらず情報を測定可能なので引き続き攻撃手法の進化に注目したいと思っています。

 

※本対談の直後、グラーツ工科大学のメンバーを中心とした共同研究チームにより、CPUが持つ消費電力の監視・制御インターフェイス経由でリモートから重要な暗号かぎ情報等を推測できる攻撃「PLATYPUS」が公表されている。

※外部サイト:PLAYPUS

 

後編に続く

 
当サイトの内容、テキスト、画像等の転載・転記・使用する場合は問い合わせよりご連絡下さい。
コラムの感想やリクエスト、セキュリティに関するお悩みも、問い合わせより受付中です!

問い合わせボタン_230x43

関原 弘樹

株式会社インフォメーション・ディベロプメント フェロー / CISSP

この執筆者の記事一覧

関連するナレッジ・コラム

【エバンジェリスト・ボイス】スマートシティの拡大から新たに生まれる脅威! 新しい暮らしのセキュリティ対策とは

【エバンジェリスト・ボイス】そのショッピングサイト大丈夫ですか?詐欺サイトの最新動向

「Black Hat USA 2020」レポート(後編):ソサエティ5.0時代の技術と脅威