セキュリティキャンプ2018に参加した話

8/14~8/18の5日間に渡ってIPAの主催するセキュリティキャンプに参加してきました!

セキュリティキャンプとは何だ!?という人は以下のリンクを参照して下さい。

www.ipa.go.jp

講義内容については諸事情であまり詳しく書いてませんが日記みたいな感じで書いていきます。

# 1日目

新宿から電車に乗ってちょうど受付が始まる直前くらいに会場に着きました。

会場がパノプティコンみたいな構造になってるということをどこからか聞いていたので、そこも楽しみにしていたのですが、予想以上のパノプティコン具合でとても良かったです。

そのため、キャンプ中にあまり写真を撮ったりはしなかったのですが、建物の写真はたくさん撮りました。

一階から撮った会場の図f:id:tetorat:20180822100956j:plain

この日はお昼を食べた後に基礎講義を3つ受けました。

グループワークとして「失敗から学ぼうとする時に、それを阻害してしまう要因を考え、その要因を阻害するにはどうしたらいいか」について話し合ったり、OSC(オープソースカンファレンス)にたくさん行ってる人の話を聞いたり、セキュリティと法律を絡めた話を聞いたりしました。

基礎講義が終わったら夕食を食べて、そこからはLT大会とグループワークがありました。

LT大会では、1つの部屋で4つくらいのブースに分かれて参加者やチューター、講師の方々が好きなテーマでLTしていました。
自分が聞いているブース外からもLTの発表している内容が聞こえたので、同時にいろんなお話が聞けて楽しかったです。

グループワークではあまり話し合いみたいなことはしないで、講師や企業の方と名刺交換したり、仕事についてのお話を伺ったりしました。 スパコンの話とかインターンについての話を聞いたり、あとは自分のスマホを見せたら今まで知らなかった隠し機能(?)的なものを教えてもらったりしてとても楽しかったです。

# 2日目

この日は一日中『制御システムのセキュリティとShinoBOTによる攻防演習』という講義を受けていました。

ArduinoやRaspberryPiを使った工場模擬プラントなるものを使い、その通信プロトコルやロボットアームを動かす時のトランザクションの仕組みを解析したりしました。
そしてその後は、解析した情報を元にロボットアームを遠隔操作するということもしました。

ロボットアームの図(周りがごちゃごちゃしてますが...)f:id:tetorat:20180822112805j:plain

この他にもCTF大会をしたり、ShinoBOTを使って人のパソコンのコンソールを乗っとったりして遊びました。楽しかったです。

ベッドがふかふかで気持ちよかったのと疲れていたのでぐっすり眠れました。

# 3日目

  • 午前 『車載LANの仕組みとメッセージの取得・解析』

車載ランの通信プロトコルの1つであるCANというネットワークから、いろんなパケットをキャプチャして遊びました。

デモとして、講師の方がヤフオクで入札したという実車のメータに対して、スピードメータを操作したりウインカーが左に表示されたらすぐ右に切り替えてしまうスクリプトを実行したりしていたのが面白かったです。

  • 午後 『GPSを騙してみよう』

座学でGPS信号の仕組みや、ジャミングとかスプーフィングとかに対するセキュリティ対策についてのお話を伺いました。

その後は、ソフトウェア無線機を使ってGPS情報を操作して、勝手に現在地を富士山山頂や東京湾上として地図にプロットして遊びました。

衛星と、衛星からの信号の受信機とで時刻の誤差を補正する方法や、衛星から受信機の位置を補足する方法などは聞いていて面白いなぁと思っていましたが、いずれも難しい数式で記述されている部分があって †完全に理解した† とはなりませんでした。
でも、GPSについて少しは知ることができました。

上の方から見た会場の様子ですf:id:tetorat:20180822121603j:plain

# 4日目

お札などが自動販売機やATM内でどう識別されているのかや、画像認識には何でもかんでもディープラーニングを使えばいいわけではないというお話を伺いました。
また、どうやったら画像を高精度で認識できるか、実際にOpenCVを用いて演習をしました。

その過程で、いろんな活性化関数があることや画像をぼかしたりする方法にも種類があることを知りました。

演習ではC++を使ったのですが、あまり馴染みがなかったのでとても苦労しました...

  • 午後 『サーバーレス時代のシステム設計ワークショップ』

FaaSとして、環境が整いつつあるサーバレスアーキテクチャについてのお話を伺いました。

GoogleAWSなどがサーバレスのサービスをリリースしていますが、どういうものなのか正直よくわかっていなかったので興味本位でこの講義を受けてみました。

サーバレスアーキテクチャというのは、決してサーバを必要としないわけではありません。
極力自分で用意する機能を減らした上で、イベント駆動でクラウド上のコンポーネントを結びつけて活用していくという設計だそうです。

講義の後半では、実際にMicrosoft Azureを使ってSlackbotを作ってみるということをやってみました。
手順が示されていたというのもありますが、思ってたよりもずっと手軽に動くものが作れてしまったので、サーバレスすごい!!と感じました。

唯一写真に収めた食事(4日目の夕食)



# 5日目

  • グループワーク

セキュリティキャンプ を終えてからの抱負(?)のようなことについて考えた。

  • 講義の成果報告

各講義で5日間のなかで何をしてきたのかを報告する時間。

私は選択コースだったので、集中開発コースがどんなことをやってるのか分からなかったのですが、それぞれのコースで、物を分解したり、仕様書を読んで実装していたり、コンパイラをセルフホストしていたり...といろんなことをやっていて単純にすごい...!!となっていました。

また、選択コースでも自分が受けていない講義はたくさんあって、そういう講義についての情報を聞くと、自分も受けてみたかったなと思うようなものがたくさんありました。

# 感想

  • 名刺は100枚くらい用意してだいたい半分余ったけど持っていってよかった。
  • セキュキャンTシャツ & パーカーがもらえたのがよかった。
  • 一生Twitter上で見ているだけだろうなと思ってた人たちとリアルで話せたのがよかった。
  • 美味しいご飯が毎食食べれてよかった。
  • 自分の知らないことについての知識を色々と教えてもらえてよかった。
  • 企業の方と一対一で話をすることができたのがよかった。



他にも色々ありますが、書くとキリがなさそうなのでこれで終わります。

拙い文章ですが、読んでくれてありがとうございました。🐜