mirror of
				https://github.com/drwetter/testssl.sh.git
				synced 2025-10-26 05:20:59 +01:00 
			
		
		
		
	
		
			
				
	
	
		
			43 lines
		
	
	
		
			1020 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			43 lines
		
	
	
		
			1020 B
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
| #/bin/sh -e
 | |
| 
 | |
| # utility which converts grepable nmap outout to testssl's file input
 | |
| 
 | |
| usage() {
 | |
|      cat << EOF
 | |
| 
 | |
| usage:
 | |
| 
 | |
|     "$0 filename<.gmap>":               looks for filename/filename.gmap and converts into basename \$(filename)-testssl.txt"
 | |
|     "$0 filename<.gmap>" "scan option": same as before, only adds testssl.sh scan option in front of IPs"
 | |
| 
 | |
| EOF
 | |
|      exit 0
 | |
| }
 | |
| 
 | |
| [ -z "$1" ] && usage
 | |
| FNAME="$1"
 | |
| OPT2ADD="${2:-}"
 | |
| 
 | |
| if ! grep -q gmap <<< "$FNAME"; then
 | |
|      FNAME="$FNAME.gmap"
 | |
| fi
 | |
| [ ! -e $FNAME ] && echo "$FNAME not readable" && exit 2
 | |
| 
 | |
| 
 | |
| TARGET_FNAME=${FNAME%.*}-testssl.txt
 | |
| 
 | |
| # test whether there's more than one "open" per line
 | |
| while read -r oneline; do
 | |
|      if [ $(echo "${oneline}" | tr ',' '\n' | grep -wc 'open') -gt 1 ]; then
 | |
|           # not supported currently
 | |
|           echo "$FNAME contains at least on one line more than 1x\"open\""
 | |
|           exit 3
 | |
|      fi
 | |
| done < "$FNAME"
 | |
| 
 | |
| awk '/\<open\>/ { print "'"${OPT2ADD}"' " $2":"$5 }' "$FNAME" | sed 's/\/open.*$//g' >"$TARGET_FNAME"
 | |
| exit $?
 | |
| 
 | |
| #  vim:ts=5:sw=5
 | |
| 
 |