セキュリティ・キャンプ協議会ステアリングコミッティ企画グループです。

今年もセキュリティ・キャンプ全国大会の募集が始まりました。もう既にご応募くださった方から、まだ応募を迷っている方まで、様々な方がこの記事をご覧になられていると思います。

今回、6名の講師の方々より応募を考えている皆さんに向けてメッセージをいただきました。応募を迷っている方にとっては参考になれば、既にご応募くださった方にとってはセキュリティ・キャンプがより楽しみになっていただければ幸いです。

募集に関しての詳しい情報は、
セキュリティ・キャンプ協議会の公式ホームページ
および
IPAの公式ホームページ
をご覧ください。

坂井 弘亮(セキュリティ・キャンプ ステアリングコミッティ 講師グループ リーダー)

(※本メッセージは、昨年の選考終了時に https://www.ipa.go.jp/jinzai/camp/2020/zenkoku2020_vote.html#senkoushahappyou に掲載されたものを編集し再掲したものです)

次回の全国大会を目指す方へ、私からのアドバイスです。

まず、ホームページ上で説明されている「参加を目指す方へ」をご参照ください。
https://www.ipa.go.jp/jinzai/camp/2021/zenkoku2021_message.html
ここには応募のためにどのようなことが必要か、まとめられています。

また、今年度の募集時の課題に、もう一度取り組んで挑戦してみることも良いかと思います。
課題に取り組むこと自体が良い勉強となるでしょう。

そして勉強する際には、実際に手を動かして調べてみましょう。
本に書いてあることやインターネット上にあった説明をそのまま受け入れるのではなく、実際に手を動かして試したり作ったりしてみましょう。

深堀りして考えてみましょう。本に書いてあることやインターネット検索して出てきた情報は、本当に正しいのでしょうか?
自分で実際に見て、手を動かして試してみましたか?矛盾や納得できていない部分は残っていませんか?
実は理解が不完全なところがあったり、そこを無視したりはしていませんか?
他人に説明することができますか?疑問や質問に答えられますか?自分で作ることはできますか?
ひとつのコマンド、1行の実行結果、数行のプログラムであっても、深堀りして考えると、30ページのレポートや60分の発表くらいはすぐにできるものです。

そのうえで、その手を動かした結果を、ブログなどに書いたり、どこかで発表してみたりして、アウトプットしてみましょう。
自身がアウトプットを出すことが、情報や機会を得るための最も良い手段となるでしょう。

そしてそうした「手を動かし、深く考え、アウトプットすること」を、今から始めて、1年間続けてみましょう。
きっと来年には、課題への回答に書けることが格段に増えていることでしょう。
そうすれば今年「書くことが無い」「何を書けばいいのかわからない」と思ったとしても、来年はそれを「書きたいことがありすぎて困る」に変えることができることでしょう。

チャレンジしてみましょう。失敗したりわからなかったりするかもしれませんが、気にせずチャレンジしてみましょう。
本当の成功や理解のためには、10の失敗、100のわからないことがあるものです。
どうしてもわからなかったり飽きたりしたら、別のチャレンジをして、しばらくしたときにまたやってみましょう。時間を置くことで、新たな発見があるかもしれません。
そうしたチャレンジを、楽しみましょう。失敗することやわからないことを、楽しみましょう。

米内 貴志(Bトラック「ちいさなWebブラウザを作ってみよう」講師)

Bトラック(プロダクトセキュリティトラック)講師の米内です。この度はセキュリティ・キャンプ全国大会にご関心をお寄せいただきありがとうございます。

「セキュリティ」という言葉は多くの場合「〜のセキュリティ」という形で使われます。Webのセキュリティ、OSのセキュリティ、ネットワークのセキュリティ、といったようにです。セキュリティという概念は常に別のモノとともにあるのです。あるモノのセキュリティを考えるときには、そのモノ自体を十分に理解した上で、それに多角的な疑いの目を向けてやることになります。

全国大会の講義では、様々なモノの仕組みとそのセキュリティについて学ぶことができます。例えば今回私が担当する講義では、Web ブラウザ(ひいては Web ブラウザが支えている Web 全体)の仕組みを紐解いた上で、そのセキュリティについて考える経験を積んでいただこうと考えています。全国大会で得られる様々なモノに関する知識や経験、そしてセキュリティに関する知見は、卒業後の進路に関わらずきっと役に立つはずです。

全国大会への応募を考えていて、かつ既に「〜という技術が好きだ!」「〜を守りたいんだ!」という志向がある方は、早速それに関するトラックの応募課題に挑戦してみてください。また、そういった明確な意識がない場合であっても、尻込みする必要はありません。まずは講義の一覧を眺めながら、自分はどんなトピックにときめきを感じるのかを、自分の胸に問いかけてみるところから始めてみましょう。自分がどんなモノのセキュリティに興味があるのかが次第に見えてくるはずです。

皆様のご応募をお待ちしています!

内田 公太(Yトラック プロデューサー、「OS自作ゼミ」講師)

Yトラック(システムソフトウェア自作トラック)プロデューサーの内田です。

Yトラックでは、コンピュータシステムの根幹を成すソフトウェア群の自作を通して、システムを深く、楽しく理解します。システムソフトウェアとは、OS、それからDBなどのミドルウェアのことで、システムの縁の下の力持ちです。これらを理解することはセキュアなシステム作りに不可欠なのです。

今年のYトラックはOS、DB、分散合意プロトコルの3つのゼミを設けました。それぞれ、現代のシステムを根本から理解するのに不可欠な話題ばかりです。コンピュータはどうやって動いているのか、複数のコンピュータからなるシステムが上手く動くのはどういう仕掛けなのか、そういった深淵を、手を動かして理解するのが好きなそこのあなた! 是非応募してください!

OS自作ゼミは3人の個性豊かな講師が、皆さんのOS作りをサポートします。ゼロから独自のOSを作りたい方、自作OSでネットワーク通信をしてみたい方、自作OSで自作ブラウザを作ってみたい方、などなど、皆さんの興味に応じて可能な限りサポートいたします。

DBゼミは、DBの根幹となるトランザクションに焦点を当てます。トランザクションとは複数の処理をまとめてアトミックに実行する仕組みのことで、高性能なDBには高性能なトランザクション処理が必要です。トランザクション処理には、並列プログラミングや良いデータ構造とアルゴリズムなど、コンピュータサイエンスのエッセンスが詰まっています。

分散合意プロトコルゼミは、複数のコンピュータが協調動作する分散システムにおける主要な技術的課題である分散合意プロトコルを自作します。分散システムには、一部のコンピュータが故障しても全体として機能し続けることが求められます。例えばリーダーとなるノードが故障したら、次のリーダーを誰にするかを全体で合意しなければなりませんよね。分散合意プロトコルなくして、それは達成できません。現代のクラウドコンピューティングを支える根幹となる技術を学んでいきましょう。

庄司 直樹、美濃 圭佑(「ジュニア開発ゼミ」講師)

ジュニア開発ゼミ講師の庄司・美濃です。

ジュニア開発ゼミは2018年に開始したゼミで、小中学生を対象に、主にネットワークに関係するプログラミングを学びます。
OSI 参照モデルから始まり、TCP / UDP、HTTP など、低レイヤーから高レイヤーまで、順を追って説明し、講義の後には、各自テーマを持ち寄り、成果物となるプログラムを作ります。

講義の内容は、ネットワークについての基礎的な知識で、「プログラミング」というよりも「コンピュータサイエンス」に近いです。
プログラミングをする上で、コンピュータサイエンスのような基礎知識は切り離せません。
基礎知識があれば、あなたの引き出しの数はぐんと増えますし、今後の学習効率もぐんとアップします。
そして、基礎知識をあなたの年齢で身に付けられれば、もう向かうところ敵なしです。

その上で、各自持ち寄ったテーマで、セキュリティ・キャンプの成果物となるプログラムを作ります。
「こんなもの作りたいけど、どうやって作るんだろう。。。」というテーマでも、ぜひ私たちに相談してみてください。
「こうしたらできるんじゃない?」「こうしたらもっと面白くなるんじゃない?」などなど、全力でサポートします!

応募を検討していて、「この文章にある単語・説明がわからない。。。」という思いを抱いても全く問題ありません。
なぜなら、キャンプ中にみっちり教えるからです!
ぜひぜひ、たくさんの方のご応募をお待ちしています!

木藤 圭亮(Xトラック プロデューサー、「リバースエンジニアリングゼミ」講師)

Xトラックプロデューサー兼講師の木藤です。

IoTセキュリティトラック(Xトラック)は、2020年から新たに開講したトラックで、IoT機器を分解したり解析したりして、 IoT機器の脆弱性を見つけたり、セキュアなものづくりをテーマにハッカソン形式で学びます。

今年は「破壊と創造」をテーマにトラック内のゼミを設定しました。

破壊パートは、リバースエンジニアリングゼミです。
昨年度と同様に、興味のあるIoT機器を分解、解析して、動作の仕組みを理解したり、あわよくば脆弱性を発見したりします。
リバースエンジニアリングゼミでは過去に実際のIoT機器の脆弱性を発見したり、root権限を奪取したりしています。
ほかにも無線通信解析にソフトウェア無線機(SDR)を使ったり、いろんな方法で解析を行います。

創造パートは、IoTものづくりゼミです。
こちらのゼミは今年新たに設定したゼミで、ものづくりを中心に行います。
例えば電子回路基板設計をしたり、既存のIoT機器を魔改造[*1]してしまったり、ものづくりを通じてIoTセキュリティを学びます。

[*1] 元の意味や用途と大きく逸脱した形に改造することを意味する俗語

応募を検討している皆さんにお伝えしたいことがあります。

1.ためらわず、とりあえず応募してみよう

応募しないと何も始まりません!応募しても何も不利益はないです。
実は私もセキュリティ・キャンプ修了生ですが、応募して1回落選しました。
興味があって、参加してみたいな、と思ったらまず応募しましょう!

2.技術力、実装力がないから参加できないわけじゃない

セキュリティ・キャンプというと、つよつよな学生さんたちが集まるイメージかもしれませんが、 技術力がないから参加できないというわけではありません。
私自身、キャンプに参加した当時は、お世辞にも技術力が高いとは言えない状況でした。
だからこそ技術力はまだないけど、これから伸ばしていきたいというモチベーションを最大限応援したいと思っています。
キャンプに参加して技術力を伸ばしてもらえることが、一番よいことだと思っています。
技術力が足りないなーと思っても、参加できないわけじゃないです。
むしろ伸びしろが多いことは有利なポイントです。

3.応募課題には、思う存分書きたいことを書こう

応募課題に何を書けばよいか、よく聞かれることですが、応募課題には自分が書きたいだけ思う存分書きましょう。
どうしても少ない文量では、応募課題から読み取れるものが少なくなってしまいます。
応募課題には文字数制限はありません。(応募フォームには制限があるかもしれませんが、添付ファイルなどに書いていただいてもOKです)
間違っていても、自分がこう考えた、自分が調べた結果こう思ったなど、とにかく自分の言葉で書いてみましょう。
(コピペすることは否定しませんが、コピペするときは引用元を明示することが大切です)

それでは、皆さんからの応募をお待ちしています!