「シフト・レフト」セキュリティーとは、ソフトウェア開発ライフサイクル(SDLC)の早い段階でセキュリティーを埋め込み手法です。SDLCは通常、左(計画)から右(保守)への直線的なフローに従い、左にシフトすることでセキュリティーはライフサイクルの終わりではなく初期段階に移動します。これにより、開発者は脆弱性を予測し、早期に対処することができます。
2026年のX-Force脅威インテリジェンス·インデックスによると、脆弱性のエクスプロイテーションはサイバー攻撃の主な原因となっており、 IBM X-Forceチームが観察したインシデントの40% を占めています。IBMのサイバーセキュリティーのグローバル・マネージング・パートナーであるマーク・ヒューズは、脅威インテリジェンス·インデックスのプレスリリースで、「セキュリティリーダーはより積極的なアプローチに移行する必要があります」と述べています。「シフト・レフト」ストラテジーは、サイバーセキュリティーを事後対応型から事前対応型に変え、後回しにするのではなく優先事項にします。
セキュリティを左にシフトすることが安全なソフトウェア開発ライフサイクル(SSDLC)に組み込まれており、ソフトウェア開発のあらゆる段階にセキュリティが組み込まれています。これはDevSecOpsにおける重要なベスト・プラクティスでもあり、アプリケーションセキュリティ(AppSec)とインフラストラクチャセキュリティをDevOpsプロセスに自動的に統合するものです。
シフトレフトセキュリティは、セキュリティリスクを軽減し、拡大する前に早期に発見するのに役立ちます。これは、次のコアプラクティスで構成されています。
脅威モデリング
セキュア・コーディング
セキュリティー・テスト
CI/CD統合
セキュリティをコードとして
脅威モデリングは設計段階で行われます。システムに対する潜在的な脅威を特定して評価し、それらを軽減または防止するためのアクションの概要を説明します。
このプロセスは、システムのアーキテクチャーを分析し、アクセス・ポイントを見つけ、データ・フローをマッピングすることから始まります。次に、脅威を重大度に従ってランク付けし、どれを優先するかを決定します。その後、脅威を管理するための制御または保護手段が策定されます。結果として得られる脅威モデルは、SDLC全体で改良できます。
脅威をモデル化するには、STRIDE手法やMITRE ATT&CKフレームワークなど、さまざまな手法が用いられます。Open WorldwideアプリケーションSecurity Project(OWASP)は、脅威モデリングに関するさらなるガイダンスを提供しています。
安全なコーディング手法には、サイバー攻撃からソースコードを強化する防御的なプログラミング戦略が含まれます。例えば、次のようなユースケースです。
パラメーター化されたクエリーと準備されたステートメントを結合してSQLインジェクション攻撃を防ぐ
堅牢なロギングと安全なエラー処理メカニズム
サーバー側でのインプットとアウトプットエンコーディングの検証とサニタイズにより、インジェクション攻撃から保護
データの可用性、機密性、完全性を保護する強力な暗号化プロトコル
包括的なセキュリティテストでは、ソースコードに組み込まれているセキュリティ対策を検証します。シフト・レフトテストがコードカバレッジや品質の向上を目指すのに対し、セキュリティテストはアプリケーション全体に焦点を当て、セキュリティ問題を明らかにします。
以下は、一般的なセキュリティー・テストの種類です。
静的アプリケーション・セキュリティー・テスト(SAST):「ホワイトボックス」テストとも呼ばれるSASTは、アプリケーションを実行せずにコードをスキャンします。事前定義されたルールを適用して、セキュリティー上の欠陥にフラグを立てます。
動的アプリケーションセキュリティテスト(DAST):ブラックボックステストと呼ばれる DASTは、アプリが実行中に評価されます。実際の 脅威アクターを模倣するためにシミュレートされた攻撃を用いています。
インタラクティブ・アプリケーション・セキュリティー・テスト(IAST):IASTは、コード・コンテキストとランタイムの動作の両方を評価して、脆弱性をリアルタイムで報告します。
これらの方法を組み合わせることで、脆弱性の全体像をより詳細に把握できます。
セキュリティのオートメーションは、継続的統合/継続的デリバリー(CI/CD)に組み込むことができます。CI/CDパイプラインにセキュリティーを組み込む手法には、次のようなものがあります。
コードとしてのインフラストラクチャー(IaC)をスキャンして構成ミスを検出する
アーティファクト、ビルドログ、環境変数のシークレットを検知して、本番環境に到達する前に公開されたシークレットを発見する
ソフトウェア構成分析(SCA)でオープンソースライブラリとコンポーネントを調査し、ソフトウェア部品表(SBOM)を生成し、既知のセキュリティ脆弱性のデータベースと比較する
クラウドネイティブアプリケーションのコンテナイメージに対して脆弱性スキャンを実行する
コードとしてのポリシーと同様、コードとしてのセキュリティーは、セキュリティーのルールとポリシーを実行可能なロジックとして扱います。開発者がコード変更をコミットする前に自動チェックを実行して、セキュリティー・ルールとポリシーに準拠していることを確認できます。
コードとしてのセキュリティーは、ソフトウェア・エンジニアリング・チームがコードの管理に使用するのと同じバージョン管理システムに存在します。つまり、コードベースのセキュリティー・ポリシーを繰り返し可能かつスケーラブルな方法で広範囲に適用でき、更新を簡単にレビューして追跡できるということです。
AI活用のグローバル・トレンドや日本の市場動向を踏まえたDX、生成AIの最新情報を毎月お届けします。本ニュースレターは【日本語】で配信しています。登録の際はIBMプライバシー・ステートメントをご覧ください。
シフトレフト・セキュリティーは、ソフトウェアの品質を維持しながら組織の攻撃対象領域を減らすのに役立ちます。企業がシフトレフト・セキュリティーを採用すると、次のようなメリットが得られます。
チーム文化の強化
顧客満足度の向上
コスト削減
より迅速なリリース
「シフト・レフト」セキュリティーは、開発者、DevOps、セキュリティー・チーム間のコラボレーションを促進します。彼らはセキュリティに関する知識とベスト・プラクティスを共有し、情報のサイロを排除します。セキュリティー目標について合意し、より安全なソフトウェアを構築するために協力しています。
開発ライフサイクルの早い段階でセキュリティー対策を導入することで、大規模なエクスプロイトが本番環境に到達し、ユーザーに悪影響を与えるのを防ぐことができます。また、緊急修正プログラムや侵害に対するパッチ適用に伴うダウンタイムも制限されます。これにより、チームは高品質で信頼性が高く、安全で安定したシステムを提供できるようになり、顧客の信頼の向上につながります。
SDLCの後半フェーズで脆弱性を検知すると、コストのかかるやり直しが発生する可能性があります。セキュリティーの問題を早期に発見すると、修正プログラムにかかるコストが低くなります。
シフトレフト・セキュリティーは、開発プロセスの後半で脆弱性の発見の遅れから生じるボトルネックを回避し、配信サイクルの短縮につながります。一方、シフトレフト・セキュリティーをSDLCにシームレスに組み込むことでワークフローを合理化し、CI/CDパイプラインの一部としての自動テストと自動化により、リリースの迅速化を実現できます。
「シフト・レフト」セキュリティーは、企業の全体的なセキュリティー体制の強化に貢献します。ここでは、チームが「シフト・レフト」セキュリティーを実装する際に役立つヒントをいくつか紹介します。
明確なセキュリティー要件とポリシーを確立する
小さく始める
自動化を受け入れましょう
重症度に基づいて優先順位をつけてください
シフト・レフトとシフト・ライトのカップル
時間をかけて改良する
教育プログラムが鍵
SDLCの計画および分析フェーズでは、機能要件およびその他のプロジェクト要件とともに、セキュリティー要件およびポリシーを定義する必要があります。今こそ、重要なガイダンスとサポートを提供するサイバーセキュリティー・チームを導入する時です。
セキュリティーをシフトレフトすることは、特に大規模なソフトウェア・プロジェクトの場合、圧倒的になる可能性があります。小規模かつシンプルに始めることで、プロセスをより達成しやすくなります。これは、例えば、特定の安全なコーディング手法の適用や、主要な機能のセキュリティー・テストの試験的実施などが含まれます。
自動化は、「シフト・レフト」セキュリティーに関しては不可欠な資産です。例えば、Red Hat Advanced Cluster Security for Kubernetesは、コンテナ化されたアプリのライフサイクル全体(ビルド・デプロイからランタイムまで)を保護する Kubernetesネイティブのセキュリティプラットフォームです。これにより、コンテナ・イメージの設定ミスや既知の脆弱性の自動スキャンが可能になります。また、イメージが自動チェックに失敗した場合に、ビルドのブロックやデプロイメント・パイプラインの停止など、セキュリティー・ポリシーを自動的に適用することもできます。
チームがシフトレフト・セキュリティーを導入すると、使用するツールが生成する多数のアラートによってアラート疲労に遭遇することがあります。トリアージ・システムを構築することで、高リスクの問題を低リスクの問題よりも先に解決することができます。
両方のストラテジーを融合させることで、より安全で強力なソフトウェアを実現できます。シフトレフトによってSDLC全体にセキュリティーが分散される一方で、シフトライトによって本番環境での進化するセキュリティーの脅威から防御され、補完的な技術になります。
シフトライト・セキュリティーの例としては、攻撃をリアルタイムで検知・対応するランタイム・アプリケーション自己保護(RASP)や、アプリへのWebトラフィックを監視し、セキュリティー・ポリシーの決定に従って悪意あるトラフィックをブロックするWebアプリケーション・ファイアウォール(WAF)などがあります。
「シフト・レフト」セキュリティーは、継続的で反復的な手法です。企業は時間をかけて学んだことを適用し、アプローチを継続的に改善することができます。
企業は、開発チームまたはDevOpsチームのセキュリティー・トレーニングの一環として、「シフト・レフト」セキュリティーを含める必要があります。チームは、セキュリティー・レフトのシフトが重要である理由、その実装方法、必要なツールの使用方法を理解する必要があります。
例えば、IBM Bobは、セキュリティを最優先とする原則に基づいて構築されており、「シフト・レフト」の哲学を採用しているAI搭載開発パートナーです。これには、コードの変更内容を分析し、開発者が作業をコミットする前に潜在的なセキュリティー問題にフラグを立てるレビュー・ワークフローが組み込まれています。チームは、ソースコードに一般的な脆弱性や安全なコーディング慣行の順守がないかチェックする、セキュリティに重点を置いたコードレビュースキルを作成できます。
それをさらに一歩進めて、Bobはアクター・クリティカルなワークフローを使用して安全なコードを生成できるようになりました。アクターのサブエージェントは、設定されたセキュリティー・ルールに従ってセキュリティーに準拠したコードを作成し、クリティカルなサブエージェントは、公開されたセキュリティー基準に照らしてコードを検証します。
また、IBM Concert®は、セキュリティー・リスクが本番環境の問題に発展する前に早期に顕在化するエージェント型IT運用プラットフォームです。Concert Protect はAI駆動型 脆弱性管理 を用いて、どの脆弱性が重要かを証明し、修復を調整します。
AIとオートメーションの力を活用することで、問題がアプリケーションスタック全体でプロアクティブに解決します。
DevOpsソフトウェアとツールを使用して、複数のデバイスや環境でクラウドネイティブ・アプリを構築、デプロイ、管理します。
ビジネスの俊敏性と成長を加速—IBMのクラウド・コンサルティング・サービスを利用して、あらゆるプラットフォーム上のアプリケーションを継続的にモダナイズしまします。