お腹.ヘッタ。

関数型とかセキュリティとか勉強したい。進捗つらぽよ

Global Cybersecurity Camp2018に参加してきた。

この記事は今回一緒に参加した仲間たちの備忘録と来年度に参加してくれる未来の仲間たちの参考になればイイなぁと思って書き残してるメモ書きです。英語書くの辛いので日本語で書いてますが彼らに捧げます。(論文書いてる風)

GCC_image

TL;DR

  • 初めての試みとして韓国でGlobalCybersecurityCampが開かれた。それに参加してGCCの一期生になった。
  • 台湾、韓国、シンガポールそして日本の四カ国が韓国で約一週間のブートキャンプをした
  • かなり密度が濃いキャンプで、日本語通訳なんてものはなくて無限に英語力がほしいなとなる。英語ペラペラ民多すぎ。
  • まさかのちゃんとグループワークもあった。

whoami

  • ^(竹(たけ)|たけみお|たけはや)($|くん|ちゃん)と名乗ってます
  • 宮城県で大学二年生でCSの勉強をしてる。フルリモートのアルバイトを探している
  • SecurityCamp2018卒業生。集中開発で意味論を定義した関数型言語LLVMで3日で作ったでっち上げた
  • 現在某社脆弱性検査ツールの手伝いしたり、ネットワークについて勉強している。
  • SecHack365において一期生をやって、そこでも海外派遣の一期生をやった。
  • Detailed career: https://takehaya.github.io/

GCCとは

コミュニケーションを促進し、多国籍のセキュリティコミュニティを構築するため」のキャンプです。主催者のOrgnaizerの一人のBlueのカナさんの言葉借りるならば「サイバーセキュリティの世界引っ張れるリーダー作るをするための機会を作る」ということを目標にした、いわばSecurityCampの国際バージョンでしょうか。そして今年は記念すべき最初の年です。

今年度は韓国、日本、台湾、およびシンガポールが参加しました。流れとしてはキャンプは1週間続き、各国のホストになる組織が一日ずつ講義を計画して主催をしました。

各国のhostは以下のとおりです。

この組織がわからないという人が多いと思うので以下に説明していくと、 韓国はのKITRIは日本で言うIPAみたいなところです。で、そこの下部組織のBoBというセキュリティのプロフェッショナルの原石を作るような、いわゆる日本で言うSecurityCampのようなところがあります。そこが韓国側のホストでした。

ここはSecurityCampのように集中講義的なものばかりではなくどちらかと言うと4ヶ月ほど長い期間で目的意識を持ってR&Dをし、その成果発表をしたりします。日本で例えるとNICTのSecHack365に近いような気がします。

かなりここは力の入れ具合がすごく、例としてそこのコンペティションの上位10人には奨学金270万円を与えたり、海外カンファレンス(RSAカンファレンスやブラックハットAsia)に連れ行ったりなど。流石国の力が働いているだけあります。それだけではなく学生の成果も素晴らしくなんとこのBoBでCVEの取得まで辿り着く人が一定数います。勿論彼らはすごく頑張っており、BoBには専用のセンターが有り(ビルのワンフロアすべて使っているオフィスがある。)そこで24時間勉学に励む人もいます。そして彼らは一度大学を休学したり卒業して就職後に参加したりなど圧倒的に意識が高い人達が何人もいました。

今回の韓国側の学生のGCC参加は今までの進捗及び成果をもとに希望者を募りInterviewをしてオファーが来るという感じだったそうです。

(・・・こう書いてると申し訳ないんですが日本はもっと見習って学生に機会と金をガンガン投資して、学生も相応に頑張らないと本当に負けるなと思いました。頑張っていこうな。。。)


台湾Advanced Information Security Summer Schoolは台湾の教育省が主体で動いている情報セキュリティに関する教育組織です。SecurityCampにかなり近いような形式で端的に言えばCTFをやって力を計ったりなど。かなり近いですね。そこの協賛とかを見るとNICTなどがいるので若干日本も協力してるようです。ただ彼らはAIS3は5カ年計画なので一度解散するようですが。。。どうなんでしょう。もちろんまた次の5カ年に向けて動いてるらしいですが。

そして今回の台湾側の学生のGCC参加はそのCTFの結果でオファーが来るかどうかみたいな感じだったそうでした。ちなみに彼らも渡航代金はすべて補助されています。

