アプリケーション・セキュリティ(AppSec)のアナリスト、マネージャー、CISOは、説明責任を果たさなければなりません。ASOCツールを使用して説明責任を果たすために必要な高い可視性と透明性を実現する方法をご紹介します。
Application Security Orchestration and Correlation(ASOC)を利用してAppSecプロセスの効率と拡張性を高める方法については、すでにご紹介しました。ASOCシリーズの最終回となる本稿では、ASOCツールを活用してアプリケーション・セキュリティの技術面と事業運営面の両方で説明責任を果たす方法をご紹介します。
DevSecOpsアプローチによるアプリケーション開発では、スピードとセキュリティの連携が求められますが、先述のとおり、その実現は容易ではありません。
アプリケーション・セキュリティには多くの時間を要します。アナリストには、カスタム・コードやサードパーティー・コンポーネント、およびアプリケーションが配置されているネットワークなど、すべてのアタックサーフェスの脆弱性を評価する責任があります。アタックサーフェスの脆弱性をスキャンするには脆弱性ごとに少なくとも1つのツールが必要ですが、実際には各アタックサーフェスに対して複数のツール(複数のSAST、DAST、サードパーティー・コンポーネント・スキャナーなど)が必要です。1つのアプリケーションだけでもこのような状態です。一度に複数のソフトウェア・プロジェクトに取り組む場合、解決しなければならない問題はさらに複雑になります。
事業の規模が大きくなるほど、まとまりのない多種多様なツールの実行が必要になります。ツールの構成と保守も複雑になる可能性があり、複数のプロジェクトで同じツールを使用する場合は、ユースケースに応じて構成を変更する必要があります。これに加えて、アプリケーション・セキュリティ(AppSec)アナリストは、多くの場合、アプリケーション・コードがセキュアであることを確認するためにペネトレーションテストや手動コード・レビューなどのテストを行います。通常、テストを実行する時期や頻度は場合によって異なります。さまざまなツールやスキャンの結果には、誤検知や不整合が含まれています。AppSecチームが何百もの統合されていないポイント・ソリューションAppSecツールで結果の相関付け、重複排除、優先順位付けを行うと、数週間かかる可能性があります。
さらに、テスト結果にどう対処するかという問題があります。開発チームへの作業の割り当て、修正を追跡・監視する適切な方法も考える必要があります。数十、あるいは数百のツールを使用している、さまざまなアタックサーフェスを個別に評価すると、ソフトウェア開発ライフサイクル(SDLC)全体の視点からセキュリティ状況を把握することができず、アナリストとその管理者はAppSecの技術面の説明責任に関する問題を抱えることになります。
AppSecの事業運営面でも説明責任の問題があります。それは、通常、AppSecツールまたはその結果の管理・報告に関する説明責任がほとんど果たされていないということです。
企業のIT部門の意思決定者を対象に調査した結果、DevSecOpsの上位3つの課題が特定されました。その調査結果に、こうした説明責任の問題の原因が示されています。
こうした課題を抱えながら、CISOをはじめとする上級マネージャーや経営幹部は次のような質問を受けます。
自動化、統合、一貫性を欠く低速のAppSecプロセスでは、CISOやAppSecマネージャーはこれらの質問に対する正確・詳細な答えを得ることができません。セキュリティの問題があるソフトウェアがリリースされた場合、リーダーは即刻責任を問われます。説明責任は重大です。
ASOCツールは、AppSecプロセスに自動化、統合、一貫性、透明性をもたらす6つの機能を提供することで、技術面および事業運営面の両方の観点から説明責任の問題を解決します。
ASOCツールは記録システムとしての役割を果たします。使用するスキャナーを問わず、ASOCプラットフォームはAppSecアクティビティの単一の(監査可能な)アーカイブとして機能します。ASOCプラットフォームは、ソフトウェア・テストが実施された日付、検出された問題、問題が解決された日付を記録および追跡します。このデータを使用して、ソフトウェアの3つのアタックサーフェスのすべて、およびSDLC全体を網羅するレポートを生成し、監査を実行することができます。記録システムはAppSecに関する説明責任を果たすために必要な可視性と透明性を提供します。
ASOCツールは記録システム内のすべてのテストおよび修正作業を追跡します。Code Dx ASOCツールは、問題の追跡と修正に関する詳細情報を提供します。
マネージャーおよびAppSecアナリストは、未解決の問題の状況を1画面に表示し、次のようなデータを確認することができます。
また、Jiraとの双方向の統合により、アナリストはJiraチケットを新規に作成したり、既存のJiraチケットにリンクすることができるようになり、これによって開発チームは任意の作業環境で修正を行うことができます。
ツールのオーケストレーションにより、AppSecチームは、以前の生データの結果と修正アクティビティを活用して、組織内のアプリケーションごとに最適なセキュリティ・テスト・ツールの組み合わせを選ぶことができます。各AppSecツールのルールセットは、アプリケーションの重要度、法令遵守要件、組織の全体的な機能に基づいて開発パイプラインごとに最適化できます。
組織内で作業している開発チームの数がいくつあっても、オーケストレーションを活用することで、AppSecチームはセキュリティ・スキャンを制御できます。AppSecチームは、商用/オープンソース/自社開発ツールなど、使用するツールのオーケストレーションを設定できます。開発チームは必要なスキャンを実行してAppSecチームとデータを共有できますが、オーケストレーションを活用すると、特定のスキャンを常に確実に実行し、企業全体で一貫性のある標準化されたAppSecプロセスを実現することが可能になります。
ASOCツールでは、使用しているすべてのアプリケーション・セキュリティ・ツールの情報を統合して一元化されたダッシュボードを利用して、AppSecを単一ウィンドウ(SPOG)で360度可視化できます。1画面でリスクを一元的に可視化し、状況認識やアプリケーション・セキュリティ対策の継続的なセキュリティ監視が可能になります。未解決の結果や解決にかかった平均日数などのデータを視覚化するグラフィックスにより、プロジェクトレベルと事業部レベルでリスクを迅速に可視化し、セキュリティの観点からプロジェクトの健全性を評価するリアルタイムの指標を得ることができます。
Code Dx ASOCツールでは、プロジェクトごとにリスクスコアを割り当てます。レターグレード(A、Bなどのアルファベット表記による評価)のスコアにより、特定のプロジェクトの全体的な品質を素早く把握できます。成績のスコアはパーセンテージ表記され、カスタムコードおよびサードパーティー・コンポーネントで発見された脆弱性の数から生成されます。レターグレード(成績を表すアルファベット)の横に、プロジェクトのリスクスコアの最近1週間の一般的な傾向を示す個別のスコアをパーセンテージで表示することもできます。
上級マネージャーや経営幹部は、リスクスコアを活用することで、プロジェクトのライフサイクルにわたってアプリケーション・セキュリティの進行状況を監視し、潜在的な問題領域を迅速に特定することができます。
指標(メトリックス)は、セキュリティチームと開発チームのプロセス改善に役立ちます。Code Dx ASOCツールに含まれる重要な指標の例:
ダッシュボードには、CISOやAppSecマネージャーがAppSecに関する質問にいつでも回答し、AppSecプロセス全体に対する説明責任を果たすために必要な情報が表示されます。
適切なASOCツールを使用すれば、時間のかかるアプリケーション・セキュリティ・ワークフローを自動化し、SDLC全体のソフトウェア・セキュリティ・リスクをDevOpsのスピードで可視化することができます。AppSecのアナリスト、マネージャー、CISOは、アプリケーション・セキュリティのプロセスに説明責任をもたらすための透明性と可視性を得られます。