DAST (Dynamic Application Security Testing)とは、特定の技術を用いてアプリケーションにセキュリティ脆弱性が内在するか否かを確認する非機能テスト手法であり、ブラックボックステストの一種である。
DASTはソースコードを静的に分析する SAST(Static Application Security Testing)と異なり、Webアプリケーションをブラックボックスとみなし、実際に攻撃を実行することでアプリケーションに内在するセキュリティ脆弱性を検出する。対象となるアプリケーションは、通常はWeb対応のアプリケーション、サービス、APIであり、アプリケーションに対する攻撃をシミュレートすることで、脆弱性を検出する。
DASTで用いられるDASTツールは、アプリケーションをブラックボックスとみなすため、開発言語に依存しないツールであり、SASTでは検出できない依存関係(起動時にロードされる依存関係など)を検出することができる。また、攻撃をシミュレーションするため定常的にテストを実施することができ、定期的に発見される新しい脆弱性の早期発見が可能となるなどのメリットがある。
一方で、ソースコードの評価を行うものではないため、アプリケーションのすべての機能評価を保証するものではない。評価のカバー範囲、カバレッジを上げ、期待する成果を上げるためには、アプリケーションを理解しDASTツールのシナリオを十分に検討、構築する必要がある。