close search bar

Sorry, not available in this language yet

close language selection

検討課題から必須課題へと移行したDevSecOps

Natasha Gupta

Dec 07, 2022 / 1 min read

パンデミックによって職場、サービス、テクノロジーの面でさまざまな新しい環境への適応が加速しました。「バーチャルオンサイト」の就職面接、食料品店に長い行列ができた時期のミールキットの注文、携帯電話での個人資産管理などの変化は、大きな傾向として、あらゆる業界で従業員や顧客に高可用性のデジタルエクスペリエンスを提供する必要性が高まっていることを明らかにしています。

セキュリティの観点からは、この新しい日常への変化は、デジタルサービスの寸断やセキュリティ侵害により顧客維持や日常業務が危険にさらされる可能性があることを意味します。スケーラブルなソフトウェアセキュリティを実現するには、セキュリティを最初からソフトウェア開発ワークフローに組み込む必要があります。これにより、最終目標であったDevSecOpsは、最近のセキュリティチームが焦点を当てる緊急課題へと変化しました。

セキュリティ投資によって必ずしも十分なテストは保証されない

多くの組織では、アプリケーションセキュリティ(AppSec)の大部分が依然として事後対応型の体制で構築されており、テストは、多くの場合、サイロ化されて整合性がなく、ソフトウェア開発ライフサイクル(SDLC)の後工程になってからようやく行われます。これは開発チームにとって大きなボトルネックになります。2021年のForbesによるサイバー脅威に関する調査では、重大なソフトウェア脆弱性をクローズするのに平均48日かかると推定しています。一方で、作成してデプロイするコードの変更は加速し、それに伴ってチェックされないまま残るソフトウェアリスクが拡大します。

修正作業の主担当者となることが多い開発チームは、セキュリティが重要であることは承知していても、それに費やす時間がありません。「セキュリティに割く時間がない」ことにより、AppSec対策は限定的になる傾向があります。DevOps環境でタイムリーかつ効率的なセキュリティプロセスを実現するためには、さまざまな面で課題があります。すべての開発ツールとスキャン対象のソースを既存のパイプラインまたは開発ツールチェーンに統合できないこと、および開発時の効果的なフィードバックループが存在しないことが原因で、多くのAppSec対策は失敗する可能性があります。

しかし、開発チームからの抵抗を受ける可能性があるにもかかわらず、多くの組織はアプリケーション・セキュリティ・テスト(AST)ツールに多額の投資をしています。最近の多くの企業はSDLCの各段階でさまざまなASTツールを使用しています。通常、静的アプリケーション・セキュリティ・テスト(SAST)とソフトウェア・コンポジション解析(SCA)はビルドや開発の段階で利用され、動的アプリケーション・セキュリティ・テスト(DAST)は運用環境の状況をシミュレートして問題を発見するステージングの段階で利用されます。また、ASTツールの各カテゴリでサポートされるアプリケーションおよびプログラミング言語の検出機能と種類もベンダーによって異なる場合があります。検索対象となるソフトウェアの欠陥の種類、悪用可能性、問題の原因はツールによって異なるため、テスト・ツールを単独で使用すると、潜在的な脆弱性の検出範囲が限られます。包括的なAppSecプログラムを導入することにより、1つのASTカテゴリ内で複数のツールを投入し、SDLCの各段階で適切なASTツールを実装できます。

多くの組織がASTツールに多額の投資を行っている一方で、セキュリティハイジーン(衛生状態)は開発チーム間で一貫性がありません。2022年の環境、社会、ガバナンス(ESG)レポート「Walking the Line: GitOps and Shift Left Security」では、回答者の35%が既知の脆弱性が含まれているコードをリリースしたと報告し、45%がテストやセキュリティチェックを行わずにソフトウェアをリリースしたことを認めています。これは、従来のAppSecでは、複数のリポジトリにサイロ化されたアプリケーション脆弱性のバックログに対処するために苦労することが多いためです。また、誤検知や冗長な結果を手動でフィルタリングすることにより、開発速度が大幅に低下します。

これらのボトルネックにより、既存のAppSec投資の価値が大幅に抑制されます。これに対し、DevSecOpsはすべてのステークホルダーに魅力的なアプローチを提供し、セキュリティと開発のワークフローを統合してコラボレーション、効率、説明責任を促進します。

