このページの本文へ

前へ 1 2 次へ

セキュリティの知識とスキルを総動員してサーバー防御を“突破”せよ

今年は学生ハッカーの攻防戦も!「SECCON 決勝大会」レポート

2016年02月12日 11時00分更新

文● 谷崎朋子 編集● 大塚/TECH.ASCII.jp

  • この記事をはてなブックマークに追加
  • 本文印刷

競技時間の短さに泣くチームが続出!の国際大会

 2日目の国際大会は、昨年12月に行われたオンライン予選や連携大会の上位入賞チームが参戦。アメリカやロシア、ルーマニア、台湾、韓国、タイ、ベトナム、そして日本の強豪、合計18チームが一堂に会した。優勝チームには、昨年に引き続き「DEF CON CTF 2016」の出場権も授与される。

 国際大会は「King of the Hill」形式で行われた。6台ある競技サーバーには、それぞれ異なる問題(ハッキング課題)が設定されている。脆弱性を突くなどしてそれぞれの問題サーバーを攻略することで「攻撃ポイント」を稼ぐと同時に、サーバー上の所定のページに自チームのフラグを書き込んで「防御ポイント」をゲットする。他チームのフラグ書き込みを妨害し続ければ、防御ポイントを独り占めすることも可能だ。そして攻撃、防御の合計得点が最多のチームが優勝となる。

18チームが参加した、2日目の国際大会の様子

 問題サーバーは、Lispプログラミング問題、10種類のアーキテクチャで最小シェルコードを作成する問題、脆弱性診断問題、x86、UPX、そしてバイナリの6つが用意された。「世界にさまざまな言語があるように、コンピューターの世界にも多種多様なアーキテクチャが存在する。今回はそんな世界を存分に味わってもらえるような問題を用意した」と竹迫氏が話すとおり、Intel以外のアーキテクチャが多彩に揃った。

 「特に最近の海外のCTFでは、IoTのアーキテクチャを取り上げる傾向が強い。さらに、エクスプロイトなどのプログラムを書かせて解く問題も増えている」と、SECCON実行委員会のtessy氏は語る。昨年大会でIntel以外のアーキテクチャ問題を出題したところ、海外チームから大変好評だったとのことで、今年の問題には「業務用肉まん蒸し器などで使われているアーキテクチャ」も混じっているという。

国際大会では、昨年に引き続き「NIRVANA改 SECCONカスタム Mk-II」が熱戦の模様を可視化した

 国際大会の競技時間は5時間半。開始と同時に「urandom」が100ポイントを先制したが、その後は「GoatskiN」と「Cykorkinesis」が連続して5つの“突破”を出すなどして勢いよくトップへ。後半は「217」「katagaitai」「Shellphish」の各チームも上位争いに加わり、熱戦が繰り広げられた。

 最終結果は、1位がCykorkinesis(韓国)、2位が217(台湾)、3位がShellphish(アメリカ)となった。

 攻撃ポイント1600、防御ポイント2120、合計得点3720で圧勝したCykorkinesisのメンバーは、「Lisp問題のサーバーに取り組んでいたが、詳しくない分野を知ることができて、難しかったけどとても楽しかった」と語った。「チームとしての戦術が特にあるわけではないが、とにかくスピードが問われる競技なので、オンラインCTFなどにたくさん参加してスピード力を磨いている」という。まだ大学2年で、「将来は企業勤めもいいが、セキュリティ研究者も魅力的だ」と笑う。

攻撃、防御ともに高得点を獲得して優勝したCykorkinesis(韓国)

 合計得点1160で2位になった217は、国際的な大学対抗プログラミングコンテスト「ACM-ICPC」への出場をきっかけに、CTFにも参戦するようになったという。「興味深い問題が多かった」と語るメンバーは、一部の問題がSECCON地方予選の出題と似ていたために、不公平感をなくすため、決勝数日前にヒントや問題が配布された件について、「チームによっては事前に勉強していたみたいだが、僕たちは十分取り組めなかった」と悔しさをにじませた。

2位の217(台湾)。チーム名の由来は、メンバーが所属する研究室の部屋番号だそうだ

 3位になったShellphishの19歳のメンバーは「競技時間が圧倒的に少ない。サーバー1に取り組んでいて、自分の失敗に気付いたときは時間が足りなくて。テンションが一気に下がってからは、残り時間は他のメンバーのデバッグ作業をしていた」と不満顔だ。事前に配られたヒントについても、競技時間がこれだけ短いのであれば、もっと事前に分析しておけばよかったと悔しそうに語る。ふだんは高校生時に結成したCTFチームで活動しつつ、大きな大会にはShellphishとして参戦しているとのことで、今後もさまざまな大会に挑戦したいと付け加える。

3位のShellphish。「みんなCTFが大好きで、面白いことがあったら声をかけてチームを作る自由な関係。自由というか、まとまりがないというか…でもそこが気に入っている」(メンバー)

 競技時間の少なさについては、5位に入賞したPwnThyBytes(ルーマニア)のメンバーも「あと15分あればサーバー3を攻略できた」と嘆く。これまでメンバーが4人しかおらず、決勝も3年前の「Codegate」しか経験がないというPwnThyBytes。「だから、自分たちでCTFを主催して、優秀な成績を収めた人たちを徹底的にスカウトしたんだ。今ではメンバーも11人に増えて、今回2度めの決勝進出も果たせた。今後ますます楽しくなりそうで嬉しい」。

集中してCTFの問題に取り組む作業は、仕事など他のことにも良い影響があると語るPwnThyBytes

 そのPwnThyBytes含む他すべてのチームが解けなかったサーバー3問題の1つを解いたTomoriNaoは、その粘り強さが評価されて文部科学大臣賞が授与された。問題を解いたチームリーダーは「問題サーバーに侵入しても入力欄があるだけで何をしていいのか分からず、とにかく思い付く限りのことをやった。攻撃したサーバーを経由して他のWebアプリケーションに攻撃をしかけなければならないうえに、一定時間でファイル名やパラメーター名などがランダムに変更する仕掛けは厳しかった」と説明する。

 TomoriNaoは前日の学生大会にも参加しており、「Attack & Defense形式は慣れていなかったので苦戦したが、問題を解く今日の形式は決勝進出を決めたオンライン予選(クイズ形式)に近いものがあり、やりやすかった」と両大会の違いを語った。

7位のTomoriNao。「今年から就職して企業所属になるが、チーム結成で声掛けをしたリーダーとしての責任もあるので、今後もこのチームを存続させたい」(リーダー)

 連携大会の増えたSECCONは、今年も国内予選やオンライン予選など、さまざまな形でCTFを開催していく予定だ。新たな才能の登場にもぜひ期待したい。

前へ 1 2 次へ

カテゴリートップへ

  • 角川アスキー総合研究所
  • アスキーカード