インタラクティブ・アプリケーション・セキュリティ・テスト(IAST)ソリューションは、DevOpsパイプラインに摩擦を生じさせることなく、組織が継続的にテストを実施できるよう支援します。
従来のセキュリティでは、開発チームはコードのセキュリティ対策としてテストを実行し、運用チームはファイアウォールなどの保護機能が本番環境で機能することを確認します。アクセス制御やその他のタスクは、セキュリティの専門家や管理者が対応します。DevSecOpsでは、バージョン管理とCI/CDパイプラインを活用し、導入前に、すべてのチームにわたり、セキュリティ・タスクの構成と管理を自動的に行います。
DevSecOpsは、ソフトウェア開発ライフサイクル(SDLC)全体にセキュリティを組み込むべきだという必要性に応えるために、DevOpsから進化しました。セキュリティをSLDCの中だけでシフトさせるのではなく、あらゆる場所でシフトさせれば、DevOpsチームは、速度を犠牲にすることなく、安全なアプリケーションを継続的に提供できるようになります。テスト、トリアージ、およびリスク軽減をCI/CDワークフローそのものに組み込み、ポストプロダクションで修正を行った場合にかかる時間とコストを削減できます。継続的なテストを自動化することで、DevSecOpsは、SDLCの最後にセキュリティを「追加」するのではなく、開発者がほぼリアルタイムでコード内のセキュリティ問題を修正できるようにします。DevSecOpsの範囲は、計画および設計からコーディング、構築、テスト、リリースまで、SDLC全体に及び、リアルタイムの連続フィードバック・ループと知見を提供します。
組織がDevSecOpsを促進する重要な方法の一つは、自動化された継続的なテストを可能にすることであり、これはDevSecOpsの重要な柱である継続的な統合とデリバリの概念と合致するものです。すべてのビジネスはソフトウェア・ビジネスですから、製品提供の速度を維持することは、いかにうまく脆弱性を見つけ出し、いかに早く修正できるかにかかっています。
最近のソフトウェア開発は、マイクロサービス、サーバーレス、クラウドネイティブの各システムを含む複雑な分散型コンピューティング・モデルに基づいています。そのため、システムに関わるすべてのエンドポイントを特定したり、すべてのAPI呼び出しを追跡したりすることが困難な場合があります。さらに、APIに共通の標準が存在しないことも、この問題を複雑にしています。組織にとって、Webアプリが成長するということは、速度や効率が向上することを意味しますが、APIが普及するということは、第三者が悪用する恐れのあるアタックサーフェスが一層広い範囲に及ぶことを意味します。
組織は、インバウンドとアウトバウンドの両方のAPI呼び出しとサービス・エンドポイントを含む、データ・フローと攻撃パターンのビジュアル・マップを提供し、結果を自動的に検証する仕組みと、チーム全体のステークホルダーを調整するリアルタイムの洞察を提供できるソリューションを必要としています。しかし、CI/CDパイプラインの速度を落とすことなく、これを実現する自動化システムを構築することは、難しい課題です。
インタラクティブ・アプリケーション・セキュリティ・テスト・ソリューション(IAST)は、動的テストを実施して、実行中のWebアプリケーションで発見されたセキュリティ・リスクの特定と管理を支援します。IASTは、ソフトウェア・インストルメンテーションを使用して、アプリケーションの実行状況を監視し、リアルタイムでパフォーマンス情報を収集します。IASTソリューションは、実行中のアプリケーションにエージェントをデプロイし、手動および自動テストによって開始された、アプリケーションのすべてのやり取りを継続的に分析します。IASTはアプリケーションそのものをテストするのではなく、インスツルメンテーション層にプラグインして、受動的なオブザーバーとしてすべてのランタイム・アクティビティを監視します。
このアプローチにより、IASTソリューションは、確立された機能テストとセキュリティ・テストのワークフローの一部として自動的に機能することが可能となり、検出された脆弱性に自動検証を実施して、検出結果のノイズを最小限に抑え、真のリスクを浮き彫りにします。この柔軟な展開と受動的な観察機能により、DevOpsパイプラインでIASTソリューションを有効にした組織は、結果として手順を追加することなく機能テストを使用してセキュリティの問題を発見できるようになります。
IASTソリューションには次のような利点があります
データフロー・マッピング、エンドポイントの探索、テスト・カバレッジの結果が、アプリケーションで使用されるデータやテクノロジーの種類と、これらのリソースの動作や相互作用の仕組みを考慮している
シノプシスのSeeker IASTは、Webアプリケーションのセキュリティ態勢に比類のない可視性をもたらします。Seekerは、コンプライアンス標準(OWASP Top 10、PCI DSS、GDPR、CAPEC、CWE/SANS Top 25など)に対する脆弱性の傾向を特定します。Seekerは、セキュリティ・チームが機密データを特定および追跡できるようにして、機密データが安全に扱われ、暗号化の弱かったり暗号化されていなかったりするログ・ファイルやデータベースに保存されないようにします。SeekerはCI/CDパイプラインにシームレスに統合されており、DevOpsワークフローを妨げることなく、継続的なアプリケーション・セキュリティのテストと検証を可能にします。
Seekerは、DevSecOps専用のツールです。インストルメンテーション技術とランタイム分析を利用して、Webアプリケーションのセキュリティ上の脆弱性を継続的に監視、特定、検証するもので、一般的には統合テストやQA、または本番前のデプロイ時に使用されます。Seekerは、アプリケーションがオンプレミスまたはクラウド環境で実行されているか、マイクロサービスやサーバーレス機能で構成されているか、APIを多用しているかどうかにかかわらず、あらゆる最新のアプリケーション開発ニーズに対応します。Seekerのエージェントは、実行中のアプリで実施されるすべてのテスト・アクションを追跡できます。発見された事象は自動的に検証され、結果はリアルタイムで表示されるため、追加のスキャンは必要ありません。
アクティブ検証は、トリアージの効果を高め、特定された脆弱性を再テストし、悪用される可能があるかどうかを検証します。これにより、誤検知を排除し、セキュリティ・チームと開発チームが真のリスクを優先して修正できるようになります。
Seekerのダッシュボードには、データフローと悪意のあるパラメータの影響を明瞭に可視化する詳細ペインがあります。これにより、脆弱性が悪用の可能性ありと判断されたか、誤検知だったのかを一目で識別することができます。このように、セキュリティ・チームや侵入テスト担当者にとっては時間の節約となり、ツールでは解決できない問題に時間を集中させることができ、組織のビジネスが求めるスピードで安全なソフトウェアを構築できるようになります。