ハードウェアの難攻不落神話が崩壊――「Black Hat」で公開された衝撃のハッキング手法(1/2 ページ)

2月28日に米バージニア州で開催されたBlack Hatでは、ハードウェアをハッキングする2種類の画期的な方法が紹介された。従来からの「神話」を見事に崩壊させてしまったのだ。

» 2007年03月05日 18時04分 公開
[Lisa Vaas,eWEEK]
eWEEK

 バージニア州アーリントン発――2月28日の「Black Hat Briefings」に参加していなければ、システムがrootkitの攻撃を受けても、再イメージングによって被害は防げるはずだと、枕を高くして眠れただろう。PCの揮発性メモリ、すなわちRAMは、PCIカードやFireWireバスを介さなければ調べられないと、高をくくっていたかもしれない。

 だが、それは間違いだ。

 28日に現地で開催されたBlack Hatでは、ハードウェアをハッキングする2種類の画期的な方法が紹介された。まず聴衆に衝撃を与えたのは、Coseincの上級セキュリティ研究者であるジョアンナ・ルトコウスカ氏が発表した、ソフトウェアを使用するシステムメモリのハッキング手法である。同氏の発表は、インシデントレスポンスを確実に実施するには、「ハードウェアに頼る」のが最適解だというわれわれの信念を見事に覆した。

 システムメモリの不具合を修復するにはマシンを再起動するほかなく、したがって侵害の形跡はすべて消えてしまうことから、イベントに出席したセキュリティ専門家らは、同氏の手法をまるで「聖杯を手にしたようなもの」だと評した。

 電子情報捜査担当者にとっては、まさに悪夢と言ってよい状況である。それがどのような行為であれ、誰が自社のPCに手を出したのか、裁判所でも監査人の前でも、説明することも証明することも一切不可能になるのだ。

 ハードウェアの信頼失墜は、これだけにとどまらない。Next Generation Security Software(NGSS)のジョン・ヒースマン氏は、rootkitがデバイス自体やファームウェア上に居座り続け、マシンの再イメージングを行っても生き延びることを明らかにした。昨今では、再フォーマットも決定的な対策とはならないのだ。

 これほど高度なハッキングが日常的に起こるとは考えられないが、ハードウェアの難攻不落を盲信するわれわれの目を覚まさせるには、十分な衝撃だった。

 セキュリティサービスプロバイダーMandiantの主任ソフトウェアエンジニア、ジェイミー・バトラー氏は、Black HatでeWEEKのインタビューに応じ、ルトコウスカ氏が公にしたハッキング手法の重要性を次のように語った。「ハードウェアベースのメモリ取得は侵害に強いという考えは、神話であり伝説であることをあらわにした点で、同氏の発表には大きな意義があった。実際には、ソフトウェアを稼働させていて、メモリにアクセスしているなら、侵害を受けるおそれがある」(バトラー氏)

 ルトコウスカ氏は自らのブログでも、ハードウェアは無敵であるとする定説について、持論を述べている。「マルウェアがシステム侵害検知ソフトウェアと同じ権限レベルを有している場合(たいていはどちらもカーネルモードで動作している)、監視の目をごまかすのが簡単なのは周知の事実だ。わたしはこうした攻撃手法を、『Implementation Specific Attacks(ISA)』と呼んでいる。ISAに対抗するため、われわれはより優れた、より信頼性の高いシステム分析法を模索し、マルウェアによる侵害を回避しようと努力してきた。そうして生み出されたソリューションが、一般的にはPCIカードという形態をとる、揮発性メモリ(RAM)イメージを取得するハードウェアベースのデバイスである」(ルトコウスカ氏)

 こうしたデバイスには、セキュリティ専門家のブライアン・キャリア氏およびジョー・グランド氏が開発した概念実証デバイス「Tribble」や、米国政府の研究に携わっていなければ手に入らないBBN Technologiesの「CoPilot」などがあり、これらはDMA(Direct Memory Access)を利用して物理メモリにアクセスしている。この方法では、メモリにアクセスする際にCPUを経由せずに済むので、マルウェアがオペレーティングシステムに与えたいかなる悪影響にもさらされていない物理メモリを、安全に読み込むことができると考えられている。しかし、実際にはそうではないという。

 「メモリイメージを一度取得してしまえば、信頼できるマシン上で侵害の形跡を分析したり、PCIデバイスに自分自身をチェックさせることが可能だ。したがって、これこそが物理メモリを安全に読み込む方法だと思ってしまいがちだが、少なくとも一部のケースでは違う」(ルトコウスカ氏)

 バトラー氏は、その理由を次のように説明している。「CPUがDMAアクセスとは別の経路を介して物理メモリにアクセスする特性を利用して、ルトコウスカ氏はDMAアクセスをほかの場所へ転送することができた。FireWireかPCIを利用し、DMA転送方式でマシンから物理メモリを取得する一般的な方法では、取得時のプロセスやポートの状況など、さまざまな情報を調べることができる。だがルトコウスカ氏は、そうしたアクセスおよびメモリの読み込みをほかの場所へ転送し、全メモリを『F』の連続で埋めてしまった。これで、実際に動作しているのとはまったく異なるものが読み込まれることになったのである」(バトラー氏)

 ルトコウスカ氏はBlack Hatで、特に「AMD64」をベースとするx86/x64アーキテクチャを使用したデモンストレーションを行った。32ビットシステムではこのハッキング手法が機能しないというのではなく、単に同氏の手近にあったシステムが64ビットだったのだそうだ。

 念のために言っておくが、同ハードウェア自体に問題があるわけではないので、AMDやIntelが修正パッチをリリースすることはないと思われる。ルトコウスカ氏は、実験に必要な情報のすべてを、AMDのマニュアルから得たという。すなわち同氏は、すでに知られている事実を活用して、ハードウェアアーキテクチャに対する信頼性を打ち砕いて見せたのだ。

 「設計そのものに問題が内包されている。PCはセキュリティを実現するために設計されたのではなく、複雑な処理を行うために作られたのだ」と、ルトコウスカ氏は壇上で語った。

       1|2 次のページへ

Editorial items that were originally published in the U.S. Edition of “eWEEK” are the copyrighted property of Ziff Davis Enterprise Inc. Copyright (c) 2011. All Rights Reserved.

注目のテーマ