ネットエージェント株式会社 オフィシャルブログ

イベント

DEFCON 21 CTF 6位!「sutegoma2」のメンバーにインタビュー!

先日、8月1日~4日にアメリカのラスベガスで開催された世界最大のセキュリティカンファレンス
「DEFCON 21」
その中で最も注目度の高いハッキングイベント(ハッキング能力や知識を駆使して戦うという競技)
「CTF(Capture The Flag)」に弊社スタッフが参加する日本人チーム「sutegoma2」が挑み、全 20
チーム中 6位という成績をおさめました。

今回は、その「sutegoma2」のメンバーでもある弊社スタッフに、DEFCON 21 CTF についてインタビューをしてみました!

まずは、前置きに、DEFCON 21 CTF がどんな内容の競技だったのかを紹介します。

------------------------------------------------------------------------
■競技の内容

各チーム 1台ずつサーバが渡され、そのサーバ上で複数のサービス(全チーム
共通)が起動しており、各サービスには token と呼ばれるファイルが付帯している。
各サービスには脆弱性が含まれていて、その脆弱性を攻撃することで他チームの
token の読み取りが可能になる。
各チームは自サーバ上のサービスの脆弱性を修正するなどして、token を守りつつ、
他チームの token を入手するという「token 争奪戦」が競技の内容。

★得点・減点対象

①token の奪取
⇒他チームの token を取得することで得点となる。今回のルールでは奪取された
 側のチームは、一つ奪取されるごとに -19 点される。複数チームから奪取され
 た場合(例えば、19 チームから奪取された場合)、獲得ポイントは各チームに
1点という形で分配される、ゼロサムゲーム。
 得点タイミングは 5分間隔。つまり、自チームが対処できない脆弱性を利用され
 継続的に攻撃されている場合、5分おきに -19 点される。
 逆に、どのチームも対処できない脆弱性をついた攻撃が成功すると、最大で
 19(点)× 19(チーム)分の得点を稼ぐことができる。

②SLA(Service Level Agreement)
⇒自チームのサービスを止めると減点(-19点)、他のチームに1点ずつ分配される。


全 20チーム。各 2500点ずつ保有している状態からスタート。
------------------------------------------------------------------------


さて、ルールが分かったところで早速インタビューに移ります!


Q.これまで何度か参戦されてますが、例年と比べて今回の大会の特徴はどんなところだったのでしょうか。

A.今年は、非常にシンプルなルールのゲームでした。
 それだけに純粋に「解析能力の高さ」が問われる内容であったように感じます。
 特に、ルールの特性上、スピード感が求められる内容であったため、質の高い
 「解析能力」を備えているチームがどんどん点数を稼ぐ、という一言でいえば
 「弱肉強食」の雰囲気を感じた CTF でした。


Q.いつもと違ったことはありましたか?

A.今回、各チームで所有するサーバには、ARM(アーム)という種類の CPU が
 使われており、これが少々やっかいでした。おそらく他のチームもそう感じ
 たのでは?と思います。
 この種類の CPU は主に、スマートフォンなどのモバイルデバイスで利用され
 ているもので、一般の PC やサーバで用いられているものとは違います。
 一般のサーバを対象としている時の常識が通用せず、解析や攻撃コードの作成
 時に、苦労しました。ただ、自分を含め、スマートフォン用のマルウェアの
 コードを見たり、研究した経験のあるメンバーがチーム内にいたので、対処
 することができました。


Q.大会前に準備していたことはありましたか?

A.一昨年の大会で、IPv6 という全く想定外のネットワーク環境で戦うことに
 なった際、インフラ周りをすべて IPv6 環境に再設定する作業が発生し、大き
 な時間のロスをしたという経験があるので、IPv4 、IPv6 どちらの環境にも
 対応できる準備をしてありました。あとは、これまでの CTF 出場経験から、
 攻撃コードのパターンを予測し、攻撃っぽい通信が来たら遮断する、という
 ソフトウェアを準備していました。


Q.今回はネットワーク環境がまた IPv4 にもどったそうですね。

A.そうですね。準備しておいてよかったです。


