DastardlyとCI/CDプラットフォームを連携する(一般的な手順)

次のCI/CDプラットフォームは、Dastardlyと連携させるための具体的な手順があります:

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_URLhttps://ginandjuice.shop/が設定されています - これはWeb脆弱性スキャナをテストするために設計された、意図的に脆弱性を作り込んだWebアプリケーションです。

次にパイプラインが実行されるとき、DastardlyはDASTARDLY_TARGET_URLで設定したアプリケーションをスキャンします。

上の例のように、マシン上のディレクトリにマップされた場所にDASTARDLY_OUTPUT_FILEを設定する必要があります。

上記の例では、/dastardlyボリュームに現在の作業ディレクトリをマッピングするよう、$(pwd)を使用しています。

Dastardlyの出力ファイルは、任意のJUnit XMLパーサでパース可能なJUnit XMLレポートです。

上記のコマンドを複数回実行すると、Dastardlyの出力したJUnitレポートが上書きされます。

Dastardlyのスキャン結果

Dastardlyのスキャン結果は、スキャン完了時にJUnit XMLファイルとして得られます。スキャンは最大で10分間実行されます。

改善アドバイス

Dastardlyのスキャン結果には、発見されたセキュリティ問題に対する改善アドバイスが含まれています。このアドバイスには、無償のWebセキュリティアカデミーリソースの、関連セクションへのリンクもあります。こちらでWebセキュリティの脆弱性についてさらに詳しく説明しています。

証拠

Dastardlyのスキャン結果には、発見されたセキュリティ問題の証拠が含まれています。この証拠には、問題を見つけるためにDastardlyが送信したリクエストと、アプリケーションから送信されたレスポンスが含まれます。