お腹.ヘッタ。

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

東京都八重洲口にある某メディア企業を退職しました

こんにちは。takemioです。東京都八重洲口にある某メディア企業でインターン行ってた頃に携わった保育士と保護者をつなぐことをするプロダクトが絵本を売ってる会社に売られてしまいちょっと悲しかったです(きっと色んな人に愛してもらえるプロダクトなので続いていくといいなー)

さて初退職エントリです。

といいましてもアルバイトの話ですが。。。。

おまえはだれ

  • 竹といいます
  • 宮城県で大学生してる
  • 新3年生
  • CSを勉強してる。セキュリティとネットワークと意味論に興味
  • 詳しくはOSINTしてほしい

そこでは何してたの?

脆弱性検査ツールを作ってました。

なんで入社したの

去年東京都八重洲口にある某メディア企業のウィンターインターンに参加したから。優秀なメンター様の力でそこではラッキーなことに歴代最年少(タイ)参加(?)で審査委員賞をもらったとかラッキーをした。

そんなこんなで懇親会でヘットハントされて現在へ。

なんで辞めるの?

去年の4月から今年の3月の一年の任期で行ってました。

お気持ち

NDA上やってたことは何も言えないんですが、、、トータルなお気持ちとしては初めてのフルリモートでのアルバイトという部分であまり慣れていなかったり、大会とかに参加したりしてちょくちょく進捗が悪くて煽られまくってた私を雇ってくれて感謝という感じでした。

ですが、そもそもの仕事の割り振りが月の中で稼働ができる時間(月何時間で!という感じだった)とうまく噛み合わなくてレビューを放置されたり忙しい時ほどタスクを投げられたりでちょっとそこが非常に辛くてお互い嫌な思いをしたと思います。

特にテキストベースなやり取りがそれに拍車を掛けていたように感じました。また正直投げられたタスクの粒度をどれくらいでやればいいのかとかそういうのがよくつかめなかったり、学部生だと可動できる時間が夜になりがちでミーティングとかがやりにくい部分が多くてはじめはかなり消耗してました。

他にもガッツリ時間が取られるイベントに参加したりするとそれの埋め合わせとかが大変なので結果的に月何時間やったのかを申告するとかのほうが良さそうな気がします。

一緒にやっていた大学院生はうまく稼働ができていたのでどうしてるのかとScheduleを聞いてみると基本的に研究室のなにかにぶつからなければ良さそうな感じだったのでフルリモートは授業を取り終わってる院生や学部四年とかならおすすめなのかも知れません。

ですが時々東京にでていって労働したりすると比較的いい感じにスイッチがはいるのでそこの辺が鍵ぽいです。東京の学生は羨ましいですねー。。。。

まぁさておき、自分主導でできない部分(仕様がわかりにくいor何が仕様なのかわかんない)とかじゃあそれならどうしてほしいとかどう改善してほしいのかみたいないろいろやり取りを振り返るといくつかの反省点が出てきて次に活かしたいなと思います。

たとえば反省としては初めの仕様のキャッチアップのときにフェイスtoフェイスでやらせてもらったり、技術的キャッチアップのときはそのための時間を数時間でもいいのでそれだけのために当てたりとかしたほうがあとからが非常に良かったと思いました。リモートでアドホックなやつは時間が立って忘れたりとか結構大変だと思いました。

ですが、仕事の体験としては初めは正直つまらないと思ってたんですが(今思うとそもそもの仕様がどこにあるのかとかあまり明文化されてなかったりどこから構築してるのかとかキャッチアップできてなかったのが理由だとは思いますが)仕事をする方々は優秀でこのようにしてコードをきれいにしていくのかとか。 どのようにすると良いアーキテクチャなのかとかが見ていて勉強になったので徐々に体験をよく感じました。また納得するまで議論できたのも体験が良くて良いと思います。

他にも特に関わってたエンジニアはほとんど一流(名前は略します)で、彼らの仕事や姿勢を間近で見れたのはかなりバリューでした。特にビジネスからも見れるエンジニアはすごい。組織を回っていうのはそういうことだと思うんですよね。ちゃんと見習います。

その過程で自分もなんでこれでこうしたほうがいいのかとかを考えてて動くようにしてたのは良かったかなと思います。

終わりに