シンガポールDiv0は国ではなくてコミュニティベースの組織です。残念ながらあまり詳しく聞けなかったので詳しく書きませんが、今回の学生たちはGCCプログラムの奨学金として行ってきたようで協賛スポンサー様からお金を引っ張ってきた感じです。

実は日本もそのような感じで協賛スポンサー様からのお金で行っています。国費ではありません!!!!LCCは高身長マンの私にはマジで大腿骨があたって痛い(´;ω;`)

ぜひ来年度は日本で開かれますのでこのブログを読んで興味を持った企業様ぜひスポンサーになってください!(言ってくださればそれっぽい人にルーティングします。)

そして最後は日本のSecurityCampについてですが、これは探すと日本語でゴロゴロ出てくるので公式サイトを見てもらうと良さそうなので割愛します。

ちなみにですが日本勢の今回の参加資格はSecurityCamp全国大会修了生限定で、なおかつ応募課題を解いて提出という感じでした。

応募課題について。

残念ながらwriteupは書かないでほしいと言われたので雰囲気だけで書いておきます。

問題文

読むとわかるんですがwindowsの疑似Malwareを解析して答えよという感じです。私はこれをautorunやapimoniterなどをつかって挙動を眺めて、わからない部分はデコンパイルして難読化解除をして提出しました。なかなか大変でしたが、難読化されたコードを読んで送ったのは私だけだったぽいので動的解析がちゃんと出来ていれば合格できるのではないかなと思います。

windows wmi malwareとかそんな感じで調べたりすると幸せなんではないでしょうか・・・強いて言うならば通るだけならば何でもありだったんですが、後々の講義では使えないかもしれない手法になってしまうのでcuckoo sandboxとか考えず応募用紙に書いてるpython-cimとかが使えるようになるといいかもしれませんね。

いやぁ。windowsは非常に難しいですね・・・^^;

会期期間について

GCCの予定

会期は1/21-1/25まででした。最終日が観光という感じです。 以下に簡単に講義についての概要説明をします。

1/21

  • Training 1: Look at the Hacking (Offensive Security) Big Picture by Kyounggon (KG) Kim
  • コース難易度:★☆☆☆☆

コースの内容自体は、Crypto, network, Webに関する脆弱性や紹介をしている感じで、かなり簡単で初心者でも楽しむことが出来るような網羅的な紹介が多かったと思います。

もし不安なら任意の常設CTFをやるとかcisco networking acadmyとかの教材とか眺めていくと良さそうと思いました(ステマではない)

1/22

  • Training 2: Binary Exploitation by Angelboy
  • コース難易度:★★★★★

バイナリエクスプロイトに関する話をこの講義ではしていました。CTF形式の講義で端的に言えば一日中ROPをやっていました。 勿論buffer overflowの話だったり、出来る人へのアドバンスとしてheepに関する問題を用意していたり非常に高度で、冗談抜きでなんもわからん人は無限においていかれててつらそうという感想を持ちました。 writeupも公開されていてそれだけでも勉強になります。

Global-Cybersecurity-Camp-2018/exp at master · scwuaptx/Global-Cybersecurity-Camp-2018 · GitHub

そもそも事前にやってほしいみたいなものが講義前日に出てきたので事前課題がなにも出来ずという感じで大変でした。個人的に感動したのは攻撃の手法でstack migrationというのがあってそれの講義が面白かったです。

若干理解が怪しいんですが,簡単に説明すると,1度目のropで制御を任意コードを奪うというのは割と自明でわかると思うんですが,そのあとにその奪った制御で2度目のROPを実行してstackの拡張を(rbiをずらすことをして)試みます.そのあとにコピーされたstackは自分の完全な制御領域になるのでそこまで持ってくるとほぼ永続的に任意のシェルコードを挿入することができるようになるという手法があって...つまり2回事前にROPするとほぼ好きに自分が扱える空間を作れるということが言えるんですね.すごい...

1/23

  • Training 3: Applied Cybersecurity (Cybersecurity Product Development) by Emil Tan
  • コース難易度:★☆☆☆☆

この講義は1/21の講義に近くて技術の詳細と言うよりは職業の詳細を述べており、具体的にはサイバーセキュリティ業界のサービスと方法の概要やIDSとかのツール(P0f、Snort、Shockpot、Cowie)およびML(SVM)がどのようにサイバーセキュリティに適用されるのかという簡単な紹介をしました。

この講義は実はgroup workにつながっていて、具体的には今回のグループワークは自分たちがどのように将来を描くのかを問うものだったので僕らに対してどのような将来が開かれているのかを示したかったのかなと思っています。

(しかしながらシンガポールの英語は聞き取るのが難しいですね・・・シングリッシュ

1/24

  • Training 4: Hunt for Attackers with Incident Response by Hiroshi Suzuki & Hisao Nashiwa
  • コース難易度:★★★★★

講師があるストーリーを提示し、それに基づいたVM imageを渡して即席で組み上げたチームでCTF形式のインシデントレスポンス講義が行われました。デジタル・フォレンジックに興味がある人は楽しいと思います。機密保持契約に署名しているためツールの詳細な使用などの情報を共有することはできませんが大変おもしろかったです(ただこの講義は普通のセキュリティ・キャンプ全国大会でも行われてるぽいですが)

ワーク

グループワークと個人ワークが今回はありました。 端的に言えば「GCCにどのように貢献するのか」「GCCのもつ価値はなにか」という自分自身とGCCの未来についてを議論しました。

特にgroup workでは主催者側が用意した、セキュリティのいくつかのテーマごとに人を集めてチームをつくりました。 例えばオフェンスが好きな人、ディフェンスに興味を持つ人、フォレンジックに関心がある人、セキュリティツール開発に興味がある人など。

私のチームでは様々な人が来ることによってのシナジーについてを話し、僕らが「知らなかった」を知ることが出来るということの重要性を話しました。題材が題材なので比較的に他のチームも似たり寄ったりになってしまいましたが、しかしこれが終わった後論文を書きたいとか今後もオンラインで交流をして意見交換をし続けたいといった建設的な交流が進められたと思います。

会期中の生活

人それぞれですが僕の場合は僕主催で毎日パーティをしてました。 f:id:taketarou2:20190203004203j:plain party_1

なんでこんな事になったのかと言うと僕の部屋が誰もいないんだよね(普通は相部屋)というところが事の発端で、その日から僕の部屋がパーティー会場になってしまいました・・・

これは日本人勢どうしようねこれから〜というがんばりましょうみたいな会です。NICTの園田さんはサッカーに夢中でこなかった。

  • day 2:韓国勢とシンガポール勢がきてチキンを買って食べるチキンパーティ(orengeやangelboyも来てくれた)

これは韓国勢の仲良くなった仲間とチキンパーティーをしたいねということで始まったもので、なかなかよかった。だいたい彼らアニメの話ができてすごい日本人より日本人やってるなぁという感想がありました。涼宮ハルヒが通じるの非常に感動したし、灼眼のシャナとルイズが通じたのは笑うしか無かったw

  • day 3:台湾勢とシンガポール勢が来てバイナリかるたパーティ(講師の今岡さんにそそのかされて)

これは悪い大人にそそのかされて気がついたらバイナリかるたをしていたと思ったらアーキテクチャかるたに変わっていて非常に流石国際サイバーセキュリティオタクの会なだけあるなと感じました。

  • day 4:シンガポール勢が来てビールと焼酎を買ってきたので強制的にパーティ

彼らビールを4.5リットルに焼酎1.5リットルを買ってきたので強制的にパーティが始まってしまいました。すごいなぁと思ったのが焼酎をビールに入れて飲んでいて強いなぁと思いました。彼らはそれをbombとよんでいて非常に興味深いカルチャーショックでした。。。

最後の方は完全に野郎が多く集まったのでだいたいエッチな話が飛び交ってたのは内緒ですw

  • day 5:最終日だからやるよねという話になり、僕の部屋に台湾、韓国、シンガポール勢が来てパーティー

トランプを持ち込んだりして大富豪(しかし国ごとにルールが違うというのがあり興味深かった)などをしたり、かなりエキサイティングでした。 韓国の辛いカップ麺を食べてみたり、自分たちの専門や研究。将来を話したりなど非常にみんな変わらんもんやなぁと思いました。

ほかにも年相応な話としては恋バナをみんなでしていて、「君のいつ初恋ですか!?!?!?」みたいな。同時に他の国の教育システムなどの話になったり非常に興味深かったです。

(しかしながら、それでも全員と深く交流できたわけではなく、パーティーに来てくれなかった人もいたのでちょっとだけ残念でした。台湾勢がインフルエンザになってしまった人が何人かいてあまり話せなかったからもっと話したかったなぁ)

こんな感じで、毎日3時に寝るのはそこそこきつかったし、英語伝わらなくて"google translate bast friend"という感じですが今となってはいい思い出です。おかげで一つ取得した特技がスプーンで王冠を開けることが出来るようになりました。

というわけで細かい話はいろいろあるんですが気になる人は直接聞いてくれたら答えます。

分類がわからんチラシの裏な話(petty topic)

グループワークでは自分の将来のことを話したり、GCCにどうやったら貢献できるのだろうかという話をしていたりなど自分たちがどうしたいのかをちゃんと話すいい機会をもらえたなと思います。

で、GCCはなんだろうという話ですがまんま良くも悪くも流れがセキュリティ・キャンプぽいんですよね。(個人の感想ですので正しいものではない)

なのでつながりを大切にみんな考えていてそして自他共栄な部分が今は大きいなぁと感じてます。なので現在はもう修了生のfacebookが参加者の学生で作ったのがあったりとか。テレグラムとかつかったりとか。そのうち勉強会ができたらいいなーと言う話をしたりしてます。僕は参加まだしてないけどいわゆる作業スカイプもどきなことをもうやってたみたいです。まぁタイムゾーンが大きくなったら難しいですがw

個人的にはもっと多くの人に参加してもらえる世界観を作れたらイイなぁと思います。キャンプ卒業生だけみたいなのやめて、せめて年齢制限でキャンプもう応募できない人は普通に出して良いとかそうしたらいいのにね。

あと思ったこととは意外に日本人って技術力は高いんだなぁと思った。多くの参加者が学部4年相当だったのでそう考えるまぁ日本人英語だけもうちょいやればもっといいところ行けるんだろうなぁって。しょっぱいっすなぁ。

まぁでもそれ以上に優秀な子はいて高校生で参加している子がいたりして(それこそMOPI(@naogramer)くんとかシンガポールのPei Si(@kaskrex)さんとか)もっと我々は高いところを見ていかないと行けないなと考えさせられました。留学したいなぁ・・・

特に私が思うこれからの課題の一つにはダイバーシティさが足りないという点です。日本は女性の参加者がいなくて、ですが他国はいて、その上他国の人はダブルメジャーの人とかがいて素晴らしいと感じました。体系的に学んだもので別の視点を持つ人々、生まれ持つパーソナリティやジェンダーに基づく視点などが多いのは我々の国も見習わなくてはいけないなぁと感じました。その次に来るのはお金の部分でしょうか。。。おそらくこれを読む学生や大人は日本人なのである程度の理解をしているので割愛しますが。

今回の参加を通じてSecHack(去年国費でアメリカに派遣された)で感じたこととはまた違う気持ちになりました。具体的にはやることが通用するが、技術やカンファレンスでの知見を多く得られた世界観であれはあれという気持ちで止まっていたのが、今回はリアルに同年代の人と自分を比べてバイタリティでは負けているなぁと感じたのです。

ちなみに後日談ですが、「某アワードとりあえずなにか書いて出して」と言われたのでとりあえずパーティーについてと日本以外のサイバーセキュリティに対する意識を話しますと書いたらだいたいパーティの報告じゃねぇかとお叱り落選メールが届いたのでなにか(真面目なことを書け)ということだったのですいませんという気持ちになりました。来年は真面目なの書いておきます。。。

まとめ

GCCは総じて体験が良かったのでぜひぜひみんな参加してみては?

そして参加したみんな(特に日本勢の仲間たちと他国の学生たち)には非常に良い体験をさせてもらえたなーと感謝しています。

ちなみにですが次は日本で行われます。その次が台湾。そしてシンガポール。なので後三回先までは決定してるみたいです。英語勉強して外に出ていこうな。俺もチューターとかしたいんが雇ってくれへんやろうか。

他の参加者

  • Taiwan のjuienが書いてた記事。長々と書いてた私と比べると簡潔に書いていて読みやすく素敵。 medium.com

(他の人が書いたら追加します。)