動的アプリケーションセキュリティテスト(DAST)
- プラン: Ultimate
- 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated
DASTプロキシベースのアナライザーは、GitLab 16.9で非推奨となり、GitLab 17.3で削除されました。これは破壊的な変更です。DASTプロキシベースのアナライザーからDASTバージョン5への移行方法については、プロキシベースの移行ガイドを参照してください。DASTバージョン4のブラウザベースのアナライザーからDASTバージョン5への移行方法については、ブラウザベースの移行ガイドを参照してください。
動的アプリケーションセキュリティテスト(DAST)は、実行中のWebアプリケーションやAPIに対して自動化されたペネトレーションテストを実行して、脆弱性を検出します。DASTは、クロスサイトスクリプティング(XSS)、SQLインジェクション(SQLi)、クロスサイトリクエストフォージェリ(CSRF)などの重大な脅威に対して、ハッカーの手法を自動化し、実際の攻撃をシミュレートすることで、他のセキュリティツールでは検出できない脆弱性や設定ミスを明らかにします。
DASTは完全に言語に依存せず、アプリケーションを外部から検査します。DASTスキャンは、CI/CDパイプラインで実行したり、スケジュールに基づいて実行したり、オンデマンドで手動で実行したりできます。ソフトウェア開発ライフサイクルの中でDASTを使用すると、本番環境にデプロイする前にアプリケーションの脆弱性を検出できます。DASTはソフトウェアセキュリティの基盤となるコンポーネントであり、他のGitLabセキュリティツールと組み合わせて使用して、アプリケーションの包括的なセキュリティ評価を提供する必要があります。
概要については、Dynamic Application Security Testing (DAST) - Advanced Security Testing(動的アプリケーションセキュリティテスト(DAST)- 高度なセキュリティテスト)をご覧ください。
GitLab DAST
GitLab DASTアナライザーとAPIセキュリティアナライザーは独自のランタイムツールであり、最新のWebアプリケーションとAPIに対して幅広いセキュリティカバレッジを提供します。
ニーズに応じてDASTアナライザーを使用してください。
- 既知の脆弱性について、シングルページWebアプリケーションを含むWebベースのアプリケーションをスキャンするには、DASTアナライザーを使用します。
- 既知の脆弱性についてAPIをスキャンするには、APIセキュリティアナライザーを使用します。GraphQL、REST、SOAPなどのテクノロジーがサポートされています。
アナライザーは、アプリケーションを保護するで説明されているアーキテクチャパターンに従います。各アナライザーは、CI/CDテンプレートを使用してパイプラインで設定でき、Dockerコンテナでスキャンを実行します。スキャンはDASTレポートアーティファクトを出力します。GitLabはこれを使用して、ソースブランチとターゲットブランチのスキャン結果の差に基づいて、検出された脆弱性を判断します。
スキャン結果を表示する
検出された脆弱性は、マージリクエスト、パイプラインセキュリティタブ、脆弱性レポートに表示されます。
パイプラインは、SASTやDASTスキャンなど、複数のジョブで構成される場合があります。何らかの理由でジョブの完了に失敗した場合、セキュリティダッシュボードにDASTスキャナーの出力は表示されません。たとえば、DASTジョブが完了してもSASTジョブが失敗した場合、セキュリティダッシュボードにはDASTの結果は表示されません。失敗すると、アナライザーは終了コードを出力します。
スキャンされたURLの一覧を表示する
DASTのスキャンが完了すると、マージリクエストページにスキャンされたURLの数が表示されます。詳細を表示を選択すると、スキャンされたURLの一覧を含むWebコンソールの出力が表示されます。