いろいろ言いましたが総じて良い会社だと思っていて、新卒で東京都八重洲口にある某メディア企業行きたい人々の気持ちがなんとなくわかった気がします。セキュリティのことをするには大きくて面白い会社だと思います。僕も「まだ、ここにない、出会い。」を探してます

ちなみに稼いだお金はほぼ全額自分の大学の学費と教科書代とPCと食費と交通費に消えていきました。無事3年次に上がれたのですが四年次に上がれるかはわかりません。

なお次の会社もそこそこ大きくて内定はしてますが正確にはまだ契約書を交わしてないので決まってませんのでセキュリティかネットワークインフラについての労働力やR&Dを求めている人がいたらお声がけください。

ICTSC2018 の運営委員を務めました

こんにちは。takemioです。最近自分の名前の表記ブレが激しいのでどうしようかと思って悩んだ結果 https://takehaya.github.io/^(竹(たけ)|たけみお|たけはや)($|くん|ちゃん) でどうぞとかかいてしまったんですが、どうすればいいか悩んでます。いい案があればください。

さて、見出しのとおりですがICTSC2018 の運営委員を務めました。

表題の ICTSC2018 とは、正式名称を「ICTトラブルシューティングコンテスト2018」と呼びますが、学生主体の学生による学生のためのインフラ技術中心のトラブルシューティング大会です。以下トラコンと略します。決して某虎の㍁の婚活サービスではありません。

インフラ技術といっても色々ありますが、ここで指しているのは主に OSI参照モデルの L2-L7 あたりを指します。運営委員はL1もやってますが、問題としては出題されていないです。

私は今年から運営にjoinしてやってました。

なぜjoinしたのか

そもそも大会参加者になりたかったが、弊学から人を集めれそうにないって当時インターンで同期で運営だったきょんたんに相談したらリファラルされて気がついたら採用された。ありがたい・・・

一年間のフロー

5月に顔合わせ会があり、夏に一次予選がありました。そのあとはトラコン予備校と言うトラコン参加者に対して希望者がいればそちらまで出向いて講義をするという試みをしました。その後二次予選があり、3月に本戦でした。

やったこと

私がやったことは予選問題の作成と予備校の講師。また本戦問題の出題をメインにインフラの構成の手伝いとかしてました。

予選問題はパケットフィルタリングというテーマで問題を作りました。netfilter queueを使った問題や、tcpdumpの条件構文の問題。またそれらのバックエンドのBPFのバイトコードを読んでもらって挙動を理解してもらうということをしてもらいました。 詳しくは以下のリンクの解説を参照してください。

https://icttoracon.net/tech-blog/2018/08/27/ictsc2018-prep01-packet-w/

予備校では大阪と福岡を担当しました。 大阪ではパケットフィルタの解説、福岡ではdockerの解説をしました。嬉しいことに福岡で講義をした学生たちは後述する本戦で入賞したので少しでもここに役立っていたのかなとか、、、勝手にわいが育てたと思ってますw(すいません。本当におめでとうございます!)

そして本戦ではSRv6の問題を作成しました。この問題はSRv6でサービスチェインさせるもので少し難しい問題を作りました(半分趣味) 詳しくは以下のリンクの解説を参照してください。

http://icttoracon.net/tech-blog/2019/03/21/ictsc2018-f-12/

他にもバックボーンの検討段階を手伝ったりDNS立てたりいろいろしてましたが、ホットステージ後半はSRv6問題の構築に手間取っていてあまり手伝えていませんでした。つらい・・・

さいごに

まずは本大会のスポンサー様と参加者各位に御礼申し上げます。このような運びで無事大会が(本戦一日目午前中が大変だったりしたが)終わったのは各位のおかげだと思います。そして入賞者の皆さんおめでとうございます!

さて来年度もより一層面白い問題を作ったりしますのでよろしくおねがいします。

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

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

CodeBlueTokyo2018とAVTokyo2018に参加した

CodeBlueTokyo2018とAVTokyo2018に参加してきました。 これはちょっとしたメモ代わりの記事です

CODE BLUE

情報セキュリティの国際会議であるCODE BLUEに参加してきました.

codeblue.jp

