SecHack365 を修了しました

SecHack365 とは

SecHack365 は国立研究開発法人情報通信 (NICT) が主催する若手セキュリティイノベーター育成プログラムです.詳しくは公式サイト (https://sechack365.nict.go.jp) をご覧ください.主な特徴としては,
  • 1 年間の長期ハッカソンである
  • 全国各地で数回の集合回がある (学生は交通費と宿泊費の負担なし)
  • NICT の研究者やセキュリティの専門家からの指導を受けられる
  • NICTER で観測されたダークネットのデータを利用することができる
などがあります.

自己紹介

応募当時,香川高専の情報工学科を卒業し,香川高専の専攻科電子情報通信工学専攻に入学したころでした (大学で言えば,B2 から B3 への進級).自分の所属している研究室は自然言語処理が専門で,対話システムや情報検索に関する研究を行っており,自分も言い間違いに関する研究を進めていました.

SecHack365 に応募したきっかけ

もともとセキュリティやネットワークなどの分野に興味があり,近くで開催されるセキュリティ・ミニキャンプにも参加していました (香川2016,徳島2018 等).香川高専にはセキュリティ分野に詳しい教員が少なく,NICT の研究者とセキュリティ分野の専門家 (JPCERT や セキュリティ関係の会社の方) から直接指導して頂けること,マルウェアやダークネットのデータを使うことのできる “NONSTOP” が用意されていることが魅力に感じ応募を決めました.

応募内容等

DDoS 攻撃に関する内容で応募しました.理由としては,高専 4 年のとき,大規模な DDoS 攻撃が発生し,キャンパスのネットワークがセキュリティ強化のため学外からのアクセスが著しく制限されるようになったからです.また,キャンパス内で使っていた自分のサーバにいたずらで過剰なアクセスを受けることがあり,DoS/DDoS に関してかなりネガティブなイメージを持っていたため,何とか解決できなかと思い,DDoS の検知や緩和できる家庭用ルータに組み込むシステムを開発する,という内容で応募しました.自分は表現駆動コースを選択したのですが,「いままでの開発や活動について」尋ねる内容が多かったです.幸い,高専プロコンや OSC に参加したり,研究室のお手伝いて缶サットの開発に携わったりと活動を行っていたので,書くことには困りませんでした.Twitter でもコース選択に関して話題になっていましたが,自分が書きやすいコースを選択する,というのはいい選択だと思います.トレーナーの求めるトレーニー像が課題に反映されている気がするので,提示された課題に書くことがあるという事はその部分に関して他の人に負けない部分がある,という事だと思います.

神奈川回 (神奈川県横浜市,5/18 – 5/20)

集合回についての内容は公式サイトで開催レポートとして詳細に書かれているので割愛気味です.このセクション以降の集合回についての内容は,公式サイト開催レポートの補足,個人的なプロジェクトの進捗,感想になります.また,各回のレポートを冒頭に示します.
神奈川回の開催レポート (SecHack365 公式)
初めての集合回は神奈川県でありました.
表現駆動コースは,事前に作成したスライドを使って自分のアイデアを紹介しました.また,アイデアのブラシュアップや表現の仕方についても学びました.他のトレーニーはセキュリティの分野で有名な人だったり,すでにアイデアが固まっており,開発も始めている人もいました.自分のふわふわしたアイデアで 1 年間やっていけるのか,成果が出るのか,不安になったことを覚えています.神奈川回の最後には,トレーナーの方から DDoS に関する論文や研究についてアドバイスをいただくことが出来ました.
神奈川回の終わりには,ちょっとだけ横須賀に寄りました.カレーがおいしかったです.

北海道回 (北海道札幌市,6/29 – 7/1)

北海道回の開催レポート (SecHack365 公式)
2 回目の集合回は北海道でありました.
北海道回では「くぼたつ道場」でアイデアとは何か,どうやってアイデアを膨らませるかについて学びました.また,縁日では衛藤トレーナーの「ネットワークハッキング 〜自由を手に入れよう!誰でもできるネットワークすり抜け術〜」と笠間トレーナーの「データセット活用入門」に参加しました.詳細は公式のレポートにあります.
北海道回前後には DDoS に関する知識もだいぶ身に着きました.ダークネットでは「Backscatter」と呼ばれる SYN Flood 攻撃の跳ね返りのパケットが観測されることやダークネットにおける DDoS の観測について,また,NICT が「DAEDALUS」(https://www.nict.go.jp/press/2012/06/06-1.html) という Backscatter を観測して該当組織にアラートを送るシステムを開発していることなどを知りました.北海道回の後,今後はダークネットに着目してプロジェクトを進めていくのか,DDoS 攻撃に着目してプロジェクトを進めていくのか尋ねられました.自分としては,ダークネットの研究にも興味が湧いてきていたので,できればダークネットに関連した (もちろん DDoS についても関連しているとよい) 方向でプロジェクトを進めていくことにしました.

福岡回 (福岡県福岡市,8/22 – 8/24)

福岡回の開催レポート (SecHack365 公式)
3 回目の集合回は福岡県でありました.
夏ということもあり,海での散歩が気持ちよかったです.
このころから,大体のトレーニーが方向性を固め始めます.一人 5 分程度で全員の前で発表もありました.自分は,まだアイデアが具体的に固まっておらずかなり焦っていたことを覚えています.このころは,ダークネットで観測されるパケットでマルウェアの分類が出来ればいいな…といった感じのアイデアで,まだまだ具体性に欠ける内容でした.このころには高専も夏休みに入ったので,インターンシップに行ったり (大阪へ 2 週間ほど) ダークネットと機械学習に関する論文をサーベイしたりしていました.NICT の研究員の方がが SVM を使ったダークネットトラフィックの解析を行っていたりして,サイバーセキュリティに関して (それ以外も) 幅広く研究してることや,一つの分野 (サイバーセキュリティ) に詳しいかなりの研究員がいることに驚きました.

山形回 (山形県山形市,10/12 – 10/14)

山形回の開催レポート (SecHack365 公式)
4 回目の集合回は山形県でありました.(遠かった…)
個人的な事情ですが,香川からだと非常に遠いです.移動だけで 8 時間かかりました.(つばさ号がんばれ!)
山形回では初のポスター発表がありました.自分のプロジェクトはまだまだアイデアが固まっておらず,トレーナーからも,「このパラメータをなんで使うの?」,「結局,何をどう検出したいの?」と (個人的に) つらい質問もありました. (進捗を出さない自分のせいなんですがね…)
ただ,集合回もちろん進捗もありました.
ダークネットで観測される「ボットネットのスキャン」を対象とすること,SVM 等での解析は事前にされていることを踏まえ,深層学習を用いて解析を行ってみること,が決まりある程度の方向性が見えてきました.

愛媛回 (愛媛県松山市,11/30 – 12/2)

愛媛回の開催レポート (SecHack365 公式)
5 回目の集合回は愛媛県でありました.四国内なので近いです.
個人的に愛媛回は印象に残っている回です.プロジェクトの内容もある程度固まってきて,担当のトレーナーとセキュリティ分野の学会に論文を投稿しようという話になっていました.ちょうど,愛媛回の初日が 2019年 暗号と情報セキュリティシンポジウム (SCIS2019) の締切日だったこともあり,講演申し込みするか迷っていました.最終的に,オフライン回の初日に「ダークネットにおける深層学習を用いたボットネット協調動作の解析 (Analysis of Botnet Cooperative Behavior using Deep Learning on Darknet)」という題で参加登録することになりました.トレーニーとしてのスケジュールをこなした後にホテルのロビーで登録のための情報を入力したり,アブストラクトの作成を行いました.担当して頂いた衛藤トレーナーには夜遅くまで登録を手伝っていただいて,感謝しています.
最終的に解析対象を 2 つ定め,TCP パケットから得られる情報を基に 2 ホスト間の類似度を求める「単一ホスト解析用モデル」と,複数ホスト間の類似度を求める「複数ホスト」解析用モデルを用いた解析を行うこと,また,信頼性評価のための事前実験を行うことが決まりました.
愛媛回後は冬休みや研究時間の殆どをダークネットの研究開発に費やしました.神奈川回後から Python でパケットを扱うプログラムや Linux のコマンドラインでのネットワークの設定,観測,tcpdump の扱いの練習はしていたのですが,論文の締め切りにも追われている関係で,かなり集中して実験を行うことが出来ました.(締切駆動よくない…)

沖縄回 (沖縄県沖縄市,2/1 – 2/3)

沖縄回の開催レポート (SecHack365 公式)
6 回目の集合回は沖縄県でありました.
開催レポートでも述べられている通り,沖縄回は全トレーナー・トレーニーの前での発表があります.この発表は東京である成果発表会で口頭発表をするプロジェクトの選抜も兼ねています.自分は SCIS2019 で発表した成果とスライドをベースに発表しました.思ったよりも緊張して早口になってしまい,数分時間が余ったのが残念でしたが… (SCIS2019 では規定時間より 2-3 秒早く終了し時間を使いきれたので,さらにつらい)

しかし,ほとんどのトレーナーから良い評価を頂けたことで愛媛回以降頑張ってよかったと思えました.本当にアイデアがグラグラしてると精神的によくないので…

東京回 (東京都秋葉原,3/8)

東京回 (成果発表会) の開催レポート (SecHack365 公式)
成果発表会は東京 秋葉原の AKIBA_SQUARE でありました.

最終回の東京回 (成果発表会) です.(ポスターへのリンク)
このポスターと SCIS2019 へ投稿した論文を使って成果の紹介を行いました.
参加者からも LSTM を使った理由や,詳細な実験手法についての質問があり,非常に有意義なポスター発表でした.また,来年度応募予定の方も来て質問をいただきました

まとめ

1 年間の活動と 7 回に渡る集合回を無事に終え 3/8 修了することが出来ました.アドバイスをいただいたトレーナー・トレーニー,サポートして頂いた事務局の方々,高専で協力して頂いた先生方に深く感謝します.1 年間の中で論文の調査,研究開発を進めるうえでの考え方,手法の妥当性の検討方法,発表の技術…たくさんのことを学ぶことが出来ました.また,セキュリティ分野で活動している同世代の学生・社会人の方とも交流することが出来ました.これは SecHack365 に参加しなければ得られない非常に貴重な体験で,自分の人生を変えてくれたと断言できます.この 1 年間の活動を忘れないようにして,これからもセキュリティ分野の学習,研究開発に励みたいと思います.