セキュア ソフトウェア開発 (LFD121-JP)の第1部:要件、設計、再利用のe-learningを受講しました
こんにちは。普段は、Rubyなどによるバックエンドアプリケーション開発をすることが多い、システムエンジニアの浅沼です。
今回の記事は、The Linux Foundationが提供している「セキュア ソフトウェア開発」無料オンラインコースの第1部 要件、設計、再利用を受講したレポート的なものを書きたいと思います 。
セキュア ソフトウェア開発 (LFD121-JP)は、The Linux Foundation Training and Certification にて提供されています(及び、edXでも提供されています)。
参考:初の日本語版edX & Linux Foundationコース開始:セキュアソフトウェア開発:要件、設計、再利用(LFD104-JPx)提供開始
現在、第2部の実装まで公開されており、今後、3番目のコースとなる検証、専門的トピックが予定されているようです。
私は、The Linux Foundation Training and Certification で提供されているセキュア ソフトウェア開発 (LFD121-JP) を受講しています。
セキュア ソフトウェア開発 (LFD121-JP)に興味をもったきっかけ
みなさん、CVE、OWASP Top 10やCWE ToP 25など、適宜、確認していますか?ツールや専門チーム頼みになっていたりしないでしょうか?
実は、開発現場の中において、セキュアなソフトウェア開発についての体系だったナレッジ・トレーニング機会は、意外と少ないのではないかと経験則から思います。
セキュリティ関連の検知、対策、また、関連部署との連携等々、積み重なっていく労力に疲労を感じたり、ナレッジや経験が後からついてくることを実感される方が少なからずいるはず・・・(感じてくれた方は、私と共感できます)。
セキュリティも早い段階でセキュリティ対策を組み込むという考え方、シフトレフトが着実に浸透しているはずです。その背景から、今回、ソフトウェア開発者が実践すると良いセキュアなポイントをつかみ、現在参画しているチームにも伝えようと思ったのがきっかけです。
セキュア ソフトウェア開発 (LFD121-JP)とは
Open Source Security Foundation (OpenSSF) と Linux Foundation Training & Certification によって開発されたサイバーセキュリティトレーニングです。
要件、設計、再利用のコースでは、システムセキュリティ要件、安全な設計原則とベストプラクティス、システムのソフトウェアを安全に選択して再利用する方法など、セキュリティの基本概要を学び取ることができます。
テキストの教材、所々で理解チェックのための質問・小テストがあります。
第1部:要件、設計、再利用を受講した所感
内容は受講してみてのお楽しみですが、再利用 のパートは、特に読んでおいてよかったパートでした。
何かしらのアプリケーション開発において、OSSやライブラリを活用することが大半だと思います。その依存関係、バージョンやメンテナンスが継続しているのか。
むやみに採用するだけではなく、リスク分析の目線でも確認しておくと、後々、助かることがあるだろうと思います。jellyfishの件が例に出ていて、『そうだった、そんなことがあった』と思い出しました。現在もタイポスクワッティングは頻繁にあると思うので、名前はよくよく確認しましょう。
最後に
AIに注目が集まる現在、攻撃者も容易に様々な攻撃の用意、探索が可能なのではないでしょうか。そのような環境を踏まえて、チームの開発者全員が、セキュアソフトウェア開発の共通ナレッジ・理解の土台があることも重要な要素になりそうだと感じます。
早い段階でセキュリティ対策を組み込むという考え方は、今後も変わらないだろうと思います。現在、参画しているチームの社内資料にもセキュアソフトウェア開発についてのガイドを用意中です。
次、第2部 実装に進んでみたいと思います。
それでは、ここまでお読みいただきありがとうございました!