H2020BO 参加レポート

はじめに

1月23日(金),1月24日(土)の2日間で開催されたH2020BO(通称Hardening 2020 Business Objective)に参加してきました。これを書いてるのは2月入ってからなので割と時間が経ってからになってますがごめんなさい。帰って来てからも色々あったんです…。

自分の体験そのまま書き殴っていくので競技関係なくね?ってことも結構入ってると思います。レポートってより自分の記憶を突っ込んだだけかもしれないですね…ただ、反省点やらはちゃんとまとめようと思っているので戒めにしてもらえると幸いです。

 

 

今回は…というかHardeningの参加は今回が初めてです。以前Micro Hardeningには参加しましたが、そこでボロボロにされながらも「いや、これ楽しいな?」と「アホみたいに悔しんだけどこれ」が混じったゴチャゴチャ感情を味わったので、これはもうHardeningに参加するしかないなと思い立ち、帰ってきてすぐ申し込みしてました。

僕は学生ということもあり、周りの方々と違って企業での申し込みみたいなこともできないのでぼっち参加でした。本当は一緒に申し込んでくれたはずの友人がいたのですが…←裏切られました。

 

今回参加させていただいたチームは9人チームのTeam5、ONE TEAMでした。名前も当時のトレンドだったラグビーから「スクラムを組んで取り組むところがセキュリティに通ずるところがある」という理由からメンバの方が提案してくれました。

ちなみに実はもう一つこっそりあがってたチーム名の案が「イヌヌワン」でした。ONE TEAMとイヌヌ「ワン」…フフッ…アッいやなんでもないです…

僕は剣盾2周してワンパチ手持ちに入れてたのでこっそり賛成してました。アニメでも何回か出てますが、ワンパチかわいいですよね。

Hardeningとは