Q.さて、今回はどのような戦いが繰り広げられたのでしょうか?

A.自分のチームに対処できていない脆弱性がある場合、対処するまで攻撃を受
 け続けることとなり、さらにゼロサムゲームということで、先手を取ったチ
 ームとどんどん得点差が開いてしまいます。しかも、脆弱性に対処したのが
 全チーム中で最後になってしまうと、その脆弱性に対処したところで他のチ
 ームにとっては既知の(対処済みの)脆弱性なので、得点にはつながらない
 という、遅れをとるとかなりシビアになる内容でした。
 現に開催 2日目には遅れを取るチームと、先手を行くチームでかなり得点差
 が開いた状態になりました。


Q.なるほど、そういった中、sutegoma2 は今回どのような戦い方をしたのですか?

A.前述のとおり、攻撃を受ける側に回ってしまうと挽回がかなり厳しくなるので、
 まず「守り」(攻撃を受けないように脆弱性に対処すること)を最優先で実施
 しました。ただ、それだけでは得点を稼ぐことができないため、攻撃できるう
 ちに攻撃することも心がけました。そして、初日の早い段階で攻撃を成功させ
 ることができました。最終日には上位チームの攻撃を守るのに必死だったので、
 結果的にはその攻守バランスがよかったように思います。


Q.全 20チームの中で 6位という過去最高の成績についてはどう感じてますか?

A.やるだけやりきった感覚はあります。これまで以上にチームとしてもまとま
 っていたように感じます。そして、これまでの参加の中で最高の成績を残せ
 たことはとてもうれしく思います。これまでの経験や準備が功を奏しての
 結果と言えるかもしれません。
 ですが、さらに上位のチームの実力を目の当たりにして課題も感じています。


Q.今後さらに上位を目指すうえでの課題とは?

A.やはり「解析能力」でしょうか。今回の 1位のチームは会期中を通してその
 解析能力の高さを見せつけていたと言えます。解析の速度やセンスといった
 部分を感じざるを得ませんでした。


Q.センスとは具体的にどういうことを指しますか?

A.解析を行うプロセスにおける予測のつけ方、発想力や応用力と言い換えられ
 るかもしれません。例えば、あるコードの一部を見て、全体の構造や仕様に
 ついて予測し、仮説を立てられる能力です。すべての可能性をいちから試し
 ていくより、精度の高いあたりをつけながら解析するほうが効率的です。
 解析速度の裏側にはこうしたセンスが必要だと思います。


Q.なるほど、そういったセンスはどうやって身につけるのでしょうか?

A.こうしたセンスは基本的に一朝一夕で身に付くものではなく、多くの経験に
 よって培われるように感じます。もしくは、経験によってより強化される
 ものだと思います。様々な経験をしていれば、引き出しの数も増えます。
 引き出しの数が多いほうが、より多くの仮説を立てられますし、そこに
 発想力や応用力が加われば、さらに効率的で独創的な解析手法や攻撃コード
 もしくはセキュリティパッチが生まれるかもしれません。


Q.では、今後も積極的に CTF に参加すると?

A.経験というのは CTF だけではありませんが、国境を越えてレベルの高い
 技術力を目の当たりにしたり、実感できる場面はそうありませんから、
 機会があれば CTF には今後も積極的に参加したいと思います。
 また、日常生活や業務を通じて様々な研究をしたいと思っています。
 そうして培った技術を CTF にぶつけて、いつか優勝したいです!


ありがとうございました!本当におめでとうございます!


『CTFチャレンジジャパン2012』の優勝チーム「AgentⅣ」にインタビュー

先日開催されました、

CTFチャレンジジャパン2012
http://ctf-challenge.jp/

ctf2012s


にて優勝致しました弊社代表+若手技術者で構成されたチーム「AgentⅣ」
に今回の大会についてインタビューしました!
-------------------------------------
『CTFチャレンジジャパン2012』 とは?
ホワイトハッカーの育成を支援する目的で、開催された CTF (ハッキングコンテスト)です。
国が支援するCTFとしては国内初の公式大会ということで、業界の注目を集めました。
-------------------------------------