昨年度CODE BLUEには学生スタッフとして応募させていただきましたが落ちてしまい、今回は無事受かることが出来ました。 さて、今回のCODE BLUEはday1はフリーでカンファレンス観覧とCTF、day2は学生スタッフ業務に追われてドタバタとしておりました.

day1に関しては, キーノートからiosへの脆弱性に対する話を聞いたあと残りは無限にCTFに時間を溶かしてました。つらい・・・

まぁ勉強になったということが多いのでどこにどうみたいな話はおいておくとして、line CTFではラッキーなことに得点したの(?)で特典のワンちゃんが書いてるTシャツを得ました。:star:

f:id:taketarou2:20181107054126j:plain

AVTOKYO

CODE BLUEの翌日はAVTOKYOに参加しました. 昨年の会場は六本木でしたが、今年は例年通り渋谷に。細かい話は去年の僕に任せます。

takeio.hatenablog.com

僕は何してたかというと、ききエナジードリンクとCTFのリベンジをしてました。これも概要先程の記事に書いてるのですが、昨年は12位でした。

しかしこんかいはなんと3位。やったぜ!!!有名なyu yagihashiやうめちーに一足先に得点されてしまいましたが、なんとか入賞できてラッキーでした。 f:id:taketarou2:20181107054154j:plain

まとめ

とりあえずレアそうなエナドリが大量に手に入った

情報科学若手の会に参加した

これは何

情報科学若手の会に参加したと言う話です.

wakate.org

情報科学若手の会とは

情報科学若手の会は次の3つを目的とした、情報科学に携わる学生、若手研究者、社会人のディスカッションと交流の会です。
- 活発な討論の中から若手研究者ならではの斬新な発想を生み出し、情報科学・情報工学の新しい可能性を考え、将来の夢を語り合う。
- 専門分野だけでなく情報科学のさまざまな分野で活躍する若手どうしの討論を通して視野を広げる。
- 専門分野にこだわらず、情報科学の全般に渡る若手研究者の横の繋がりを広げる。

1968年7月から続く由緒正しきイベントで、2017年に50回目の開催を迎えます。 学会や研究会を基本的なスタンスとしており、情報科学に関する幅広い話題に関する議論を通して新たな発想が生まれることを目指して、次のコンセプトを掲げて運営しています。

とても良い会です!!まぁ学生の財布から参加費+旅費を出すのは辛いのですが,幾らか補助も出ます.

