6月9日に放映されたフジテレビのバラエティ番組「ほこ×たて」。その裏話を、「たて」側として登場したネットエージェントの杉浦隆幸氏に聞いた。
侵入された時点で完全アウトじゃん
……防御側の勝因がファイル名変更……だと……?
6月9日に放映されたフジテレビのバラエティ番組「ほこ×たて」の「どんなプログラムにも侵入できるハッカー VS 絶対に侵入させないセキュリティープログラム」は、視聴者を激しい混乱の渦に巻き込んだ。
その後、“たて”側のネットエージェントは公式ブログで、“ファイル名変更”が実際は“TrueCryptによるディスク暗号化”であることや、対決で用意されたPCはサービスパックも当たっていない脆弱性だらけのWindows OSだったことなど、番組でカットされ誤解を招いた部分について説明。本当はかなりのガチ対決だったことが明かされた。
では、“実際の”攻防戦はどのようなものだったのか。自身も凄腕のハッカーで、昨年度開催された「CTFチャレンジジャパン」の優勝者でもある、luminことネットエージェントの杉浦隆幸氏に直撃した。
編集部 今回の番組出演の経緯は?
杉浦氏 今回の内容は番組制作会社が企画したもので、ネットワークセキュリティ分野の有識者の方を経由して、最終的に当社へ話が来た。コーディネーションにはCTF(Capture the Flag)などをよく知るセキュリティの専門家が入った。対戦ルールや条件は、コーディネーション側と何度も打ち合わせして決めた。
編集部 対戦ルールや条件はどのようなものだったのか。
杉浦氏 まず、対戦相手や防御するPC環境は当日まで知らされなかった。また、設定後はPCに触ってオペレーションしてはいけないルールに決定した。
ちなみに、対戦では1枚の画像ファイルを3分割し、それぞれ3台のPCに隠したが、その際に「どんな画像かはハッカー側に伝えない代わりに、ファイル名を教えるので、防御側はファイル名を変更してはならない」という禁則事項があった。
この他の条件として、どうやらハッカー側はどれが正解の画像なのか事前には知らされておらず、個々のファイルについて正解かどうかを確かめる必要もあったようだ。また、こちら側が把握していた前提条件やルールと、ハッカー側が聞かされていた前提条件やルールに誤解があった可能性がある。
編集部 ファイル名変更と言えば、TrueCryptによるディスク暗号化が「ファイル名の変更」と言い換えられていたそうだが……。
杉浦氏 (ただでさえ難しいITセキュリティの内容を)詳しくない方でも楽しめる、しかも短い時間枠で理解できる内容に落とし込むのは大変だと思う。分かりやすくしようと頑張った結果、それが裏目に出てしまったようだ。
編集部 番組上の演出はあったか?
杉浦氏 バラエティ番組としての面白さを出すため、“たて”側が用意したセキュリティ強度を若干緩めにした。
今回のルールならば、セキュリティ対策を完璧に施せば、防御側が勝つのは当然だ。防御側は、マイクロソフトをはじめ、OSやセキュリティ対策ソフトのベンダが長年蓄積してきた防御の知見やテクニックを駆使できる。セキュリティの専門家とノウハウの組み合わせで負けるはずがない。完全なパワーゲームになってしまう。
けれど、それではバラエティ番組としてつまらない。そこで、「絶対」と言いながらも、実際はかなり脆弱な環境で、かつ対策強度を下げた状態にするという条件が設けられた。これは、対等に勝負する上で仕方ないことだと思う。
ただし、用意した環境の強度は下げたが、そこから先の対策は“やらせ”も何もない真剣勝負だ。1台目のPCは“サービス問題”として若干緩めに設定したが、必ず答えが用意してあり、いつかは攻略できるCTFとは違う、本気の対策で挑んだ。
編集部 公式ブログに防御の詳細が記されているが、まず、1台目のPCで行った対策「cmd.exeのリネーム」は一般的な対策なのか?
杉浦氏 攻撃者は侵入の手段として、必ずといっていいほど「cmd.exe」を使ってくるので、リネームは有効な対策と言える。実際、番組で「30分で侵入された」と表現していたものは、OSの脆弱性を初めて突くまでにかかった時間であり、以降の侵入の試みは、リネームやファイアウォールなどの要素に阻まれ5時間近く時間を要していた。
リネームされたcmd.exeをシステムの中から探し出すときに、ハッカー側はどうやら、番組ディレクターに心理戦(ソーシャルエンジニアリング)を仕掛けたようで、それも侵入が成功した一因だと思う。
編集部 ソーシャルエンジニアリングもアリだった?
杉浦氏 「ルールに明記されていないことは何でもアリ」が、ハッキング対決の基本。ソーシャルエンジニアリングは禁止されていなかったので、問題ない。
もちろん、こちらもその(ソーシャルエンジニアリングを行うという)“暗黙のルール”を理解しているので、ソーシャルエンジニアリング対策もしっかり行った。2台目のPC対決でハッカーが降参したのは、実は防御側のソーシャルエンジニアリング対策の成果だ。
編集部 具体的には?
杉浦氏 2台目は、家庭の共有PCや図書館、ネットカフェなど、不特定多数が利用するPCを想定し、攻撃側がID/パスワードを知っている前提で、ファイルを探す設定だった。このため、ログインされないように防ぐ対策はできない。そこで、まずアプリケーションの使用履歴を全部削除し、確かに画像があることを証明した後に再起動、さらにメモリの情報も完全削除するなど、フォレンジック対策を行った。
後は、「TrueCrypt」という暗号化ツールで画像を入れたディスク作成し、同じように暗号化したディスクやファイルを複数設置。TrueCryptで暗号化した「秘密のディスク」という、“いかにも”という名前の“おとりファイル”も用意した。
そんな中で、ハッカー側は「R-STUDIO」というフォレンジックツールを駆使して“おとり”の暗号化ディスクを発見し、パスワード解析に入った。だが、番組でコメンテーターが「パスワードの文字数によっては解析に時間がかかるだろう」と述べたように、ハッカー側もそれを気にするだろうと予測した。
そこで、全問の答えを知っていて、(番組の進行などを考えて)情報を教える可能性のあるディレクターに、パスワードを教えた上で、「絶対に相手にはパスワードを言っちゃダメ」と念を押した。それから、自信満々に「もう絶対解けないだろうから、家に帰るよ」と帰宅する演技もした。
それを見たハッカーたちは、早速ディレクターにパスワードの長さなどを質問、ソーシャルエンジニアリングを開始した。案の定、ディレクターが情報を出してしまったようで、それを聞いたハッカー側は時間内に解読できないと判断、ギブアップした。こうして、ハッカーが聞いて諦めるような情報を渡した防御側の勝利となった。1台目はソーシャルエンジニアリングでやられたが、2台目でやり返したことになる。
編集部 実は、対決で一番もてあそばれたのは、ディレクターだったと(笑)。攻撃相手の思考パターンを予測することも防御対策になるということか?
杉浦氏 そのとおり。本当は「ほこ×たて.ts」というファイルに対し、「たてほこ」と発音できるパスワードを設定しただけ。つまり、「ほこ×たて」という文字列をローマ字表記にして、辞書を作りブルートフォース攻撃を仕掛ければ簡単に解けるものにしていた。
しかし、ハッカーはややもすると、相手の手の内を複雑に考えがちで、このような単純な発想を見過ごすことがある。そんな彼らの習性を逆手にとって、防御に成功した。「策士を策にはめた」瞬間だった。
編集部 TrueCryptを採用した理由は?
杉浦氏 ポピュラーなツールであるという理由が1つ。フォレンジックに対する耐性も高く、遠隔操作ウイルス事件でも利用されていたことも理由の1つだ。字幕などで暗号化ツールの名前が出ていたら、気付いてニヤリとした人がいたかもしれない(笑)。
また暗号化ツールは、対戦相手として日本人のハッカーが来ると思っていたので、日本人なら知っているものばかり準備していた。それが、蓋を開けたら全員ロシア人だった。彼らが攻略に時間かかった原因の1つに、こうした「言語の壁」もあったと思う。
言語環境や生活圏によって、使うツールが違うこともある。例えば、当社ではイベントで標的型攻撃のデモを実演しているが、そのときに使うリモートアクセスツールは、中国語のOSでは動かない。
編集部 つまり、使っているツールで相手をプロファイリングできるということか?
杉浦氏 どの国で何がはやっているかも知っているので、予測はつく。その意味では、攻守ともに何をやっているのかが分かる専門家が不在だった番組への制作協力だったとはいえ、今回の対決で「おいしかった」のは、ロシア人ハッカーの攻撃手法やチームで戦うときの情報共有方法などを全部見ることができたことだ。「こんなツールも使うんだ、本格的だなぁ」など、本当に参考になった。
編集部 最短攻略ルートならば、もっと短時間で解けた? 番組では2台目で終了したが、3台目のPCはどうだったのか?
杉浦氏 3台目は、脆弱性のない最新OSやサービスが入っていて、いわば本来のガチのセキュリティ設定になっていた。このため、ほぼ何も防御対策はしなかった。
編集部 ちなみに、杉浦氏が用意していた攻略法は?
杉浦氏 1台目については、まずは「Metasploit」で脆弱性を探す。しかし、cmd.exeがリネームされていることやファイアウォールがあることを考慮し、次はIEの脆弱性を突いてトロイの木馬を仕込み、リモートアクセスツールを用いリモートコントロールする。1台目にはファイアウォールが設定してあったので、これを抜けるにはこの方法がベストだ。
5万点の画像の中から正解の画像を探す方法だが、(番組の司会を務めるタカアンドトシの)タカさんの写真をネットで探し、顔認識機能のあるソフトに覚えさせればよい。5万点程度の画像のスキャンならば30分〜1時間くらいで終わる。
2台目は、ログイン後に、「マイドキュメント」フォルダなどにあるデータを取得。ファイルを開いた履歴が残っているので、それを見てドライブ内に隠したことを割り出す。ダミーを含め、ファイルは5つくらいあり、そのうちドライブ暗号化されているのは2つのみ。2つのうち1つが3MBのサイズの「秘密のディスク」。3分割された画像のうち1枚ということは、ファイルサイズは2〜4MB程度と推測され、それが入るのは、もう1つの50MBのディスクである可能性が高い。「秘密のディスク」のパスワードが「hokotate」というヒントから答えは全て番組に絡めてあると予測し、「ほこたて」をアルファベット変換し、ブルートフォース攻撃する。以上だ。
3台目は、脆弱性も何も、最新OSなので基本的には攻略できない。最初の2台についてはそれぞれ最短2〜3時間で解けると思う。
編集部 やはり、最新OSにすることは重要か?
杉浦氏 対決での防御としては、確かに効果はある。しかし、侵入の成功率が下がる程度と思ってほしい。ただ、Windows XPやAndroid OSの古いバージョンには修正不可能な脆弱性が山ほどあり、今回のように1台のPCを守るだけならまだしも、複数台のPCやサーバを抱える企業にとっては現実的な対策ではない。それよりも、最新OSを入れて、不正接続対策など別の面の強化に注力する方が、コストも含め効率がいい。
まずは、最新OSを導入し、ファイアウォールをきちんと設定して、むやみやたらに公開サービスを動作させないこと。また、無償の適当なセキュリティ製品は使わない。結局セキュリティ対策は基本が重要ということだ。
今回の対決で参考になる点があるとすれば、多層防御を実装しているところだろうか。多層防御なら、最初を突破しても次の関門があり、攻略に時間がかかる。時間がかかれば、ハッカーが諦める可能性は高くなる。「諦めさせる」というのは、とても有効な対策方法だ。
以上の対策がどうしてもできず、それでも守ってほしいときは、ネットエージェントまでご連絡を。少なくとも普通のハッカーにやられないようにはしますので(笑)。
編集部 最後に、番組を見てセキュリティに興味を持った子どもや学生たちにメッセージを。
杉浦氏 今回の放映で行ったハッキング行為は番組のため行ったものであり、実社会で行うと犯罪行為となる。ハッカーとしての能力を高めたい方は、正式な大会などで挑戦してみては!
編集部 ありがとうございました。
Copyright © ITmedia, Inc. All Rights Reserved.