Q.予選と本戦はどのような内容だったのでしょうか?

A.予選は、用意された4つのサーバーを攻撃して「鍵」を獲ってくるという内容でした。
  獲得した鍵の数で勝敗が決まります。鍵が同数の場合は、最後の鍵を先に手に入れた
  チームが勝ちになります。
  本戦は、海外のハッキング競技会「DEFCON CTF(Capture The Flag)」の予選に近い
  内容でした。
  「バイナリ解析」「サービスアタック」「フォレンジック」「暗号解読」「パケット」
  「トリビア」の6つのジャンルごとに4つの問題が用意されていて、各チームは、それぞ
  れのジャンルのうち最初に開示されている「100点問題」から解いていきます。100点問
  題を解かないと次の200点問題が開示されない形式になっているため、100点問題を最初
  に解き、次に開示された200点問題を解き、300点問題を開示し・・・という風に1問ずつ解い
  ていく形です。
  ただ、サービスアタックというジャンルだけ、200点の問題を解くと、サービスアタックの300点
  問題が開示されると同時に、他ジャンルの200点問題が一斉に開示されるといった具合に、
  解いた問題と同じ点数の他のジャンルの問題が開示されるというボーナスがあったのは
  驚きました。

Q.「AgentⅣ」はどういったジャンルを解かれたんですか?

A.トリビアとフォレンジックは全問解くことが出来ました。ちなみに、トリビアはかなり珍しい問題が
  出されました。検索しても中々答えが見つからないようなものでした。
  例えば、ファミコン向けのプログラムを解析しないと解けない問題なんかもありました。トリビア
  を解けるチームは全問正解、解けないチームは正解0問と、かなり差が出るジャンルでしたね。

Q.海外の CTFと比較して、今回の大会はどうでしたか?

A.大会を全体的に比較して、「日本らしさ」をすごく感じました。例えば、問題の公開に関してです。
  海外の場合、問題の内容やその解法、解説が公開されることが多いのですが、今回の大会の
  場合、ほとんど公開されていないようです。予選では参加者が問題を公開しないよう、秘密保守
  契約を結ぶなどの徹底ぶりに驚きました。
  また、本戦会場の雰囲気も全然違いました。海外のハッキング競技会「DEFCON CTF」は一言
  で言うと「お祭り騒ぎ」という雰囲気で、一般客も観戦できるのですが、今回の大会は一般客は
  見学できなかったり閉鎖的でした。そうした面について、非常にカッチリしていると感じました。

Q.過去のCTF出場の経験は活かせましたか?

A.予選の内容は新しいものでしたが、本戦はメジャーな形式だったし、傾向も似ていたので、いつ
  もCTFに出場している人たちはどんどん解いていた印象でした。CTFは、経験や過去問などを
  通じて、自分がどれだけ様々な問題に触れてきたかで、問題を解くための知識や引き出しに
  大きな差が出ます。
  新しい攻撃手法やファイル形式に関する問題も出ますが、過去問をアレンジした問題も多数出
  題されます。過去のCTF大会で出た問題を知っていれば、「あの問題と同じ発想じゃないか」と
  気づくことが出来ます。そういった意味で、過去様々な CTF 大会に出場し、数多くの問題を解い
  てきた経験はかなり活かすことができました。

Q.過去の経験から、問題の解き方のノウハウなどはお持ちなんですか?

A.解き易い問題って、問題自体にストーリーがあるんですよ。この問題はこうなんだろう
  なって思わせるヒントが散りばめられているんです。
  例えばあるフォレンジックの問題では、問題文に「まずはこの人に聞いてみるといい」
  と、ある名前が書かれています。その後、問題ファイルである、ディスクイメージを開
  いてみるとその名前のファイルがあり、その内容を見ると次のステップに進めるヒント
  が書かれている、という具合です。こういったストーリーがある問題は、解き易いとい
  うのは経験としてあります。

  逆に解きにくい問題は、上記のようなストーリーが一切ありません。
  思わせぶりなヒントもないし、そもそも問題を見つけることが出来ないなんていうもの
  もありました。そういう問題は、時間がかかるうえにまったくわからない、と良いこと
  が無く、やる気もそがれてしまうので、深追いせず、後回しにします。

