Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ################## MISCONFIG SCAN TOOL #########################
- CH=$(pwd)/source
- CHEMIN=$(pwd)
- export PATH=$PATH:$CHEMIN/docker
- function help {
- echo " help - Supported options are : -u,-p,-k,-t,-pt,-f"
- echo " Examples :"
- echo " LOCAL SCAN : bash tool.sh -u user -p password -pt linux"
- echo " REMOTE SCAN 1 : bash tool.sh -u user -p password -t 192.168.1.6 -pt linux"
- echo " REMOTE SCAN 2 : bash tool.sh -u user -k ~/.ssh/id_rsa -t 192.168.1.6 -pt linux"
- echo " FILE 1 : bash tool.sh -f1 file1.txt (target/user/password/plateform) "
- echo " FILE 2 : bash tool.sh -f2 file2.txt (target/user/key/plateform)"
- echo " Available platforms are : apache, cis-kubernetes, cis-rhel6,cis-windowsServer2012,linux,"
- echo " linux-patch,nginx,php,postgres,ssh,stig-rhel7,windows-baseline"
- }
- N=$(($#/2))
- M=$(($#%2))
- echo ""
- if [[ $# -eq 0 ]] ; then
- help
- exit 0
- fi
- if [[ $N -gt 4 || $M -eq 1 ]] ; then
- echo "Syntax error"
- help
- exit 0
- fi
- while [[ $# -gt 0 ]]
- do
- key="$1"
- case $key in
- -h|--help)
- help
- shift # past argument
- shift # past value
- ;;
- -t|--target)
- TARGET="$2"
- shift # past argument
- shift # past value
- ;;
- -u|--user)
- USER="$2"
- shift # past argument
- shift # past value
- ;;
- -p|--password)
- PASSWORD="$2"
- shift # past argument
- shift # past value
- ;;
- -k|--key)
- KEY="$2"
- shift # past argument
- shift # past value
- ;;
- -f1|--file1)
- FILE1="$2"
- shift # past argument
- shift # past value
- ;;
- -f2|--file2)
- FILE2="$2"
- shift # past argument
- shift # past value
- ;;
- -pt|--plateform)
- PLATEFORM="$2"
- shift # past argument
- shift # past value
- ;;
- *) # unknown option
- esac
- done
- function print-message {
- restore='\033[0m'
- yellow='\033[1;33m'
- echo -e "$yellow Les résultats des audits sont exportés dans : $CHEMIN/reports $restore"
- echo -e "$yellow Prière de les rendre à AB-Consulting pour avoir le rapport final $restore"
- }
- function local1 {
- echo "--------------------------- Local SCAN ---------------------------"
- TARGET=$(ifconfig docker0 | grep "inet " | tr -s " " | awk '{print $2}')
- docker run -e input=1 -e user=$USER -e password=$PASSWORD -e target=$TARGET -e plateform=$PLATEFORM -v $CHEMIN/reports:/share/reports misconfig-scan-tool
- }
- function remote1 {
- echo "--------------------------- REMOTE SCAN 1 ---------------------------"
- docker run -e input=2 -e user=$USER -e password=$PASSWORD -e target=$TARGET -e plateform=$PLATEFORM -v $CHEMIN/reports:/share/reports misconfig-scan-tool
- }
- function remote2 {
- echo "--------------------------- REMOTE SCAN 2 ---------------------------"
- docker run -e input=3 -e user=$USER -e key=$KEY -e target=$TARGET -e plateform=$PLATEFORM -v $CHEMIN/reports:/share/reports -v $KEY:/share/private_key misconfig-scan-tool
- }
- function file1 {
- echo "--------------------------- FILE 1 ---------------------------"
- while read p; do
- TARGET=$(echo $p | cut -d ',' -f1)
- USER=$(echo $p | cut -d ',' -f2)
- PASSWORD=$(echo $p | cut -d ',' -f3)
- PLATEFORM=$(echo $p | cut -d ',' -f4)
- if [[ -n "$TARGET" && -n "$USER" && -n "$PASSWORD" && -n "$PLATEFORM" ]]; then
- docker run -e input=2 -e user=$USER -e password=$PASSWORD -e target=$TARGET -e plateform=$PLATEFORM -v $CHEMIN/reports:/share/reports misconfig-scan-tool
- fi
- done <$FILE1
- }
- function file2 {
- echo "--------------------------- FILE 2 ---------------------------"
- while read p; do
- TARGET=$(echo $p | cut -d ',' -f1)
- USER=$(echo $p | cut -d ',' -f2)
- KEY=$(echo $p | cut -d ',' -f3)
- PLATEFORM=$(echo $p | cut -d ',' -f4)
- if [[ -n "$TARGET" && -n "$USER" && -n "$KEY" && -n "$PLATEFORM" ]]; then
- docker run -e input=3 -e user=$USER -e key=$KEY -e target=$TARGET -e plateform=$PLATEFORM -v $CHEMIN/reports:/share/reports misconfig-scan-tool
- fi
- done <$FILE2
- }
- if [[ -n "$USER" && -n "$PASSWORD" && -n "$PLATEFORM" && "$N" -eq 3 ]]; then
- local1
- elif [[ -n "$USER" && -n "$KEY" && -n "$PLATEFORM" && "$N" -eq 3 ]]; then
- local2
- elif [[ -n "$USER" && -n "$PASSWORD" && -n "$TARGET" && -n "$PLATEFORM" && "$N" -eq 4 ]]; then
- remote1
- elif [[ -n "$USER" && -n "$KEY" && -n "$TARGET" && -n "$PLATEFORM" && "$N" -eq 4 ]]; then
- remote2
- elif [[ -n "$FILE1" && "$N" -eq 1 ]]; then
- file1
- elif [[ -n "$FILE2" && "$N" -eq 1 ]]; then
- file2
- else echo "Syntax Error"
- help
- fi
- print-message
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement