Newer
Older
ip6_regex="(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))"
ip4_regex="((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])"
current_time=$(date "+%Y.%m.%d-%H.%M")
report_extension="tex"
if [[ ! -z $format ]]
then
report_extension=$format
fi
root_dir=/shared
xml_dir=xml_files
report_dir=reports
report_subdir=$report_dir/$current_time
report_file=report_$current_time.$report_extension
xml_subdir=$xml_dir/$project/$current_time
report_subdir=$report_dir/$project/$current_time
report_file=report_$project\_$current_time.$report_extension
severity_file=report_$project\_$current_time.severity
function upload {
if [[ -z $upload ]]
then
return
else
cp -r $root_dir/$xml_dir /
cp -r $root_dir/$report_dir /
if [ $upload = "aws" ]
then
python /aws_push.py $1
elif [ $upload = "gcp" ]
then
python /gcp_push.py $1
fi
fi
}
function get_filename(){
echo $1 | tr / -
}
mkdir -p $root_dir/$report_dir
mkdir -p $root_dir/$xml_dir
rm -rf $root_dir/$xml_dir/*
rm -rf $root_dir/$report_dir/*
mkdir -p $root_dir/$report_subdir
while IFS= read -r line
do
current_time=$(date "+%Y.%m.%d-%H.%M.%S")
filename=$(get_filename $line)".xml"
nmap -Pn -sV -oX $root_dir/$xml_subdir/$filename -oN - -v1 -6 $@ --script=vulners/vulners.nse,ssh-auth-methods.nse $line
nmap -Pn -sV -oX $root_dir/$xml_subdir/$filename -oN - -v1 $@ --script=vulners/vulners.nse,ssh-auth-methods.nse $line
upload $xml_subdir/$filename
done < $root_dir/ips.txt
python /output_report.py $root_dir/$xml_subdir $root_dir/$report_subdir/$report_file $root_dir/ips.txt
if [[ $report_extension = "tex" ]]
then
sed -i 's/_/\\_/g' $root_dir/$report_dir/$report_file
sed -i 's/\$/\\\$/g' $root_dir/$report_dir/$report_file
sed -i 's/#/\\#/g' $root_dir/$report_dir/$report_file
sed -i 's/%/\\%/g' $root_dir/$report_dir/$report_file
upload $report_subdir/$report_file