Q.ずばり、今回の勝因は?

A.問題に詰まっても、メンバーに相談して先に進めたり、解けない部分を他の人にバトン
  タッチしたり、協力して取り組めたところでしょうか。チームワーク力ですかね。
 
Q.役割分担のようなものがあったのですか?

A.今回は、全員それぞれのジャンルの問題を解き進めていくというやり方で進めました。
  基本的に、問題に詰まらなければ同じジャンルを解き続ける、という形です。ただ、場
  面場面でコードを作る作業だけ、他のメンバーに担当してもらう、など柔軟な動きがス
  ムーズに行えたと思います。

Q.最後に今回の大会を通じて、得たものはありますか?

A.どの CTF でもそうですが、大会を通じて新しい知見を獲得することができる点は大き
  な意義があると感じます。例えば、今回は問題を通じてバーコードの仕様を学べました。
  普通に過ごしていたら中々学ぶ機会のないことも、CTFを通して知るきっかけを得られ
  ます。それが日常生活や仕事の場面で有用であれ、あまり馴染みの無いものであれ、
  新しい知見を得られることは CTF の楽しみの1つだと思います。
  それと同時に、他の技術者と競い合うことで、やはり自身の実力不足を痛感することも
  できます。次にまたチャレンジしたい!その時までに勉強しよう!というモチベーショ
  ンに繋がりますよね。

  さっそく、次の休みを使って解けなかった問題にチャレンジしようと思っています!


AgentⅣの皆様ありがとうございました!

0と1しか興味ない人のためのマルウェア分析会 開催のお知らせ

 突然ですが、この度、マルウェアに関する勉強会 「0と1しか興味ない人のためのマルウェア分析会」 を開催させていただくこととなりました。毎日アセンブラ読んでいたり、IDAPro、OllyDbg、WinDbgが起動しっぱなしだったり、フリーズしたらとりあえずJust-In-Time-Debuggingで原因突き止めていたりする、そんなあなたのための勉強会を開催致します。
 勉強会は、以下の日程で開催いたしますので、興味のある方はぜひともお申込みください。

 テーマ:  マルウェア解析・分析
 日時:   2010年12月18日(土曜日) 13:00~17:00
 会場名称: ネットエージェント株式会社 セミナールーム
 会場住所: 東京都墨田区江東橋4-26-5 東京トラフィック錦糸町ビル9階
 会場地図: Google地図

 アジェンダ:
  メインセッション1「マルウェア解析の現場から」 by 松川 博英(トレンドマイクロ) (60分)
  メインセッション2「2010年のマルウェア」 by 石丸 傑(カスペルスキー) (60分)
  サブセッション1 「JavaScript難読化」 by はせがわ ようすけ(ネットエージェント) (20分)
  サブセッション2 「プログラミングコンテストについて(仮)」 by Lizan (20分)
  サブセッション3 「NetAgent Security Contest 2010 解答」 (20分)

 参加定員:50名
 参加費用:無料
 申込方法:以下の申込フォームよりお申し込みください。

 参加定員数に達しましたので、一度締切とさせていただきます。
 以降はキャンセル待ちとなりますのでご了承ください。

 申し込み内容に変更がある場合は、kenjiaiko+01binarians [at] gmail.comまでご連絡ください。
 →http://bit.ly/01binarians-atnd
 参加者一覧は以下をご確認ください。
 →http://bit.ly/01binarians-list
 ハッシュタグ:#01binarians

■懇親会情報
 日時   2010年12月18日(土曜日) 18:00~20:00
 会場名称 くいもの屋 わん 錦糸町店(050-5815-7823)
 会場地図 http://www.hotpepper.jp/strJ000045321/
 参加費用 4000円

 当勉強会は、デバッガの使い方、アセンブラ、フォレンジック、JavaScript難読化等に関する基礎的な技術は解説されませんのであらかじめご了承ください。

