セキュリティ・ミニキャンプ in 北海道 2017(札幌)に行ってきた

今年もミニキャンプ北海道に行ってきたので,その時の様子を書いていく.
 
私がミニキャンプ北海道に参加するのは2015年の一般講座から数えると3年目となる.
本来の定員は20名であるが,今回の参加者は24名となっている.昨年も参加している私は選考があれば真っ先に落とされるはずなので,ふるい落とされた人はいなかったとみていいだろう.
全国大会の倍率は約4倍という事を考えると道民(+青森県民?)にとってはチャンスであるとも言える.しかし,現状では応募人数も増えているわけではなく,むしろ昨年の参加人数は25名であったため参加人数は1人減っている.
そのため,今回の記事はこれから参加しようと考えてる人の役に立つ記事を目指したい.
 

応募

セキュリティキャンプに参加するためには応募用紙を書く必要がある.応募用紙には個人情報の他にいくつかの質問事項があり,その答えをもとに参加者の選考が行われる.なお,2017年度の質問事項は以下の3つであった.
 
1.あなたがミニキャンプに応募された動機について教えてください。また、この講義で学んだことを何に役立てたいかを教えてください。
2.IDとパスワードでのログインをしたことがありますか?あるとしたらIDをいくつ持っていますか?
3.これまでソフトウェアデバッガや、リバースエンジニアリング用の解析ツールなどを使用したことがありますか。
 
質問事項で最も重視されるポイントは知識・技能ではなく熱意だとされている.そのため,セキュリティに詳しくない人でも(詳しくないからこそ)参加できるようになっているらしい.
なお,応募期間は十分に長くとられているが,私のような人間だと最初に応募用紙を見て締切当日に書き始めるため,十分余裕を持って書き始めることをおすすめする.本当に.
選考に通ると誓約書が添付された合格通知メールが届き,サイボウズLiveのグループに招待される.サイボウズLiveあと1年で終了らしいけど,どうなるんでしょうね.
 

経路確認

ミニキャンプ北海道では交通費支援が出ることが多い.今年は函館から札幌までの交通費全額約9,000円を支援していただいた.草の根サイバーセキュリティ運動全国連絡会様ありがとうございます.
ちなみに今回は函館から札幌まで高速バスを使用した.私の場合は翌月にTOEICで札幌に帰省するため慣れておこうという目的があったが,そのような事情がなければJRか飛行機を使ったほうがよい.JRであれば交通費支援がある上に,6時間も首や腰に負担をかけることもない.
 

事前準備

演習内容によっては事前課題を課されることがある.これはあらかじめソフトウェアをインストールすることや,資料の理解が多い.今年はVirtualBoxのインストールのみであった.
余談ではあるが,実際に手を動かすハンズオン形式の演習では環境構築が一番難しい.当日に不具合が発生すると,最悪の場合演習を十分に楽しめない事態となるので,事前の準備は大事.(実際には運営の予備機でなんとかなることが多いが,数が限られている.)ちなみに私はUEFIの仮想化支援機能をEnabledにし忘れていて,慌てて設定しました.
 

当日

場所は北海道大学情報基盤センター南館で北12条駅の近く.慣れていない人は迷うので注意.私は今年も迷った.今年のような小雨ならともかく,昨年のような豪雪の場合は本当につらいので,ルート確認は大事.
 


 
会場の席は最初に自由に選ぶ形式だったので,適当に座って適当に雑談していた.
雑談といえば,今回は苫小牧高専生の数が多かった.現役の苫小牧高専生8名に,引率(?)のshigyo先生が加わり,なかなかの大所帯となっていた.自分が現役だった頃はここまで人がいなかったので,母校に良い文化が生まれたようで良かった.勉強会は最初参加するときには抵抗があるものだけど,こういう感じで積極的に沼に引きずり込んでほしい.
ちなみにこの時shigyo先生に言われた「ポメくん太った?」はミニキャンプで一番印象に残った言葉です.
 

オープニング

スポンサーの方々への圧倒的感謝…!他には倫理的なお話や,ミニキャンプに参加する心構え,年収の話など.心構えの「動かす!考える!背中見る!」は本当に大事で,これを継続することで経験値が増えると思う.
 


 

