Dastardlyは、あらゆるCI/CDプラットフォームと連携できます。連携により、既存のCI/CDパイプラインのステージとして、DastardlyのWeb脆弱性スキャンを実行できます。
Dastardlyスキャンを実行するために必要なマシンスペックは、Dastardlyのシステム要件を参照してください。
DastardlyとCI/CDパイプラインを連携させるには、パイプラインスクリプトに次のdocker run
コマンドを記述します:
docker run --user $(id -u) --rm -v $(pwd):/dastardly -e \ DASTARDLY_TARGET_URL=https://ginandjuice.shop -e \ DASTARDLY_OUTPUT_FILE=/dastardly/dastardly-report.xml \ public.ecr.aws/portswigger/dastardly:latest
DASTARDLY_TARGET_URL
には、スキャンするアプリケーションの開始URLを指定します。
この例では、DASTARDLY_TARGET_URL
にhttps://ginandjuice.shop/
が設定されています - これはWeb脆弱性スキャナをテストするために設計された、意図的に脆弱性を作り込んだWebアプリケーションです。
次にパイプラインが実行されるとき、DastardlyはDASTARDLY_TARGET_URLで
設定したアプリケーションをスキャンします。
上の例のように、マシン上のディレクトリにマップされた場所にDASTARDLY_OUTPUT_FILE
を設定する必要があります。
上記の例では、/dastardly
ボリュームに現在の作業ディレクトリをマッピングするよう、$(pwd)
を使用しています。
Dastardlyの出力ファイルは、任意のJUnit XMLパーサでパース可能なJUnit XMLレポートです。
上記のコマンドを複数回実行すると、Dastardlyの出力したJUnitレポートが上書きされます。
Dastardlyのスキャン結果は、スキャン完了時にJUnit XMLファイルとして得られます。スキャンは最大で10分間実行されます。
Dastardlyのスキャン結果には、発見されたセキュリティ問題に対する改善アドバイスが含まれています。このアドバイスには、無償のWebセキュリティアカデミーリソースの、関連セクションへのリンクもあります。こちらでWebセキュリティの脆弱性についてさらに詳しく説明しています。
Dastardlyのスキャン結果には、発見されたセキュリティ問題の証拠が含まれています。この証拠には、問題を見つけるためにDastardlyが送信したリクエストと、アプリケーションから送信されたレスポンスが含まれます。