NetAgent Security Contest 2010 終了のお知らせ

 11月28日(日)14:00 にて NetAgent Security Contest 2010 無事終了となりました。たくさんのご参加有難うございました。
 コンテストの結果、優勝はksn氏、準優勝はjagoon氏となりましたので、お二方には後日、表彰状と副賞をお送りさせていただきたく思います。また、問題の模範解答につきましては、別の機会にて改めて公開致します。

NASecConPic10■最終ランキング(開始24時間 - 14:00 - )

 01. ksn (3600)  (優勝)
 02. jagoon (3600) (準優勝)
 03. tly (3600)
 04. eggpod (3200)
 05. ucq (2800)
 06. smat (2400)
 07. rito (2400)
 08. chari (2400)
 09. unk (2400)
 10. ffrbk (2100)
 11. phantom (2100)
 12. test999 (1900)
 13. ykata (1800)
 14. tanzaku2 (1800)
 15. GtMh (1700)

 本当に多くのご参加、有難うございました。

LINK:
 NetAgent Security Contest 2010 開催

NetAgent Security Contest 2010 開催

 NetAgent Security Contest 2010 の登録受付を開始します。
 以下のWebページより、注意事項等をご確認の上ご登録ください。
 (開催状況は随時このブログにて更新致します)

 http://xxx.xxx.xxx.xxx/

 登録しましたら、入力されたメールアドレスへ確認メールが届きます。その確認メールに記載されているパスワードを、14:00以降に再び上記Webページへアクセスし、フォームに入力していただくことで、競技開始となります。

NASecConPic2 14:00以降に上記Webページへアクセスすると右図のページへ飛びます。入力フォームにメールに記載されたパスワードを入力することで、競技開始となります。
NASecConPic 左図が競技画面となります。左下のCHALLENGE項目から問題を選択し、解答を入力します。問題は1問ずつ解かなければ次に進めないという方式ではなく、参加者の誰かひとりでも解けば、参加者全員が次の問題を閲覧、解答する権利が与えられます。よって、解答の順番ではなく、点数と解答速度によって勝敗が決まります。
 Level1~Level8まで各100~800点の点数が振り分けられています。順番を問わず、全問正解すれば(100+200+300+400+500+600+700+800=)3600点獲得できます。同点数の場合は早い方が上位になります。上位15名は左上のランキングに表示されます。また、誰がどの問題を攻略したかは、左最下のステータスで確認できます。

tiwtterタグ: #NASecContest2010

■現在のランキング(開始1時間 - 15:00 - )

 01. ksn (600)
 02. tly (300)
 03. yasulib (300)
 04. lmo1oc (300)
 05. unk (300)
 06. pandasom (300)
 07. ucq (300)
 08. jagoon (300)
 09. hopkin (300)
 10. ykata (300)
 11. blackwidow (300)
 12. ffrbk (300)
 13. suma (300)
 14. tessy (200)
 15. sas (100)

NASecConPic3■現在のランキング(開始2時間 - 16:00 - )

 01. tly (1500)
 02. ffrbk (800)
 03. GtMh (700)
 04. ksn (600)
 05. nao (600)
 06. jagoon (600)
 07. alert (500)
 08. yasulib (300)
 09. lmo1oc (300)
 10. unk (300)
 11. pandasom (300)
 12. ucq (300)
 13. hopkin (300)
 14. ykata (300)
 15. blackwidow (300)

 上位との差が開いてきました。現時点で、すでに7問目まで開かれています。右図は15:45辺りの時点でのキャプチャー画像です。

NASecConPic4■現在のランキング(開始3時間 - 17:00 - )

 01. tly (1500)
 02. eggpod (1200)
 03. ksn (1200)
 04. jagoon (1000)
 05. ffrbk (800)
 06. GtMh (700)
 07. i53 (700)
 08. nyannyan (700)
 09. nao (600)
 10. chari (600)
 11. alert (500)
 12. haru_44 (400)
 13. yasulib (300)
 14. lmo1oc (300)
 15. unk (300)

 7問目まで開かれているのは変わりませんが、専門分野をより確実に攻略している方が上位に上がる形になっているようです。しかし、7問目、8問目はそれぞれ700点、800点が入りますので、まだまだ逆転のチャンスはあります。
 右図は20分前のキャプチャ画像です。