「衛る技術」の価値を最大化することを目指す、全く新しいセキュリティ・プロジェクト(https://wasforum.jp/hardening-project/より引用)

上記のリンクを見てもらえれば分かるのですが(説明放棄)、とても簡単に言えばECサイトを防衛しながらビジネスも頑張ってね、という感じです。

セキュリティの面ばかり気にしているとビジネス面の売り上げが上がらなかったり、ザルで攻撃ばかり通されていると役員会(そのままの言葉)でボロボロに追及されたりします。めっちゃ怖いです。

ちなみに以前参加したMicro Hardeningの記事も書いてますので、内容がスカスカでもよろしければ…

ohy-s.hatenadiary.com

結果

グランプリに関わってくる売り上げスコアに関してですが、これは後ろから2番目でした。理由は単純にマーケットプレイス(後述)にガッツリお金を使ったからですね。買えずに後悔するより、買って後悔した方がスッキリするからマーケットプレイスには出し惜しみはしない、という方針があったためこれに関しては全然気にしてなかったです。

他の評価項目で1位のものがあったのですが、これってここで言っていいものでしたっけ…少し不安になったのでやめておきます。

マーケットプレイス

Microにはなかったのですが今回はマーケットプレイス(以下MP)という制度があり、スポンサー企業のサービスをオークション方式で買い取り利用することが出来ます。僕たちのチームは今回、準備段階のミーティングで話し合った結果、バラクーダさんのWAF,NECさんの人的サービス,CiscoさんのIPSサービスを購入しました。

僕はWAFの導入を引き受けたのですが、導入にあたってバラクーダさんにはとてもお世話になりました…1から1000000000ぐらいまで聞いた気がするのですが優しく対応してくださったので、普段は触れないWAFの導入という貴重な経験を楽しく行えました。

事前準備

 今回はチームで2ヵ月弱の間準備期間がありました。Microの時は1週間前にチーム分け発表だったのでそう考えるととても長い期間お世話になったなあと思います。

メールで運営からチームが発表され、各自slack等のコミュニケーションツールを使いチーム内やり取りをしていました。今回リーダを引き受けてくださった方はHardening参加経験者だったので、チームを引っ張っていただきました。本当にお世話になりました。

slack参加後最初は自己紹介。所属や社会人歴(僕は経験ないので無し)、普段やってることなどを軽く紹介しました。ちなみに今回のチームは僕以外全員社会人の方ということで、当初僕は「はい…専門学校生です…はい…」とちょっと自分の所属名乗るのが恥ずかしかったですね…そんなくだらない恥はリーダーが一瞬で吹っ飛ばしてくれました。感謝。

ちなみに僕は北海道から参加なので、流石に同じチームに北海道の人はいないだろうなあと思っていたところ、い ま し た(大歓喜)。ということで12月8日。早速お会いして色々お話ししました。まだチーム内での話し合いがあまり進んでいなかったので、どんなお仕事をしていらっしゃるのか、最近のセキュリティのお話など色々お話をしました。楽しかったです、ありがとうございました。

その後12月12日には最初のオンラインミーティング。各自自分が出来ることや、今回の競技でやってみたいこと、優勝を狙うのか個人で学ぶことを大事にするのか。など色々話し合いました。ちなみにチームの方針は個人で学ぶことを大事にすれば、各自が頑張ることになるので結果として優勝もついてくるのではという感じでした。つまり学びに少し重きを置いた形ですね。

また、情報共有ツールには何が良いかという話で、メンバの方からNotionを使ってみないかという提案がありました。僕は今回初めて聞いたツールだったのですが、これが使いやすい。ディレクトリみたいな感覚でページを追加出来て、ブックマークも貼れる。いいですねこれ。次参加する時使います。

それ以降は各自で想定される環境の主要な脆弱性情報をかき集めたり、初動1時間でやるべきことをまとめ、スクリプトを組んでくれた方もいました。

今回色々調べるのは良かったのですが、個人的な反省点は自分の好きなことばかり調べ過ぎたなあということです。例えば、今回ログ関係を色々見てみたかったので、以前2周ほどした後しばらく放置されていたログ分析入門の本を持ってきて読み直したり、安全なwebアプリケーションの作り方を読んでみたりしていましたが、苦手なネットワーク関係はほとんど調べず、チーム内の議論も見て理解した気になった程度でした。

学生である僕が一番時間があったはずなのにここですら苦手な事に背を向けていたので本当によろしくないなあと今も感じています。やりたいことだけでやっていけるなら苦労しないですよね…

話は戻り、1月の中旬ぐらいに2回ほどオンラインミーティングを行い、ここでは各自持ち物リストの確認、特にフラッグとバッチ、これ忘れると目も当てられないので何人かが何枚かずつ持っていくことにしました。あとはホワイトボードや付箋、人によってはマウスやキーボード、USBメモリ、名刺ですね。

流石に学校で名刺は作っていないので持っていなかったのですが、まあ趣味での色々もあり名刺をデザインして発注できるサービスは知っていたのでお願いして作ってもらいました。ここです→https://mhtdesign.net/

 

そして競技前日、北海道から沖縄への直行便は日に1本しか飛んでないので(これ最初予約しようとしたとき「え、なにこれ?1本?」って素で声出ました。)メンバの1人とは新千歳空港で合流。席が横列で同じだった時は笑いましたね…

無事那覇空港に到着しバスに揺られ名護バスターミナルへ。これ競技には関係ないハプニングだったのですが、荷物を取り違えて持っていかれてしまいましたw

ターミナルの職員の方の協力もありすぐに戻ってきたので大丈夫でしたが、こういうハプニングは初めてだったので楽しかったです。

チームメンバ全員と合流し、食事をしながら運営から送られてくる資料を読み込みました。当日になって想定外なことが多く、困惑しながら読んでましたね。競技背景の社長のセリフなんて見てた時「あっいやなよk…当たっちゃった…」という綺麗なオチもありました。

今回は特に会場が分断されるという事態だったので誰がどっち側に行くか、それに合わせてどの踏み台を誰が担当し弄るか、あとは各役割の最終確認など、4時間ほど行いました。解散後、僕は部屋に戻りシャワーを浴びてこういう脆弱性はあるかなあとか考えながら調べものをして寝ました。遅くまで作業してくださったメンバもいて、日付変わったぐらいで呑気に寝ててすいませんでした…。

Hardening day

当日。同じホテルに泊まっていたメンバとタクシーに乗り会場へ。会場とってもきれいでした。まさかあんな地獄を味わう場所になるとは知らず…。

各チームにつき、必要なセッティングをした後、開会式が始まりました。競技背景実写映像でやるんですね…なんちゃらぺいやらなんとかごーんやら時事ネタ多くて面白かったです。

開会式後、競技が始まり早速僕たちのチームは踏み台PCのパスワード設定、不要なサービスの停止など、前日に決めていたことから順に取り組んでいきました。

その後は各自決められた役割をこなす中、早速MPの販売が始まりました。これはリーダーがSoftening dayでも言ってたと思うのですが「1億ぐらいいっか」と、本当に1億以上MPに突っ込みました。あれぐらいの思い切りの良さ欲しいです。

そういうこともあり予定していたMPは全部買えました。購入したMPの内、僕はWAFの導入を引き受けました。マニュアルを貰い、鍵を持ってくるというところで「あれ?これどうやって持ってくるの?」となってしまったのですが、(本当に無知でごめんなさい)バラクーダさんの方が丁寧に教えてくださったので無事導入できました。WAFは学生である以上ガッチガチのライセンスには手を出せないので、そういう意味で今回触れることが出来て良かったなあと思います。

合間合間でサイトの巡回や、インシデント報告、自分で仕事を探したり指示を貰ったり…あったのですが、当初僕がやりたかったログを見てみるといったことはやる余裕がありませんでした。目の前のタスクに追われる中でそこまで手が回らなかったです。あとはそもそもLinuxUbuntuをしばらく触っていなかったためそれ関係で詰まってしまったことが多かったです。流石にUbuntuで再起の仕方も分からないのはヤバい…。

なんやかんやで競技終了。日没にも間に合ったらしく、そのまま皆外に出て沖縄の日没を背景に集合写真を撮りました。

夜は再びご飯を食べながらSoftening dayの資料作り+反省会。それぞれ色々反省点や良かった点が出ますが、僕が特に印象に残ったのは「『知ってる』と『やったことがある』と『やれる』は全然違う」という言葉ですね。ほんと良い意味でHardeningに心を折ってもらい、この言葉を強く受け止めることが出来ました。

家で実機でやっていたようなことは今回ほぼ活かすことが出来ず、机上で学んで知ってはいたけど…という場面が多かったです。知っていても経験値が足りない故いざやろうとしたときに引っ張り出すこともできない。これじゃいつまでたってもダメですね。じゃあどうするかというのは最後に総括で書きたいと思います。

 

Softening day

前日のHardening dayでのことを各チームまとめ、発表。同じく地獄を見ていた他チームの発表はとても面白かったです。これ言っちゃっていいのかな…Softening dayのアーカイブ見ればあるし大丈夫ですよね…。いややっぱり伏せて言いますね…。

追記:アーカイブに残ってる部分は大丈夫らしいので少し直しました。

個人的に驚いたのがLB配下鯖のアドレス隠ぺいですね。あ、そういうのアリなんだと素直に驚かされました。単純に僕の知識が無さ過ぎるだけだと思いますが。でもこういう驚きがあると強く頭の中に残ってくれるので、同じような事があったときに対応できるのかなと思っています。

各チームの発表も面白かったですが、やはりkuromame6。やることがエグイですね…。今回は聞いていたより攻撃が少なかったのかなと思います。どうやら3人ほど仕事があり来れず、もしこの方々がいると知らないうちに勝手に攻撃が飛んでいくらしいです。「あっこれでまだマシだった方なのね…」と結構絶望しましたね。あとは俺たちのHardening。今回の競技の裏側も面白かったです。運営の方々の苦労もありこういった競技は開催されてるんだなと再認識しました。僕の心をへし折ってくれてありがとうございましたkuromame6の皆さん。

 

懇親会

この懇親会がかなりの収穫でした。前述のバラクーダネットワークスさんの方とお話させていただいたり、志望企業の方から色々お話をしていただいたりと、内容についてはちょっと出せないですけど得るものが多かったですね。

あと、名刺を持って行って良かったなと思っています。こういった場でないと名刺交換をする機会もなかなかないので、業界の方々とたくさん交換していただいて…本当にありがとうございました。学生であろうと名刺は持っていて損はないですね。

 

まとめ

まず今回の反省点は「自分が好きな事についてしかやらなかった」ということと「単純に現場力・基礎力が足りなかった」ということでした。前者は苦手なネットワークから逃げていた結果であり、後者もそれに通ずるところがありました。今はこれを受けて、TCP/IPの基礎からやり直しています。あとパケットキャプチャのお勉強始めました。ネットワーク関係を徹底的にやれば、セキュリティの理解にもつながりますしね。というか普通に武器二つぐらい持ちたい。ログとパケット解析興味あるしその辺りで…。あとCTFですね。初っ端からMNCTFやって後半問題でボッコボコにされたので今は大人しくCpawを合間合間でやってます。

それと、今回チームの方々にとても助けてもらいました。分からない事の相談もそうですし、とても話していて面白い方々でしたので、コミュニケーションを取るのがとても楽しかったです。ちなみに僕のチームは関西からの方が多めだったと言う事もあって、4日の間で関西弁に引っ張られた結果、エセ関西弁の道民という素晴らしいものが出来上がりそうになりました。今は元に戻ってます。

 

今後

前述の通り今後はネットワークについて学びながら、特に苦手なDNS周りをどうにかしたいですね…。それと4月の支援士試験の合格。余裕があればネスペ。最後に特化武器作る。

あと、学生のうちにHardeningにもう一度出たいなと思っています。夏は北海道でやってもらえるのかな?もしやってもらえるなら今度は交通費ほとんど掛けずに行けそうです…。僕なんかよりずっとHardeningで戦えそうな友人は2人程心当たりがあるので次はその友人も誘って一緒に出てみたいなあと思っています。あ、もちろんチームはバラバラで。その方がお互い何があったか後で感想会する時楽しいですしね。

次参加する時は何か「やってやったぞ!」と思えるようなことが出来るように頑張ります。

 

終わり

長くなってしまいましたが、これで締めたいと思います。最初の宣言通りただ記憶の通り書き殴ってしまったので参考になる部分が無かったかもしれません。ごめんなさい。

ただ何回も言っている通り今回は本当にいい経験になりました。IT関係で心が折れたのは本当に久しぶりです。次やるべきことが見えるのはとても気持ちが良いですね。

それでは今回お世話になったチームの皆さん、運営の皆さん。本当にありがとうございました。またお会いしたときはよろしくお願いします。

 

ギャラリー

終わる流れだったはずなんですけどね!殺風景なことに気付いたのでスマホで撮ってた写真をここに貼って行こうと思います!

 

f:id:ohy_s:20200204224513j:plain
f:id:ohy_s:20200204224538j:plain
f:id:ohy_s:20200204224611j:plain
競技会場から撮った写真、とてもきれい

f:id:ohy_s:20200204224619j:plain

懇親会、僕は未成年なのでお酒飲んでません。大丈夫です。
f:id:ohy_s:20200204224649j:plain
f:id:ohy_s:20200204224658j:plain
左は那覇空港、右は絶望の新千歳空港です