2018-03-15 17:10:10 +00:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
|
|
set -e
|
|
|
|
MODULE_DIR=$(dirname $0)
|
|
|
|
ZGRAB_ROOT=$MODULE_DIR/../..
|
|
|
|
ZGRAB_OUTPUT=$ZGRAB_ROOT/zgrab-output
|
|
|
|
|
|
|
|
mkdir -p $ZGRAB_OUTPUT/pop3
|
|
|
|
|
|
|
|
CONTAINER_NAME=zgrab_pop3
|
|
|
|
|
|
|
|
OUTPUT_ROOT=$ZGRAB_OUTPUT/pop3
|
|
|
|
|
|
|
|
echo "pop3/test: Tests runner for pop3"
|
|
|
|
CONTAINER_NAME=$CONTAINER_NAME $ZGRAB_ROOT/docker-runner/docker-run.sh pop3 > $OUTPUT_ROOT/banner.json
|
2018-03-15 17:25:53 +00:00
|
|
|
CONTAINER_NAME=$CONTAINER_NAME $ZGRAB_ROOT/docker-runner/docker-run.sh pop3 --send-quit > $OUTPUT_ROOT/banner.quit.json
|
|
|
|
CONTAINER_NAME=$CONTAINER_NAME $ZGRAB_ROOT/docker-runner/docker-run.sh pop3 --send-help --send-quit > $OUTPUT_ROOT/help.banner.quit.json
|
|
|
|
CONTAINER_NAME=$CONTAINER_NAME $ZGRAB_ROOT/docker-runner/docker-run.sh pop3 --send-noop --send-help --send-quit > $OUTPUT_ROOT/noop.help.banner.quit.json
|
2018-03-15 17:10:10 +00:00
|
|
|
|
|
|
|
# TODO: the pop3 container does not support STARTTLS; they suggest
|
|
|
|
# wrapping it in stunnel (which would handle the --pop3s case).
|
|
|
|
|
|
|
|
FIELDS="help quit banner noop"
|
|
|
|
status=0
|
|
|
|
for field in $FIELDS; do
|
|
|
|
for file in $(find $OUTPUT_ROOT -iname "*$field*.json"); do
|
|
|
|
echo "check $file for $field"
|
2019-01-18 18:33:23 +00:00
|
|
|
RESULT=$(jp data.pop3.result.$field < $file)
|
2018-03-15 17:10:10 +00:00
|
|
|
if [ "$RESULT" = "null" ]; then
|
|
|
|
echo "Did not find $field in $file [["
|
|
|
|
cat $file
|
|
|
|
echo "]]"
|
|
|
|
status=1
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
done
|
|
|
|
|
|
|
|
# Dump the docker logs
|
|
|
|
echo "pop3/test: BEGIN docker logs from $CONTAINER_NAME [{("
|
|
|
|
docker logs --tail all $CONTAINER_NAME
|
|
|
|
echo ")}] END docker logs from $CONTAINER_NAME"
|