NASecConPic5■現在のランキング(開始4時間 - 18:00 - )

 01. tly (2800)
 02. ksn (1700)
 03. jagoon (1500)
 04. eggpod (1200)
 05. rito (900)
 06. ffrbk (800)
 07. cbm57280 (800)
 08. mxx (800)
 09. GtMh (700)
 10. i53 (700)
 11. nyannyan (700)
 12. test999 (700)
 13. nao (600)
 14. chari (600)
 15. tanzaku2 (600)

 ついに8問目を含めた全問題が開かれました。また状況は、tly氏の単独トップを追う形になっています。ランキング全体も大きく変わり、600点を超えなければ入れない状況になっています。トップ争いが激しくなってきました。

NASecConPic6■現在のランキング(開始5時間 - 19:20 - )

 01. tly (2800)
 02. ksn (2800)
 03. jagoon (2100)
 04. GtMh (1700)
 05. ucq (1400)
 06. eggpod (1200)
 07. chari (1200)
 08. unk (1200)
 09. tanzaku2 (1100)
 10. rito (900)
 11. test999 (900)
 12. maka666 (900)
 13. ffrbk (800)
 14. cbm57280 (800)
 15. mxx (800)
 
 同率1位。残り1問(Level8)でトップ争いが行われています。3600点を獲得した時点で優勝、準優勝が確定しますので、まさに山場、最後の一戦といった感じになっています。また、9位以上は1000点を超えているので、1~2問解くだけで十分、上位陣に食い込めます。ここから1時間は目が離せません。

NASecConPic7■現在のランキング(開始6時間 - 20:00 - )

 01. tly (2800)
 02. ksn (2800)
 03. jagoon (2100)
 04. eggpod (2000)
 05. GtMh (1700)
 06. ucq (1400)
 07. chari (1200)
 08. unk (1200)
 09. tanzaku2 (1100)
 10. rito (900)
 11. test999 (900)
 12. maka666 (900)
 13. ffrbk (800)
 14. cbm57280 (800)
 15. mxx (800)

 残り1問(Level8)でのトップ争いは変わらず。そんな中、eggpod氏がLevel8を攻略し、4位に浮上。これで、8問すべての問題が参加者によって解かれたことになりました。
 2000点以上が4名、1000点以上が9名、800点でもLevel7とLevel8を攻略すれば、一気に3位まで上がれる状況です。3600点に最初に到達するのは誰か。この1時間に期待。

NASecConPic8■現在のランキング(開始7時間 - 21:00 - )

 01. tly (2800)
 02. ksn (2800)
 03. jagoon (2100)
 04. eggpod (2000)
 05. GtMh (1700)
 06. ucq (1400)
 07. ykata (1400)
 08. chari (1200)
 09. unk (1200)
 10. cbm57280 (1200)
 11. tanzaku2 (1100)
 12. rito (900)
 13. test999 (900)
 14. maka666 (900)
 15. ffrbk (800)

 ランキングはほぼ変わらず。沈黙状態です。

NASecConPic9■現在のランキング(開始10時間 - 24:00 - )

 01. ksn (3600)
 02. tly (2800)
 03. jagoon (2800)
 04. eggpod (2500)
 05. unk (1900)
 06. rito (1900)
 07. GtMh (1700)
 08. ucq (1400)
 09. ykata (1400)
 10. smat (1400)
 11. chari (1200)
 12. cbm57280 (1200)
 13. test999 (1200)
 14. yasulib (1200)
 15. tanzaku2 (1100)

 ksn氏が見事、全8問を攻略し優勝となりました。ksn氏には後日、優勝賞品であるMacBook Airを送らせていただきたいと思います。
 コンテストは引き続き運営していきますのでよろしくお願いいたします。

LINK:
 NetAgent Security Contest 2010 開催のお知らせ
 NetAgent Security Contest 2010 開催まであと24時間となりました
記事検索
月別アーカイブ
QRコード
QRコード