DevSecOpsの実装方法

DevSecOpsの実装を開始するための定石はありませんが、AppSecソリューションの中にスケーラビリティと有効性を確認するために役立つ指針を探し求めることができます。その指針を以下に示します。

  • コード作成のペースに合わせて迅速にコードのセキュリティを確保:CIレベルで開発用のツールとプロセスを連携させることができるツールを採用する
  • 適切なタイミングで適切なテストを実行:セキュリティ・チームと開発チーム全体のテスト・ワークフローとポリシーを標準化し、テストを自動的にトリガするためのしきい値を定義する
  • AppSecノイズをフィルタリングして最重要課題に集中:SDLC全体のすべてのAppSecデータを可視化および効率化し、情報に基づいたトリアージと修正の決定を行う

Synopsysの支援内容

ガートナー社の2022年版「Critical Capabilities for Application Security Testing」(アプリケーション・セキュリティ・テスト分野のクリティカル・ケイパビリティ)レポートでは、アプリケーション・セキュリティ・ソリューションで対処すべき基本的なユースケースの例を詳しく説明しています。このレポートでは、規模に応じた回復力のあるソフトウェアを実現するための主なユースケースとしてDevSecOpsに焦点を当てています。DevSecOpsソリューションの有効性を評価するガートナー社のランク付け方法には特徴的ないくつかの要件があります。

  • 全ツールのAppSecの結果をオーケストレーションおよび相関付け:SDLCにテストを組み込む機能を備え、CI/CDパイプラインの各段階でツール全体を包括的に可視化する
  • IDE(統合ソフトウェア開発環境)ベースのテスト:テストを後工程に移行し、開発者にリアルタイムのフィードバックと修正のためのコンテキストに応じたガイダンスを示すソリューションを導入する

DevSecOpsユースケースに関するガートナー社のレポートにおいて13社のベンダーの中で最高ランクと評価されたSynopsysでは、これらの主要なニーズに対応するソリューションの堅牢なポートフォリオをご提供しています。Synopsysのソリューションの主な利点をご紹介します。

  • ASOC(Application Security Orchestration and Correlation)でテスト、リスクの可視化、優先順位付けを管理:SynopsysのIntelligent OrchestrationCode Dx®は、テスト・ワークフローを自動化し、包括的な方法でAppSecデータのための信頼できる一元化された情報源を生成します。Intelligent Orchestrationでは、ポリシーをコードで定義することにより、ASTツールをパイプラインに組み込み、必要に応じてテストをトリガすることができます。テストの決定事項が定義されると、Code Dxは自動化されたASTツールと手動レビューの両方(脅威モデリング、アーキテクチャ・リスク分析、ペネトレーション・テストなど)で結果を正規化および相関付けできる機能を追加し、SDLC全体のAppSecデータの一元化されたリポジトリを提供します。このデータを使用して、Code Dxは重要な作業に関するコンテキストに応じたリスク・ベースの洞察を提供し、開発プロセスのフィードバック・ループとの双方向の統合により優先度の高い結果を修正担当者に直接通知できます。
  • テストを後工程に移行:SynopsysのCode Sight™は、SASTとSCAを組み合わせて、独自開発のコードとオープンソースの依存関係に関するセキュリティ、品質、コンプライアンスの問題を検出し、このテストをIDEに統合して開発者にリアルタイムのフィードバックを提供します。また、ランタイム・テストでは、Synopsys Seeker®の継続的テストとアクティブ検証機能を利用して実行中のアプリケーションの脆弱性を特定・検証できます。Seekerは、ソフトウェアのビルドだけでなく、相互に関連するコンポーネントやアタックサーフェスについても重大な脆弱性や弱点を検証できるようにするために、エンドポイントとAPI呼び出しの詳細な洞察とデータ・フロー・マッピングを提供します。

SynopsysによるDevSecOps実装支援の内容の詳細は、eBook「Transforming AppSec: The Top Three Ways to Build Security into DevOps(英語)」(AppSecの変革:DevOpsにセキュリティを組み込む3つの主な方法)をご覧ください。

Continue Reading

トピックを探索する