目次はじめにセキュアにプログラムする脆弱性を見つける、被害箇所を見つけるさいごに初めまして。2023年4月入社した者です。簡単な自己紹介から行いたいと思います。:アニメ、マンガ、ゲームなどなど、広範囲に手を伸ばすはじめに最近、情報セキュリティが話題ですよね。今後IT化が進む中で、セキュリティはなくてはならない存在かと思います。機密情報の漏洩防止やデータ改ざんの防止、サービスダウンの防止など、気を付けなければならない部分は多く、その分知識や技術も大量に必要であることが分かると思います。そのため、セキュリティ技術を高める、あるいはゼロから習得してもらうこと目的に、様々な大会、システムが存在しています。今回の記事では、エンジニアがセキュリティ知識、あるいは技術を習得するために使える(かもしれない)ものを、用途を分けて紹介できればと思います。セキュアにプログラムするIPAが提供しているAppGoat(https://www.ipa.go.jp/security/vuln/appgoat/index.html)があります。このシステムでは、クロスサイトスクリプティングやSQLインジェクションといったWebアプリに対する攻撃を数多く学ぶことができます。学習者は、攻撃者視点で攻撃を試した後、脆弱性があった部分をセキュアに修正していきます。修正した後に再度攻撃を試し、失敗するところまで確認できます。攻撃の成功、失敗を体験できる楽しい演習ツールです。各種攻撃に関する説明も詳しく書かれているので、攻撃についてよく知らない、あるいはセキュアにする方法をよく知らない人でも学習に取り組むことができます。Flag)があります。CTFとは、専門知識や技術を駆使し、隠されたFlagを見つけるコンテストのことです。Flagを見つけるために、暗号文を解いたり、プログラムの脆弱性を突いたり、必要なデータを抜き出したりなど、情報システムに関する幅広い知識が必要となります。Flagを見つけるために様々な操作を行うため、楽しみながら技術を習得することができます。CTFを行うことで、既存システムの脆弱性はどこにあるのか、どこが攻撃を受けたのか、などといったトラブルシューティング能力が身につきます。国内で最も有名なのはSECCON(https://www.seccon.jp/)です。初心者から上級者まで幅広くカバーしており、大会だけでなくワークショップも開かれています。CTF問題を常設しているサイトも数多くありますので、自身で調べてみてはどうでしょうか。さいごに今回は、セキュリティ知識や技術を習得する際に使える(かもしれない)サイト、大会を紹介しました。この記事を書いたかというと、私の大学時代の研究テーマがセキュリティ教育だったからです。学習するだけじゃモチベーションは下がりますし、身につきにくいし、何より楽しくないですよね。なく、学習者がモチベーションを維持、かつ身につかせるような楽しい学習システムとはなんなのか、といったことを考えてシステム開発してました。みなさんも今回紹介したものを参考に、自分に合った方法で楽しく学習してもらえればと思います。よしひと)2023年度入社のエンジニアです。Next.jsをよく触ってます。本記事に記載の情報に起因するいかなる損害に対しても弊社は一切の責任を負わないものとします。お客様のご判断と責任のもとにご活用ください。