Googleの?セキュリティスキャナのTsunamiを試すにあたり、Dockerfileを書いたのでおいておく。
公式のgithubに書いてある通りやっていけば実行することは難しくない。
https://github.com/google/tsunami-security-scanner
ただ、取り回しをよくするためにコンテナ化しておいた。
探せばdockerhubにも落ちているだろうけれど。
FROM ubuntu:latest
ENV DEBIAN_FRONTEND=noninteractive
ENV TZ=Asia/Tokyo
RUN apt-get update && apt-get install -y nmap ncrack openjdk-8-jdk curl git
RUN bash -c "$(curl -sfL https://raw.githubusercontent.com/google/tsunami-security-scanner/master/quick_start.sh)"
WORKDIR /root/tsunami
ENV IP=127.0.0.1
CMD java -cp "tsunami-main-0.0.2-SNAPSHOT-cli.jar:/root/tsunami/plugins/*" \
-Dtsunami-config.location=/root/tsunami/tsunami.yaml \
com.google.tsunami.main.cli.TsunamiCli \
--ip-v4-target=${IP} \
--scan-results-local-output-format=JSON \
--scan-results-local-output-filename=/tmp/tsunami-output.json && cat /tmp/tsunami-output.json
Dockerfileのビルドの前に、ホスト環境でのインストールを済ませておく必要がある。
nmapなどのインストールが必要らしい。
sudo apt-get update && sudo apt-get install -y nmap ncrack openjdk-8-jd
k curl git
これをビルドする。
docker build -t tsunami .
対象とするホストのIPは環境変数で設定するようにしたので、引数感覚で実行できる。
docker run -rm -t -e IP=127.0.0.1 tsunami
脆弱性がなければ以下のような結果が返ってくる。
{
"scanStatus": "SUCCEEDED",
"scanStartTimestamp": "2020-07-02T14:09:13.389Z",
"scanDuration": "46.875s",
"fullDetectionReports": {
}
}
脆弱性がみつからなかったからといって安心できるかというと、
今のところそこまで信用はできないかなぁ、と思っている。