サイバーセキュリティに対する組織のアプローチは、攻撃対象が増加し、潜在的な脅威についてより多くのことを学ぶにつれて、常に進化しなければなりません。セキュア・バイ・デザインのアプローチでは、ソフトウェアのサプライチェーンのどの時点からでも脅威が侵入する可能性があることを理解し、ソフトウェア開発の設計、コーディング、テスト、デプロイの各段階にセキュリティを統合します。セキュア・バイ・デザインは、米国連邦政府機関(およびそのソフトウェアに触れるすべての組織)の標準として、ソフトウェア開発ライフサイクルにセキュリティを組み込むための代表的な基準となっています。
時間の経過とともに、セキュアバイ・デザインは、_セキュア・バイ・デフォルト_や_セキュア・バイ・デマンド_などの関連する概念に分岐します。こうした概念は、セキュア・バイ・デザインへのさまざまなアプローチ方法を強調するものです。
- セキュア・バイ・デフォルトは、すべてのソフトウェア製品が最初から安全であることを保証することに焦点を当てています。
- セキュア・バイ・デマンドは、セキュア・バイ・デザインの原則を調達プロセスに拡張します。
ここでは、セキュア・バイ・デザインと関連するアプローチについて詳しく見ていきます。また、悪用可能な脆弱性とソフトウェアのサプライチェーン攻撃を防ぐために、組織がどのように戦略を適応させることができるかに関するステップバイステップガイドもご紹介します。
セキュア・バイ・デザインとは?
米国サイバーセキュリティ・インフラセキュリティ庁(CISA)は2023年4月、3つの重要なソフトウェア・セキュリティ原則に焦点を当てたSecure by Design Initiative(セキュア・バイ・デザイン・イニシアティブ)を導入しました。
- 顧客のセキュリティに関する成果に対する責任を負う
- 抜本的な透明性の確保と説明責任を受け入れる
- これらの目標を達成するための組織構造とリーダーシップを構築する
セキュア・バイ・デザインでは、セキュリティの原則とプロトコルをソフトウエア開発プロセスの各段階に統合します。つまり、セキュリティ対策は、ソフトウェア開発の設計、コーディング、テスト、デプロイの各フェーズに組み込まれるのであって、後付けで追加されるものではありません。
セキュア・バイ・デザインの目標は、ソフトウェアの安全な基盤を最初から構築し、脆弱性と潜在的な攻撃面を減らすことです。
###セキュア・バイ・デフォルトとは?
セキュア・バイ・デフォルトは、セキュア・バイ・デザインから派生したもので、あらゆるソフトウェアやハードウェアが、ユーザーによる再設定を必要とすることなく、最もセキュアな構成に設定されることに重点を置いています。セキュア・バイ・デフォルトの製品は、悪意のある者による不正アクセスから企業を保護するために必要な最も重要なセキュリティ制御を自動的に有効にします。つまり、ユーザーが製品を一般的な悪用手法から保護するために追加の手順を踏む必要はありません。
セキュア・バイ・デフォルトの対策には、デフォルトのパスワードを排除し、多要素認証とシングルサインオンを義務付けて、許可されたユーザーだけがリソースにアクセスできるようにすることが含まれます。このアプローチには、自動アップデートとパッチ、およびすべてのユーザーアカウントとデバイスに対するセキュアな設定も含まれます。
セキュア・バイ・デマンドとは?
セキュア・バイ・デマンドは、セキュア・バイ・デザインの原則を予算編成や調達契約と組み合わせることで、ベンダーだけでなく請負業者にもセキュア・バイ・デザインを義務付けるものです。CISA's Secure by Demand Guideは、ソフトウェア購入者、バイヤー、調達担当者が、サイバーセキュリティに対する潜在的なベンダーのアプローチをよりよく理解するために使用できる一連の質問とリソースを提供します。これには、ベンダーの認証慣行、ソフトウェアのサプライチェーンのセキュリティ、脆弱性の開示と報告に関する質問も含まれます。
ベンダーが自社の製品やサービスにおいてセキュア・バイ・デザインの原則やプロトコルを遵守することを義務付けることで、企業はソフトウェアのサプライチェーンに潜在的な脆弱性が入り込むことを防ぐことができます。セキュア・バイ・デマンドのアプローチは、ベンダーが自社のサイバーセキュリティ態勢を継続的に改善する動機付けにもなります。
セキュア・バイ・デザインのサイバーセキュリティ戦略の構築
企業がセキュア・バイ・デザインの実現を優先する場合、効果的なDevSecOpsプラクティスの活用、ソフトウェア部品表(SBOM)の維持、ソフトウェア開発ライフサイクルのあらゆる時点から侵入する脅威を防御するためのAIの組み込みなどのステップがあります。
DevSecOpsプラクティスの採用
セキュア・バイ・デザインの取り組みをサポートする最初のステップの1つは、包括的なDevSecOpsアプローチを使用してソフトウェアを開発、構築、セキュリティ保護、およびデプロイするという、セキュアなソフトウェア開発プロセスです。
現在、新しいプログラムを作成するために、多くの開発者が複雑なツールセットを利用しています。GitLabによる最近の調査によると、回答者の62%が開発に6つ以上のツールを使用しており、20%は11つ以上のツールを使用しています。これは、潜在的なセキュリティの脆弱性をもたらすことでリスクを増大させる非効率的なものです。
デベロッパーは、DevSecOpsワークフローに必要なすべてのツールに、単一の使いやすいインターフェイスでアクセスできる必要があります。DevSecOpsプラットフォームのようなエンドツーエンドのソリューションがあれば、組織は開発者の負担を増やすことなく、セキュア・バイ・デザインのアプローチを導入することができます。
SBOMの作成と維持
透明性の確保もセキュア・バイ・デザインの重要な要素です。特に複数のソースからのコンポーネントが含まれている場合、組織はソフトウェアの中身を理解する必要があります。
SBOMはこの透明性を実現するために不可欠なツールです。SBOMは、バージョン、ライセンス、依存関係の詳細を含むソフトウェアコンポーネントの詳細なインベントリを提供し、潜在的な脆弱性や悪意のあるコードをより深く認識することができます。
このインベントリを維持することで、組織は、オープンソースのリポジトリやライセンス供与されたサードパーティのコンポーネントから要素を取り出したときに発生する可能性のある潜在的な脆弱性やリスクを十分に理解することができます。DevSecOpsプラットフォームは、SBOMの自動生成と更新を支援し、既存のワークフローに統合し、関連する脆弱性にリンクさせることができます。
現在、多くの組織がSBOMを使用していますが、その効果を十分に発揮させるためには、SBOMを動的なもとし、セキュリティのスキャニングツールと連携させ、継続的に更新する必要があります。スキャンツールやダッシュボードと連携することで、SBOMはアプリケーションに関連するリスクを特定する方法を提供できます。必要でない場合でも、SBOMはコードが安全であることを検証することで、セキュリティ規制へのコンプライアンスをサポートすることができます。
ソフトウェア開発におけるAIの活用
企業がAIの活用方法を模索する中で、ソフトウェア開発ワークフローは、開発プロセスを加速し、セキュリティを強化する可能性を秘めたテクノロジーへの貴重な入口となります。
あらゆる業界の組織が、すでにこれらのアプリケーションを模索し始めています。GitLabの調査では、回答者の39%がソフトウェア開発ライフサイクルでAIをすでに使用していると回答しています。
ソフトウェア開発ライフサイクル全体にAIを適用することで、開発ワークフローにおけるAI主導のサイロ化やバックログを回避することができます。AIは次のような重要な機能を果たします。
- メモリーセーフ言語へのコード説明とレガシーコードのリファクタリング
- DevSecOpsパイプラインの根本原因分析、テスト中の複雑な問題の迅速な解決
- 既知の脆弱性の調整を支援し、より徹底的な修復をサポートする脆弱性の修正
リーダーがAIをワークフローに組み込む際、プライバシーとデータセキュリティを優先することが極めて重要です。セキュア・バイ・デザインのアプローチを採用する上で不可欠なのは、機密データを保護し、知的財産権を保護するAI戦略を策定することです。
次なる課題
セキュア・バイ・デザインは、近々、これまで以上に信頼できるソフトウェアのエコシステムを構築する上で、デフォルトのアプローチとなる可能性があります。米国政府は現在、ソフトウェアデベロッパーと協力し、民間部門がセキュア・バイ・デザインのソフトウェアを製造・リリースすることを法的に奨励するフレームワークの作成に取り組んでおり、企業がセキュアな技術や慣行にさらに投資するよう働きかけています。
ソフトウェア開発に最初からセキュリティが組み込まれることで、効果的なSBOMを通じて透明性が確保され、AIが開発プロセスを強化することで、ソフトウェア開発ライフサイクルに関わるすべての人材が成功を収めることができます。> #### 動的SBOMガイド:最新のソフトウェア開発に不可欠な要素
ソフトウェア部品表(SBOM)を使用して、これまで認識されていなかった組織リスクを可視化する方法をご紹介します。
ガイドを読む