脆弱性発見コンテストの意義とは?:PacSec 2014&Mobile Pwn2Ownレポート(1/2 ページ)
2014年11月12日から13日にかけて、情報セキュリティをテーマとした国際カンファレンス「PacSec セキュリティ・カンファレンス 2014」と、モバイルデバイスを対象とした脆弱性発見コンテスト「Mobile Pwn2Own」が開催された。その模様を紹介する。
2014年11月12日から13日にかけて、情報セキュリティをテーマとした国際カンファレンス「PacSec セキュリティ・カンファレンス 2014」が東京で開催された。毎年カナダで開催されている「CanSecWest」の姉妹イベントで、国内外から専門家を招いて最先端の研究成果を披露することが特徴だ。会場ではスピーカー、来場者ともに海外からの参加者も目立った。
同時に、昨年に続き、モバイルデバイスの脆弱性を発見するコンテスト「Mobile Pwn2Own」も開催された。Mobile Pwn2Ownは、米ヒューレット・パッカード(HP)の脆弱性リサーチ部門、ZDI(Zero Day Initiative)が主催する脆弱性発見コンテストで、「モバイルWebブラウザー関連ならば5万ドル」「近距離通信および物理アクセスに関するものは7万5000ドル」「SMSなどメッセージングサービス関連は10万ドル」といった具合に、脆弱性の種類に応じて報奨金が支払われる。賞金総額は40万ドルに上る。
同じくZDIが主催する「Pwn2Own」はPCを対象としているが、こちらは文字通り、スマートフォンをはじめとするモバイル機器がターゲット。具体的には、Apple iPhone 5sやiPad Mini、Google Nexus 5/7、Samsung Galaxy S5やAmazon Fire Phoneといった機器が対象で、電波を遮断する特殊なケースの中で機器を操作し、脆弱性を突いて情報の読み取りやマルウェア感染、権限の乗っ取りなどが可能かどうかを試していく。
発見された脆弱性は、ZDI側が検証した上でベンダーにも伝えられ、修正版などに反映される仕組みだ。一方発見者には報奨金が支払われる。
今回は、三井物産セキュアディレクション(MBSD)の「Team MBSD」をはじめ7チームが参加し、30分という制限時間内に脆弱性を突いてデバイスからの情報読み取りやコードの実行、マルウェア感染などに成功していた。
ZDIのマネージャー、ブライアン・ゴーンズ氏は、「昨年はWebブラウザーに関連する脆弱性を発見するチームが多かったが、今年はNFCをはじめとする近距離無線通信関連の脆弱性が多く見つかった。こうした脆弱性を悪用すれば、例えば地下鉄の中などですれ違うだけで被害に遭う可能性もある。非常に危険なものだ」と述べている。
脆弱性発見コンテストや報奨金制度の意味は?
HP ZDIは、世界約80カ国にまたがるセキュリティ研究者のコミュニティと連携しながら、脆弱性の研究、発見に取り組んでいる。2014年だけでも既に、Internet ExplorerやChrome、FireFoxといった主要なソフトウェアを中心に、約400件の脆弱性を発見し、修正に協力してきたそうだ。
昨今、グーグルやマイクロソフト、フェイスブックといった大手IT企業が、脆弱性発見コンテストや報奨金制度(バウンティプログラム)に積極的に取り組んでいる。また最近では「as a Service」の形で研究者とベンダーをつなぎ、脆弱性報奨金制度を展開する企業も現れた。
こうした動きが活発化している理由を、ゴーンズ氏は、「外部のリサーチャーの目が加わることによって、内部の開発者とは全く違う多様な視点を得ることができる。機能の観点からのテストだけではなく、セキュリティの観点で、時には開発者が意図しないような見方でコードをチェックすることによって、ソフトウェアをよりセキュアなものにできるという理由から歓迎されている。いわば、社外にもテストチームを置くようなものだ」と説明する。
「事実として、脆弱性はあらゆるソフトウェアに存在する。ここで重要なのは、なるべく早期の段階で脆弱性を発見することだ。後から発見されて攻撃を受けるよりも、早期に脆弱性を見つけ、修正していく方がいい。ZDIの価値は、脆弱性を発見し、緩和策を提供することによって、ソフトウェアをより強固で、よりよいものにしていくこと」(同氏)。
この目的に向けてZDIでは、ただ脆弱性を発見するだけでなく、適切に開発元に伝え、修正するために、研究者との間に立ってさまざまなアドバイスや調整を行っているという。時には、脆弱性を修正したはいいものの、それが不十分だったため慌てて再度パッチをリリースする、というケースも耳にする。ZDIではそのような事態を避けるため、PoC(コンセプト実証コード)やテストケースを提供し、時には数カ月単位の時間をかけて、高品質の修正を行えるようにしているという。
こうした分野に興味があり、脆弱性について研究してみたいならば「まずは、コンピューターがどのように動くのかを理解することが大事。コンピューターサイエンスの基礎が重要で、それが強力な土台になる。その上で脆弱性について学んでほしい。また、アセンブリコードをしっかり読めば読むほど、多くの攻撃を把握できると思う」とアドバイスする。
脆弱性の発見と修正がインターネット経済活性化の鍵に
ゴーンズ氏によると、じわじわと「セキュアな開発ライフサイクル」や「セキュアコーディング」といった、脆弱性を作り込まない開発手法は浸透してきた。これはこれで前進ではあるが、一方で「かつてのような、バッファオーバーフローなど単純な脆弱性は減ってきた。Use-after-Freeをはじめとする、より複雑な脆弱性が増えてきている。こうしたバグを見つけるのには、時間もコストもかかる。こうした問題を発見するという意味からも、バウンティプログラムの意義は大きい」(同氏)という。
また、組み込み機器やInternet of Things(IoT)の脆弱性にも注目しているそうだ。「こうした分野には、バッファオーバーフローなどのシンプルな脆弱性がまだけっこう残っている。早期のリリースを重視するあまり、安全な開発がなされていないかもしれない」と指摘し、ZDIとしてもIoTやSCADAといった分野の脆弱性リサーチに力を注いでいくとした。
ゴーンズ氏は最後に次のように語った。「インターネットを動かすソフトウェアの脆弱性を見つけることで、インターネットをより安全なものにし、その上で動いている経済活動を活性化させることができる。バウンティプログラムは、安全なトランザクション、安全なエコノミーを可能にして、新しいマーケットの成長を促すものだ。企業もその価値を理解し始めている。セキュリティはコストではなく、新たな価値を作り出すものだ」
Copyright © ITmedia, Inc. All Rights Reserved.