ID連携と認証基礎


最初はIDとパスワードに対する攻撃手法の振り返りから始まり,今後は「IDとパスワード」が続かないという予想の説明があった.その後,そもそもパスワードとは何か,ID連携の概要についての説明が続き,演習を行った.演習ではLINEのDeveloperConsoleからアクセストークンを取得し,GoogleのOAuth 2.0 PlaygroundからLINEのプロフィールの取得を行った.最後に,ID(identity,identifierなど)についての定義的な説明があり,入試システムに対して認証の観点から重要な部分を挙げるというディスカッションを行った.
 

夕食

食事代はサポーターズのみなさまの支援を受けました.ありがとうございます.食事は北大の中央食堂で食べる.
ちなみに私は豚丼でした.そろそろ私が豚になりそう.
 

セキュリティ技術と倫理


食事のあとは道警の佐々木さんによる『セキュリティ技術と倫理』.
佐々木さんの講演はスライドも面白く,食事の後だったが笑いの要素が多かったため起きていられた.本当に助かった.
講義内容としては最初に不正アクセス禁止法とウイルス作成罪との概要,事例紹介(1,2,3,4)があった.事例では若者のサイバー犯罪に触れ,犯罪を犯してしまう心理について○ターウォーズの例を交えながら考察した.その後,犯罪を犯すことを防ぐため,自身でルールを定めることが重要であることが説明された.最後に,そのルールについてディスカッションを行った.
 

移動とホテル

ホテルというか,研修センターであった.
4人部屋であり,かの蒼冥監獄に少し似ていた.
移動は同じ部屋のメンバーで,タクシーを使っての移動.
昨年は近くのホテルで個室が用意されていたが,個人的には4人部屋のほうが知らない人話す機会も増えるし良いのではないかと感じた.
 

バイナリ解析の基礎


配布されたVMイメージを使って,バイナリ解析を行うというもの.最初にバイナリ解析の説明や機械語の読み方の説明があり,その後演習を行った.演習ではUbuntu上で実行可能ファイルをIDAを使用して解析した.私はバイナリ解析を行うのは初めてだったが,パズルのようで面白いと感じた.
 

昼食

1日目の夕食と同じく中央食堂で食べた.
牛とろ丼は美味しかった.そろそろ私が牛になりそう.
 

AVRマイコンで作るBadUSB工作(IoT演習)


最初にBadUSBという脆弱性の説明があり,その後BadUSBをつくる演習を行った.
演習ではAVRマイコンをPS/2<->USB変換コネクタのPS/2側に接続し,AVRマイコンでPS/2のキーボードの信号を発生させることにより,勝手にキー入力が行われることを確認する.キー入力はAVRマイコンに書き込むプログラム中の配列で指定することができ,各自で面白そうなBadUSBを作成した.
としては,slコマンドを実行するものや,ショートカットキーで画面の向きを何度も変えるもの,シャットダウンを行うものがあった.
ちなみに,私はwin+rでファイル名を指定して実行を開き,”chrome twitter.com”と実行.するとtwitterが開くのでnで新しいツイートの画面を開き,適当な文字列を打ち込み,最後にctrl+Enterでツイートを投稿するというものを作った.犯罪予告とかやったら問題になりそうだなーとか思いながら作ってた.
演習で使った材料はすべて持ち帰りOKで,終わったあとも各自で演習をおこなうことができる.
 

クロージング

最後はenPiTのお話とか記念撮影とかして終了
 

終わった後

またしても6時間高速バスに揺られ函館へ.その後2日で2通レポートを書き,ある程度落ち着いたところでこの記事を書いている.書きつつ,どのようにミニキャンプの復習をしようかと考えている.こういうのは参加するだけでなく,継続することが大事なので,継続していきたいですね.
あとは,そろそろ周りを巻き込んでなにかやりたいですね.研究室の配属調査とか見てると意外とセキュリティに興味のある人多そうだし,できるだけハードウェアに近いレベルまで引きずり込みたい.