いざラスベガス、いざDEFCON CTF決勝へ(前編)

予選はクイズ感覚の「超高度な知恵くらべ」


福森大喜/ラウリ・コルツパルン
株式会社サイバーディフェンス研究所
上級分析官
2009/9/14

ハッカーのためのイベント、DEFCON17で開催されたCTF決勝に日本人が参加! 参戦レポートの前編では、そこに至るまでの道のりを紹介します(編集部)

 今年も開催、ハッカーの祭典「DEFCON」

 毎年8月上旬になると、世界中のハッカーがラスベガスを訪れます。これは、「DEFCON」というセキュリティカンファレンスに参加するためです。

 このDEFCONには、毎年8000人を超える参加者があるそうです。新しい脆弱性や攻撃手法が公開され、話題になることも多いため、官民学のセキュリティ関係者も注目しています。また、単なるカンファレンスではなく、イベントも多く開催されます。例えばウイルスをアンチウイルスソフトに検知されないようにする方法を競うコンテストから、ビールをいかに早く冷やすかを競うコンテストまで、その内容は多岐にわたります。

【関連記事】
チーム「dumbtech」、Sexy Hacking Girlsへの挑戦
http://www.atmarkit.co.jp/fsecurity/special/129defcon_cd/defcon_cd01.html
(2008年のDEFCON参加レポート)

 その中で最も人気のあるイベントがCapture The Flag、通称「CTF」です。これはコンピュータに関する知識を競うイベントで、優勝すれば通称「黒バッジ」と呼ばれる、無期限で有効なDEFCONフリーパスがもらえます。

 2009年6月上旬にインターネット上で予選が開催され、規模としては300ほどのチームが参加、1チームが10人前後ですので、計3000人近くが参加している計算です。中にはセキュリティ企業で働く人も多くいるので、予選を勝ち抜くだけでも至難の業です。前年の優勝チームがシード権を持っており、それを含めて合計10チームが決勝に進むことができます。

 最近は韓国から数チーム決勝に進んでおり、世界でも活躍が注目されています。日本からも毎年数チームが挑戦していますが、いまだ決勝進出を果たしたチームはありません。

 予選競技ルール――周りの人はみんな敵?!

 DEFCONのCTFは、予選と決勝ではルールが異なります。

 予選はインターネット上で開催されます。主催者側が用意した問題を参加者が解答する形で、競技は進んでいきます。予選はチームで参加しても個人で参加してもよく、1チームの人数に制限はありません。問題は解くのに時間がかかるものが多いため、人数が多いほうが有利です。

 競技は48時間連続で行われるため、多くの参加者は一睡もせずに問題に挑みます。少し寝た方が効率が上がるという声もありますが、普段から“訓練”しているため、48時間くらいであれば大丈夫という参加者が多いようです。

 出題される問題の多くは、用意されたプログラムの脆弱性を見つけて攻撃するというものです。攻撃が成功すると、ターゲットサーバ上で自由にコマンドを発行できる状態、俗にいう「シェルを奪った」状態になります。そしてターゲットサーバ上に答えが記載されたファイルが置かれているので、その内容を読み取り、出題者に送ると得点が加算されていきます。

 このルールを見るとゲームのような感じがありますが、フォレンジックやマルウェア、ルートキット、暗号解読のような問題もあり、技術的にも非常に高いレベルの問題になっています。

 ただ、多くのハッカーが参加するので途中で出題者のサーバがクラックされたり、ほかの参加者を妨害するためにニセの解答を送ってきたりというようなこともあり、単純に出題された問題を解くだけではありません。また、IRCでチャットができるようになっていますが、質問しても教えられるのはうその情報ばかりです。周りは敵なので、考えてみれば当然のことですが。

 ちなみに2008年までは3年連続でKenshotoというチームが主催していましたが、2009年から主催チームが変わり、ddtekというチームが主催するようになりました。そのため新しい傾向に対応できるかが勝敗の鍵になってきます。KenshotoはFreeBSD好きでしたが、ddtekは暗号好きな傾向があるようでした。

 CTFの進行は「ジョパディ!」形式

 開催期間中は、下記のようなスコアボードが用意されています。

図1 CTFのスコアボード(クリックで拡大します)

 問題には6つのジャンルがあり、難易度ごとに100点〜500点と得点が決まっています。一番早く問題を解いたチームには、次の問題を選択する権利が与えられます。その際、自分の得意なジャンルの問題を選択することができるため、若干有利になるというわけです。これはアメリカで放送されているクイズ番組「ジョパディ!」と同じルールです。

 問題は以下の6つのジャンルに分けられています。

  • Pursuits Trivial: トリビア問題
  • Crypto Badness: 暗号問題
  • Packet Madness: パケット解析問題
  • Binary L33tness: バイナリ解析問題
  • Pwtent Pwnables: サーバを攻略するような問題
  • Forensics: フォレンジック

 上記のようなカテゴリ分けですが、厳密に分類されているわけではありません。ちなみに日本で多くのインシデントが起きて問題になっている「SQLインジェクション」のようなWeb問題は、Pursuits Trivialに入れられており、トリビア扱いされていました。

1/3

Index
予選はクイズ感覚の「超高度な知恵くらべ」
Page1
今年も開催、ハッカーの祭典「DEFCON」
予選競技ルール――周りの人はみんな敵?!
CTFの進行は「ジョパディ!」形式
  Page2
トラブル続きの予選
「Pwtent Pwnablesの100」を追う
  Page3
「Trivialの400」にみる証明書の重要性
いざ、決勝へ

Index
アスキーアートや単語当てゲーム、それが「問題」だ
  Page1
決勝の地に到着、そこは底冷えするホテルの一室
決勝の基本ルール:「自サーバを守りつつ、攻めよ」
まずは自分の脆弱性を直すことから
  Page2
チームの戦略は
問題1:巨大なアスキーアートが実は……
  Page3
問題2:ハングマンで単語当てゲーム……ではなく
閉幕、そして驚くべき発表

Security&Trust記事一覧


Security&Trust フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Security & Trust 記事ランキング

本日 月間