サイコー!来年はスポンサーを増やして学生発表者は全額無料キャンペーンとかして欲しい(違

僕がこれを知ったのは僕の高校の先輩が幹事をやっていたと言う経緯があり,高校の時から誘われてたイベントで去年初参加で今年も参加という形でした.

何をした

「Segment Routingの利用例と未来」という発表をして来ました. speakerdeck.com

なんでSRについて話したのかというと今年はネットワークについて頑張ってみるかなというロールを程よくしていて,それのアウトプットということで何かしたいなと言うのがきっかけでした.

僕はInteropTokyoのSTMを今年度やらせていただいたのですがそこで見たSRの相互接続実証にはとても未来を感じたのでこれは若手らしいのでは!?!?!?と言う安直な理由で決定したものでした.

もともと興味があってやっていたのですが最新の日本語資料が少ないものなので少しでもoutputが意味がある形になれば幸いですね.

ブログ書き忘れてたのですが...ちなみに去年は様々な型推論ということでRegion inferやHMやDatabese Recordとか言語処理系にまつわるサーベイをナイトセッションというLTぐらいのサイズのところでして来ました.まる.

感想

今年から会場が変わり,熱海の山喜旅館から軽井沢の軽井沢研修所というところになりました. 場所としては大変大変交通の便が悪いのですが,中身は山喜は布団が湿ってたり辛い時があるのでそれがないというところを見るとどっちも五分五分でした.(ほんまか?)ですが幹事の人たちの努力を新会場といい素晴らしい奮闘や良いディスカッションができて最高でした.次の機会があったら意味論の話をしたいですね.... 最後に写真で振り返る三連休をします f:id:taketarou2:20181012044027j:plain 新幹線が最高に辛い情報です. f:id:taketarou2:20181012044648p:plain 敗北を知りたい(敗北した)

f:id:taketarou2:20181012044759j:plain 軽井沢自体は自然がやはり多く花も咲いていて最高.

f:id:taketarou2:20181012044840j:plain 交流イベントコラボ情報です.

f:id:taketarou2:20181012044917j:plain 若手なので古いものが大好きです.これはモトローラとintel8086.すぎょい

f:id:taketarou2:20181012045055j:plain 優勝した.最の高ですよ.

f:id:taketarou2:20181012045144j:plain f:id:taketarou2:20181012045153j:plain 信州蕎麦を食べて来た.

f:id:taketarou2:20181012045231j:plain 噂の遠目だとしなの鉄道のロゴがpythonに見える問題の画像です

f:id:taketarou2:20181012045327j:plain 温泉で優勝した

f:id:taketarou2:20181012045346j:plain酒で優勝した (1日ぶり二度目)

まとめ

情報科学若手の会に参加し,そこでは発表をしました.なお反省点はスライドは当日の3時に作り上げないことです.みなさんぜひ参加してみてください.

追記(10/12)

あの「Segment Routingの利用例と未来」発表後かなりの反響があり,一部のところから良い資料ですね!とお褒めのお言葉をいただくようになりました. 最終的にはなんと紹介させていただいたLine株式会社様やIETFでの仕様策定をしているSRv6の中の人やp4SRv6の中の人にまで伝わってしまったというのがありめっちゃ驚いてます笑

それとただこの場を借りて訂正で,公式実装と言っていましたが確かにあのドラフトでは参照されていてリンクも存在するのですが,あくまで公式ではないようでした.訂正いたします.

こういうこともあるのでぜひ若手各位は若手の会で話してみましょう!

git challengeに参加しました

こんばんは.takemioIOです!先日 git challengeというものに参加したのでそのレポートをしますー

Git Challengeとは?

大元が消えてたのでNAVERまとめを参照します.

matome.naver.jp

平たく言えばこのコンテストは

gitリポジトリに設けた難題をチームワークで解決していく競技型技術イベント

ということです.これは抽選で選ばれた人のみが参加できるイベントでした.

参加以前

  • このイベントは前々から知っていたのですがGit力に自信がないので放置してた.
  • この夏色々あって結局インターンとか行かないでしまったので企業色があるイベントにいきたいなぁーと思って行くことにした.
  • 参加する前には,応募要項として,過去の開発経験とか聞かれたはずだが完全に忘れた.結構適当に書いてそもそも応募と言いながら抽選なんてないだろと思っていた(すんません)
  • 抽選に見事に当たり,参加が確定する.ツイッター見てたら落ちた人もいると聞いてなんかすいませんねとなった記憶がある.

当日

  • 遅刻した
    • というのも開始が11時(アイスブレイキング)からなのですがまぁ仙台から来てるのでちょっと辛いわけですよ.参加者で一番遠い場所から来たわけですよ.事実上の宇宙よりも遠い場所です

  • mixiさんに初めて行った.ビルデカイ.
  • 事前勉強などは全くしてない
  • インターネッツ有名人がいることを聞いた
  • 隣の人が知り合いの知り合いだった

競技前

  • 相方氏(@_fumihumi)とコミュニケーションが取れずどっちもpushをしただろと思い込む回(実はフラグで後述話に繋がる)

  • ごはんが美味しかった.

競技開始!

  • 難易度が★ ~ ★×5 まであり,チーム戦だったのでとりあえずウォームアップがてら星1の問題から解いていった
  • 方針としてはhackmdにメモを取りながら粘っても無理そうだったらこうやったけど無理だったみたいなアサインをしてお互いにお願いする駆動をしてた.
  • 結構協力プレイしてた気がする.
  • こんなことできるんだ!みたいな気付きが多い問題があり知見になることが多かった.
  • master に push -f をしながら

競技終了!

17つ星を集めて結果は3位.もう30分あれば・・・星4つが解ければ・・・・ だいたい@_fumihumi氏と半分づつぐらい解いてたのでまぁチームとしてはバランスがよかった.

総評中の私

これはどういうことかというと初めのチュートリアルでやってることを考えずに適当にマージしたから死んだという話があり,それを潰してれば2位でした・・・(前述した通りフラグだった)

やはり感想としては結構言われてあ〜〜〜ってなってたり,過去にやったことあるはそれ(白目)だったり. 以下過去にやったファイルを使わないでcommit したという話.

takeio.hatenablog.com

あと30分あれば・・・みたいなのがあったり.正直1位を狙える位置にいたので頑張っていきたかった....精進

懇親会

  • ごはんが美味しかった (2回目)
  • 同率三位のチームが実はあって,そのチームの人たちと仲良くなれて嬉しかった.
  • LTでGSoCの話が出て来て来年は応募するぞと思った.今年某Cookpadのko1さんと面談までして推してあげるよと言われたのに大学の方でやれなくなってしまったのでリベンジするぞ!!!

まとめ

  • 一応三位になった!
  • gitそれなりに知識あったと思い込んでいた僕が恥ずかしい.勉強します!
  • 後日アルバイト先でPRのサイズデカイんだけどってキレられた(辛い)
  • 参加者の皆さん!運営の皆さん!皆さんありがとうございました💪 git力もっと上げます✍️✍️

SecHack365を修了しました。

SecHack365を修了しました。

今年度はSecHack365という通年hackathonに参加してきました。 去年の5月初旬ごろに参加決定の連絡が入り、先日3/24に成果発表会&修了式だったので、1年を通してどんな活動をしてきたかを振り返りたいと思います。
きっと来年度以降参加する人になればいいなぁというのと自分に対しての戒めてきなのもある。ちょっと後半辛めです。すいません。

SecHackとは

SecHack365 は高度な技術力を持つセキュリティ研究者や開発者を育成することで、我が国のセキュリティ技術力、産業競争力を高めることを目的としています。

年間プログラムの中ではhackathon、遠隔研究・開発実習、コンテスト演習、座学講座、全国の一流研究者・技術者等との交流、先端企業の見学等のイベントを通じて、各参加者の志望に沿った能力開発を行います。

訂正4/9 すいません.自分が委員の方から聞いた言葉の解釈間違いのようでした。完全に確認不足です.:bow: あくまでセキュリティに関連していることを目指さなくてはいけないようです ですがセキュリティというのは多岐にわたるので基本的にはやりたいことがやれるはずです!

もう少し具体的に話させていただくと.... セキュリティキャンプのような座学・実習形式ではなく、あくまで開発がメインになります。

参加者の多くは最終的にバイナリ解析や悪性web対策と言ったセキュリティ関連の物を開発していましたが、全員が思いっきりセキュリティというとそうでもなく、割と自由に作りたいものを作れるのびのびした環境です。

よくあるハッカソンと何が違うのかというと、

  1. 1年間を通して開発できる
  2. 実装や発表に関して困ったことがあればプロに相談できる。
  3. NICT保有するデータを活用できる
  4. ほんのり成果が求められる

と言った感じだと思います。 3に関しては別に使わなくても良いですし、4はメンター制度があるので相談すればそれなりに身の丈になったものを一緒に考えてくれるはずです。

今年度の参加者と応募について

全国から358件の応募があり、NICTの審査によって47名(うち未成年者17名)の若手が選抜された。
https://media.dglab.com/2018/01/05-sechack365-01/ より

結構な倍率ですねぇ。小学生から社会人まで参加していて、20〜22歳あたりの参加者が一番多かったと存じます。

実はなのですが唯一僕は参加者の中で学部一年相当で同じ学年の人が居なかったのでそれが残念でした。正直お陰で自分の実力値が他の人と図る機会がなかったり交流で同輩がいなかったりが寂しかったなぁと思いました。残念すぎるし、そのくせ私のことをみんな修士一年の間違えとか呼び始めるのまちがってるのでは?

ちなみに女性比率は今回は割りと一般的な情報系イベント並かなぁと感じました。

たぶんなんですが、割と技術ではあまり人を見てない気がします。自分はあまりできる側ではなかったでまぁラッキーぐらいのお気持ちでした。

ちなみにですが学生は参加費無料です。オフラインハッカソンでの宿泊費、交通費全て支給していただけます。やったぜ!

応募前の自分ときっかけ

応募前はまぁ色々多趣味でコードを書いていてセキュリティはそんな強くないけど適当に用語ぐらいはわかるけど、エクスプロイトかけるかと言われると困りますねぇみたいな感じ。むしろこの時のマイブームはコンパイラでした。

実は締め切りギリギリの12時間前とかに見つけて適当に出したって感じです。申し訳ないのですがホントそんな感じ。

選考課題については口外してはいけないことになっているので詳しくは言えませんが、深夜テンションだろうが強い気持ちを書いていけば自ずと受かるような気がします。

何をやっていたのか

私はチームでIoTデバイス管理システムの開発をしていて、それのプロダクトオーナー的なこと。つまりリーダーぽいことをしていました。 技術的な文脈で言うと最終的にはアーキテクチャの提案と設計、パケットキャプチャと配信、FWなど基盤部分の担当をメインでしていました。 https://github.com/Team-IoTSystem/Vortoj

1年間のイベントについて

ホント一年何も書かないでいたので書いていこうと思います。 これはもしかしたら呼んでるあなたを不快にする可能性があるので、もしものときはブラウザバックしてどうぞ。てかブラウザバックって今の人知ってるのかなぁ。

5月<東京・NICT見学会、説明会>

受かってしまったあとはマジか~って全国から来る人達にビビりまくりながら小金井にGo.

印象にあるのがHarekazeにいる@ak1t0くんにあれ?@takemioIOさんですか?って聞かれてコレオフ会になってるやんけってなったのは良い記憶。あとは@felme_neinさんとひたすら自然言語処理関連の技術の話をしていた記憶がある。

というかまわりが割りと知り合い同士らしいなか地方民はマジで浮くのであれちょっとつらかったですが強い気持ちで行きましょう。

6月<東京・蒲田>

富士通のなんかあれなところでスタート。

二回目になると流石に慣れてきて、@りねあくんとラーメンを食べてふつーに仲良く遅刻してきた記憶がある。すいません手遅れてます。いや手遅れたラーメンはうまい。 f:id:taketarou2:20180408064046j:plain

ここまでは強い気持ちでリージョン推論を用いた僕が考えた最強のコンパイラ書いてやるぞとか思っていたんですが色んな人の話を聞く中であーって思うようになって、その中の一つの選択肢として組み込みもいいかなぁということでIoTやネットワークも選択肢になった。

そんなこんなで一人ブレインストーミングをしながらマッピングをしていてぼっち検討をココでもしていたような気がします。(てか班の人がみんな居なくなるんだもん)

というわけでなんだかんだでチームの外形が決まってきました。

8月<福岡回>

前半はLINE FUKUOKAにお邪魔させていただいて、愛甲さんに講演していただいたり、各自考えて来たアイディアを発表したり、「縁日」と称したトレーナーの方によるハンズオンが開催されたりと盛りだくさんでした。後半は海が綺麗なホテルでハッカソンを行いました。これが最高のハッカソンですよ f:id:taketarou2:20180408064120j:plain が、弊チームは人はいるけど進み具合も担当もバラバラで結局可視化の自分が福岡に入る前にフィジビリ実装したものしか発表ができなかったという話があります。マジでつらい。 しかしこれがケツに火がついたのかチームや開発テーマも固まって来て、ここからが本番といった感じです。

10月<北海道回>

チーム開発は遠隔で行いながらなのですがやはり突然の音信不通の多発などがいっぱいでしんどかったです。そんな中メンターさんと5時間ミーティング&討論するとか相当な追い込まれがありました。(コレ2,3回ぐらいあった)突然の進捗どうですかがあってツラい。

f:id:taketarou2:20180408064211j:plain これは周りが迷走してる図です

大体の感想としては飯がうまい。って回でした.

内情をちょっとくわしく話すと

チーム開発は炎上してるし、みんなやはり突然の音信不通の多発などがいっぱいで、工数見積をしてくれといったのにみんなしないしてかガチガチに開発手法入れなくても良いんじゃないとかメンターが言ったせいで崩れた要因の一つだと思ってるのでそこはモニョッてる、僕の手には負えないので辛すぎるんでメンターさんにPMしてほしい言ったけど「そこは自分たちでやるべきだよ(意訳)」って言われるしほんとにつれぇってお気持ちです。 (申し訳ないのですが承知しましたが影響力がある方が開発内容に良かれと思ってだろうと口出すならば一緒に手も動かしてほしいみたいなことを議論していたりしました。)

この頃はパケット配信のAPIを作ってRest部分を用意して発表に組み込みました。

ちなみにその他として石狩サーバーも見てきました! f:id:taketarou2:20180408064247j:plain

12月<大阪回>

やはりチーム開発は炎上してる(進捗的に) この頃私はRest以外にもストリーミングAPIを用意して置くということ、@abas_onの位置推定を組み込むということをしてました。

ここでは最終発表に向けて私は音頭を取りながら2月までのワークフローを立てていった。全体のチームの人達が動くことを書き出せたのでまぁ良かった。

北海道以降では@ancoさんがinstallerを作りながらブリッジ設定など諸々を頑張っていた。ありがてぇ。。。

2月<沖縄回>

f:id:taketarou2:20180408064400j:plain やはりチーム開発は炎上してる(進捗的にも、人的にも)

自分はFWのフィジビリ実装を行い、ancoさんが実機検証をやってみたいなことを基盤サイドでやっていたことまで落とし込んだ。他の人はちょっと覚えてないが

内輪の成果発表会だったのですが発表前夜、とても背の高いトレーナーの方に手厳しいアドバイスを頂き、夜遅くまで(AM1:00すぎ)発表練習とスライドの修正を繰り返していました。うまく伝わったか不安でしたが、あとからトレーナーからの評価を聞き、言いたい事は伝わっていたのでまぁよかったなぁーってなりました。

アメリカにいった

takeio.hatenablog.com

こちらを参照してください。

3月<最終発表>

やはりチーム開発は炎上してる(進捗的にも、人的にも) 多くは語りませんが、せめて早めにできないときは連絡をしましょう。とても他の人が無駄な消耗をします。結局できないとか普通に信じらんないし(10月頃にデータ形式の相談をしたのに結局ほしいパターンではないとか言うのは流石に駄目ですよ!)優しいから怒らないだけです。

で、中身としては対外向けの成果発表会でした。デモをするにあたり、チームメンバーがそれぞれ作成したものを結合させる作業が必要でしたが、発表直前になってAPIを叩いてアプリが組み込むことが結局できなかったり、ラズパイが処理落ち頻発したりして大変でした。当日もネットワーク関係でトラブルがあり、あまりうまくいかずに厳しいなぁとなりました。

本番不具合が起こった際でもイメージを見せられるようにように準備はしていたというかそれを覚悟していていたので対応はできたのが救いでした。 f:id:taketarou2:20180408064441j:plain

まとめとお気持ち

結構楽しませてもらったなぁと思います。なんだかんだ言いましたがココまでこれたのはチームとメンターと委員の方々のおかげだと思っております。本当に感謝です。いろんなことを学ばせていただいたなぁと思います。

ですが、僕は後悔があってチームの人の持っている知識バックエンドを活かせませんでした。バックエンドに合わせた構成に無理矢理でも落とすべきなのかとかは未だに苦悩です。今回は本人のやりたい希望に合わせて議論上でこうしましょうとなった(なお僕は希望通りではない)のですが、しかし結局それが幸せなのかというとわからないし、そもそもチームの人のレベル差、得意不得意、予定の把握にもっと良いソリューションがあったのでは?とか思う。そもそも無駄な忖度をしたせいでやりたいことが出来ないとかがあったしチームでやるなら誰かが情に流されずに僕も含めて使えないor動けないコマはアサインさせたところからガンガン変えていったり、なんならMVPを活かすためならばそのやろうとしてることごと切り捨てる必要があるなぁと思いました。

正直言ってイマ何言っても仕方ないのでアレですが、メンターの方とうまくマッチングしてないと感じたら新しいメンターの方新たに相談するべきだし、人数が多すぎるときは誰かがリーダーとしてPO or PMになりきる必要があるけどそれはちゃんと責任分界を決めてやらないとリーダーがコードを書いたりすることは出来ないし、権限の移譲を心がけてうまくやらないと行けない。ある種の気づきが多くあったと思います。 そういう意味では後半は最適化されてきたせいでオンサイト開催をうまくスプリントとして自然に使うことが出来たなぁと思います。

割と悔いが残る形で終わりましたが、逆に悔いなく出来た部分もあります。それもまぁ充実なのかなと思うことしました。初年度なので手探りなので結構辛かったですね。 ですが来年度はこの辛さがフィードバックされまくるはずなので、コース制になったのでそんなことなく楽しめるはずです。

ぜひ皆さんも最高の体験をしに応募しましょう!