再現性の高いセキュアコーディングスキルを習得し、シフトレフトとコンプライアンスを実現しましょう

現在、ほぼすべての開発チームが何らかのコンプライアンス研修を実施しています。これは、業界のフレームワークや政府の規制を遵守するための初期認定プロセスの一環であったり、年次要件や定期レビューの一環であったりします。組織が基本的なコンプライアンス要件を満たせなければ、従業員は本来の業務を遂行できないため、これは重要なステップです。
コンプライアンスルールには理由があります。そのルールが適用される分野で働く人は誰でも、関連するすべてのプロセスや手順、および適用される法律について、少なくとも基本的な理解を持っていなければならないからです。
コンプライアンス研修は重要ですが、義務付けられた最低限の要件を完了するだけでは、真のアプリケーションセキュリティは確保されません。これは、セキュアコーディングのスキルを日々のワークフローに統合しようとしている開発者にとって特に当てはまります。ほぼすべての開発者が何らかのコンプライアンス研修を受けていますが、調査によると、67%が「コードに脆弱性を残してしまうことが多い」と回答しています。
なぜでしょうか。
Secure Code Warriorは、2021年12月にEvans Data Corpと共同で、2年目となる「開発者主導のセキュリティに関する調査(2022年版)」を実施しました。世界中の1,200人の開発者を対象に、セキュアコーディングの実践に関するスキル、認識、行動、そしてそれらがソフトウェア開発ライフサイクル(SDLC)に与える影響や重要性について調査しました。
コンプライアンス研修がソフトウェアセキュリティの向上につながっていない理由については、私たちが長年議論してきた課題です。今回の調査は、その問題を改めて浮き彫りにしました。
一方で、開発者は、アプリケーションやプログラムのコードを最初に記述する段階からサイバーセキュリティを組み込むなど、ソフトウェア開発プロセス全体を通じて新しい役割を担うよう求められています。しかし、セキュアなコードを書くこと、あるいはそれに関連するサイバーセキュリティの問題や脆弱性について学ぶことは、決して簡単な作業ではありません。調査では、63%の開発者が「セキュアなコードを書くことは難しい」と回答しています。
セキュアなコードを書くことの難しさは、驚くべきことではありません。高給のサイバーセキュリティ関連の求人が埋まらないのには理由があり、前回の集計では世界中で350万人以上の欠員が出ています。もし簡単な仕事であれば、誰もがその分野に飛び込んでいるはずです。コード内の脅威と戦い、脆弱性を排除する方法を学ぶことは困難であり、脅威の状況は常に変化しています。静的なコンプライアンス研修や一度限りのクラスでは、変化に対応したり、開発者が必要とする教育を提供したりすることはできません。コンプライアンスのチェックリストを埋めることはできても、組織に真のアプリケーションセキュリティを保証したり、開発者がセキュアなコードを書けるようにしたり、コードの脆弱性を発見・修正するスキルを身につけさせたりすることはできないのです。
コンプライアンス研修とセキュリティ研修は重要だが、別物である
組織は、コンプライアンス研修でできることと、できないことを認識し始める必要があります。コンプライアンス研修を廃止してはいけません。特に法律で義務付けられている場合はなおさらです。また、現在の研修方法であっても、調査回答者の92%が「コンプライアンス関連の問題やセキュリティフレームワークに関する研修が少なくとも必要である」と回答しており、50%が「十分なコンプライアンス研修が必要である」と強調していることからも、その重要性は明らかです。
研修に関心が高いコンプライアンスフレームワークとしては、特定の業界に特化したもののほか、CISセキュリティフレームワーク、PCI DSS、OWASP Top 10、MISRA C、ISO/IEC、医療保険の相互運用性と責任に関する法律(HIPAA)など、一般的なサイバーセキュリティフレームワークも挙げられました。
ですから、それらのフレームワークについて研修を行うことは大切です。しかし、コンプライアンス研修のチェックボックスを埋めることが、セキュアなコードを継続的に作成するための基盤作りと同義ではないことを理解してください。
むしろ、コンプライアンス研修を、コンプライアンスサイクル以外でも反復可能な「開発者のセキュアコーディングスキルを向上させる継続的な機会」の一部と捉えてください。そうすれば、開発者は毎日セキュアなソフトウェアを作成し、リリースできるようになります。優先順位を「コンプライアンスの達成」から「継続的な学習を通じて開発チームがセキュアにコーディングできるようにすること」へとシフトさせましょう。開発者の能力向上に時間とリソースを投資すれば、年次の形式的なコンプライアンス演習や試験はスタッフにとって容易なものとなり、全体的な生産性向上という恩恵も得られるはずです。
開発者主導のセキュリティへどのように移行すればよいのでしょうか?
開発者の多くは研修に価値があると感じていますが、長年受けてきたセキュアコーディングに関する研修の内容には不満を抱いています。開発者は、自分の仕事に関連する実世界の例を用いた実践的な研修(30%)をより重視してほしいと述べています。また、26%の回答者が、特に演習の一環として実際にセキュアなコードを書く練習ができるような、よりインタラクティブな研修が不可欠であると回答しました。
調査対象の開発者の23%が、自分の業界やセクターで遭遇する可能性が高い特定の脆弱性に焦点を当てた、よりガイド付きの研修を望んでおり、22%が研修コースでより多くの実世界の脆弱性の例を見たいと回答しました。
コンプライアンス研修で一般的な、静的でインタラクティブ性のない研修を提供するだけでは、反復可能な開発者セキュリティスキルの習得にはほとんど価値がないことは明らかです。その代わりに、開発者が作業中にセキュリティを学ぶ「ジャストインタイム研修」のような取り組みに注力すべきです。段階的な学習プログラムの導入を検討するのも良いでしょう。
段階的なアプローチでは、大きなトピックを通常、個別の学習体験や概念に分解します。開発者が進歩するにつれて、建物が高くなるにつれて足場が組まれるように、習得済みの概念の上に、より高度な概念が積み重ねられていきます。これは、サイバーセキュリティのように難しく常に進化するトピックを教えるための実証済みの方法です。まずは小さく複雑でない塊に分解し、その基盤の上に複雑さを積み上げていくのです。
どのような方法で開発者セキュリティスキルプログラムに取り組むにせよ、コンプライアンス演習とは切り離しておくことが重要です。コンプライアンス研修とセキュリティ研修はどちらも重要ですが、成功させるためにはそれぞれ異なるアプローチが必要です。
関連資料
ホワイトペーパー:ソフトウェアセキュリティ向上のための課題(と機会)
ホワイトペーパー:ソフトウェアセキュリティにおける予防的開発アプローチ
レポート:開発者主導型セキュリティの現状
AI主導の開発をリリース前にガバナンスする
AIを活用したリスク測定、コミット時のセキュアコーディングポリシーの強制、そしてSDLC全体を通じたセキュアなデリバリーの加速を実現します。
他のブログ記事を見る
セキュアコーディング、AIガバナンス、ソフトウェアリスク管理に関する専門的なコンテンツをご覧ください。
%252520%252520(3).avif)
Supercharged Security Awareness: How Tournaments are Inspiring Developers at Erste Group
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse varius enim in eros elementum tristique. Duis cursus, mi quis viverra ornare, eros dolor interdum nulla, ut commodo diam libero vitae erat. Aenean faucibus nibh et justo cursus id rutrum lorem imperdiet. Nunc ut sem vitae risus tristique posuere.

Security as culture: How Blue Prism cultivates world-class secure developers
Learn how Blue Prism, the global leader in intelligent automation for the enterprise, used Secure Code Warrior's agile learning platform to create a security-first culture with their developers, achieve their business goals, and ship secure code at speed
AIを活用した開発をリリース前にセキュアに
開発者のリスクを可視化し、ポリシーを適用することで、ソフトウェア開発ライフサイクル全体における脆弱性を未然に防ぎます。



.avif)