正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

動的アプリケーションセキュリティテスト(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コンソールの出力が表示されます。