みなさん、こんにちは。ユービーセキュア(UB)広報担当の別宮スミレです。
本日は、東京都立産業技術高等専門学校での産学連携※1授業の様子をお伝えしたいと思います。コロナ禍ということもあり、感染対策をしっかり行った上で授業を実施しました。
自己紹介
テクニカルコンサルティング部 セキュリティコンサルタント 本 和陽氏
学生時代にセキュリティの勉強を通じて、「セキュリティに詳しくない人との橋渡し役になりたい」という目標を持ちました。
入社2年目、Vexを使った診断だけでなく手動診断も任されるようになりました。
まだまだ未熟な部分もありますが、常に新しいことを学びながら充実した毎日を過ごしています!
技術開発部 セキュリティエンジニア 平賀 正純氏
学生時代にセキュリティに興味を持ち、UBに入社してVexやシグネチャの開発に携わって1年半が経ちました。
日々、新しい用語や技術に向き合い、覚えることが多くてつらい時もあったりしますが、
それでも開発業務に携われるのは面白いし、達成感を味わうことができます。これからも楽しんで頑張っていきます!
事前準備
産学連携授業に向け、まずは講師の選出を行いました。UBではOB、OGの先輩が担当することが多く、今回もOBである、本さんと平賀さんに講師をお願いすることになりました。学校の先生と、難易度や習得内容についてどのような授業にするのがよいのか事前に打ち合わせをして、準備を行いました。
内容は大きく分けて2つ。前半は、弊社のツールVexを使って脆弱性を見つける診断体験、後半は、実際にシグネチャ※2を作成する開発体験をしてもらうことになりました!
本さんと平賀さんにとっては学生向けに授業をする初めての経験、自分たちの学生時代の記憶と感覚を頼りに準備を進めてくれました!
授業当日
クラウド環境に実習環境を用意したので、当日は2チームに分かれて対応しました。1つは、学校で授業を行って学生をフォローするチーム。もう1つは、社内に残って、作業中に発生した環境エラーの再設定や調整などをフォローするチームです。
学校に出向いたメンバーは6名。私、別宮も写真係としてお邪魔させていただきました!学校に着いたら早速準備開始です。今回、実技演習はクラウド環境で行うため、サーバーなどの設定の必要がなく準備に時間はかかりませんでした。そして、講師担当の2人は講演資料を見ながら授業の流れを入念に確認していました!
診断体験の講義
いよいよ産学連携授業の開始です!まずはVexを使って、実際に脆弱性診断を体験してもらいます。Vexの機能について簡単な説明が終わったら、早速自分たちの手を動かしてもらいました。学生の皆さんにとって初めて触る有償ツールということもあり、ドキドキしながらも講義資料とVexの画面を見比べながら奮闘してくれました。
今回の授業内容については、事前の打ち合わせで「難易度は高め」との要望をいただいていました。実際に診断ベンダーが使っている機能同様に、診断したい画面を自分で選択するシナリオマップを使ってもらいました。診断対象画面に遷移するログを取って診断を実施するのですが、初めは思うようにログ画面の取得ができず悪戦苦闘している学生もいました。しかし、UB講師陣のフォローや作業が終わった学生が他の学生に教えてあげるなど、みんなでコミュニケーションを取りながら作業を進めてくれました。そんな中、「脆弱性が見つかった!」「慣れると簡単に設定できそう!」などの声が聞こえてきたのがとてもうれしかったです。今回使ったシナリオマップは、昨年12月のバージョン9で追加された新機能ということもあり、バージョン9のリリース前にUBのインターンシップに参加してくれていた学生からは、「インターン時にこの機能はなかったですよね?」と機能の違いに驚きの声も上がっていました!
他ツールを使ったことのある学生から、「Vexはここがイイですね。」と機能や操作に関してのコメントを貰い、日々の自分たちの活動が誇らしく感じました!
開発体験の講義
少し休憩を挟み、次に開発体験の講義です。Vexではたくさんのシグネチャが用意されていますが、ユーザーが独自にシグネチャを作成することも可能です。今回はカスタムシグネチャの機能を使い、学生の皆さんにシグネチャを作ってもらう演習を行いました!
まずは、代表的な脆弱性として知られているクロスサイトスクリプティング(XSS)とSQLインジェクションのシグネチャを作ってもらいました。講師からヒントやフォローを受けながら、皆さん着々と進めているようでした。
そして、余裕がある学生はさらなる発展問題に挑戦!実際に自分が作ったシグネチャで診断を行い、脆弱性が検出できるかを確認してもらいました。自分でコーディングしたものが動いている様子を見るのはとても面白そうでした。
授業を終えて
診断体験、開発体験と併せて3時間講義させていただきました。難易度「高」のご要望を受けて出した課題でしたが、全てクリアできた学生は27名中2名でした!授業終了後のアンケートでは、「やや難しかった」という声が一番多かったものの「もっと触ってみたい」という声も聞けたので、学生にとって充実した内容になっていれば嬉しく思います。
最後に
最後に、今回講師を担当してくれた本さんと平賀さんに母校で授業をしてみての感想を聞いてみたいと思います!
本さん:母校での授業ということもあり、あまり緊張せずにリラックスして当日を迎えることができました。
診断講義の講師を担当するうえで心掛けたことは、学生の印象に残る授業にすることです。しっかりと印象に残っていてくれていると嬉しいのですが。。。
資料作成などの準備をしている時に、常に自分が学生の立場だったらどう受け取るかを考えていました。自分が学生の頃に印象に残った外部講師の方の授業を参考に、課題の難易度調整や配布資料の構成を考えました。準備で難しかった点は課題の難易度調整です。Vexの操作に慣れながら解いてもらう問題から、Vexの操作に慣れている上級者向けの問題まで、複数の難易度で数問ずつ課題を用意しました。また、事前打ち合わせの際に先生から「難易度は高め」と要望をいただいていたため、時間内にすべての課題を終わらせることが難しいレベルに調整しました。
当日はVexの操作に戸惑ってしまう学生さんもいましたが、学生同士で協力して課題に取り組んでもらえたのはとてもよかったと感じました。どんなに準備していても当日はアクシデントが起きるものですが、UBメンバーや学生さんの知恵でその場で解決することができました。進行不能に陥ることもなく、ほっとしています。
今回の授業を終えて、配布資料の内容更新やアクシデントの事前想定、授業の時間配分など今後に活かせる課題が多く見つかり、大変有意義な経験となりました。
平賀さん:この話を聞いた時、ほんの1年前まで母校にいた自分が講師として授業を行うなんて思ってもいなかったのでとても驚き、その瞬間から正直緊張した感覚がありました。
準備から本番を通して、一番苦戦したのが授業内容の作成でした。
課題の難易度を"これくらいならできるかな"、"これだと時間が足りなくなるかな"とかなり考えながら作成しました。先の本文でも話している通り、2名は全課題をクリアできたので難易度に関しては要望通りにすることができたと思います。
また、授業本番ではアクシデントが何か発生するだろうといろいろ想定していましたが、予想もしないところで問題が発生してしまいました。
しかし、学生の皆さんが素早く解決方法を共有してくれたおかげで進行に影響が出なかったので、とても感謝しています。学生の皆さんが渡された資料をなぞるだけではなく、ちゃんと考えながら授業を受けてくれていたので今回の授業が成功できたと思います。
自分としても今回の授業を通して、限られた時間での説明、ものを伝える難しさ、準備の段階で確認すべき点・考慮すべき点について多くの教訓を得られました。
もし次に同様の授業をすることがあれば、今回得たことを反映して活かしていきたいです。
今回の授業実施にあたりご協力いただきました東京都立産業技術高等専門学校の先生方、学生の皆さま、本当にありがとうございました!
講師をしてくれた本さんと平賀さん、そして、フォローをいただいたUB社員の皆さんもありがとうございました!
新型コロナの状況が改善し、たくさんの学生に会える日を楽しみにしたいと思います!次回をお楽しみに~!
※1…産学連携 新技術の研究開発や、新事業の創出を図ることを目的として、大学などの教育機関・研究機関と民間企業が連携することをいいます。
※2…シグネチャ 一般的な英単語のシグネチャ(signature)は署名、サインという意味ですが、セキュリティの世界では「特徴的な攻撃パターン」を意味します。