diff --git a/customscripts/wifi-monitor-airX b/customscripts/wifi-monitor-airX index 50486a9..07168d8 100644 --- a/customscripts/wifi-monitor-airX +++ b/customscripts/wifi-monitor-airX @@ -1,3 +1,35 @@ -sudo airmon-ng check kill -sudo airmon-ng start wlan1 -sudo airodump-ng wlan1mon +#!/bin/bash +if [ -z $1 ]; then + echo "Defaulting to wlan0 for wifi device" + wifi=wlan0 +else + echo "Using $1 for wifi device" + wifi=$1 +fi + +check_package () { + which -s $1 1>/dev/null 2>/dev/null + package_check=$? + + if [ $package_check -ne 0 ]; then + echo "FAIL: $1 is not installed, exiting" + exit + fi +} + +check_package airmon-ng +check_package airodump-ng + +wifi_mon="${wifi}mon" # name the monitor device + +# seems to be fuckin errything up +sudo airmon-ng check kill # clean up any existing bullshit +echo $? + +sudo airmon-ng start $wifi # start the device +echo $? + +sudo airodump-ng $wifi_mon # put it in monitor mode +echo $? + +echo "Done! Use wifi device $wifi_mon" diff --git a/customscripts/wifi_monitor b/customscripts/wifi_monitor new file mode 100644 index 0000000..cd82a70 --- /dev/null +++ b/customscripts/wifi_monitor @@ -0,0 +1,105 @@ +#!/bin/bash +# usage: +## wifi_monitor +### examples +#### wifi_monitor # DEFAULTS wlan0 and ifconfig method +#### wifi_monitor wlan1 # wlan1 and default ifconfig method +#### wifi_monitor wlan0 i # wlan0 and ip method +#### wifi_monitor wlan0 a # wlan0 and airmon-ng method +## wifi device +### wlan0 [DEFAULT] +## methods: +### ifconfig, iwconfig, if, or iw ifconfig/iwconfig method [DEFAULT] +### ip, iw or i - ip/iw method +### airo, air, airmon-ng, or a - airodump-ng/airmon-ng method + +# set -e # fail on error + +check_package () { + which -s $1 1>/dev/null 2>/dev/null + package_check=$? + + if [ $package_check -ne 0 ]; then + echo "FAIL: $1 is not installed, exiting" + exit + fi +} + +ifconfig_method () { + echo "Defaulting to ifconfig/iwconfig method on $wlan" + + # test packages + check_package ifconfig + check_package iwconfig + + echo "Taking down $wlan" + sudo ifconfig $wlan down + + echo "Setting $wlan to monitor mode" + sudo iwconfig $wlan mode monitor + + echo "Bringing $wlan back up" + sudo ifconfig $wlan up +} + +ip_method () { + echo "Using ip/iw method for monitor mode on $wlan" + + # check packages + check_packages ip + check_package iw + + echo "Taking down $wlan" + sudo ip link set $wlan down + + echo "Setting $wlan to monitor mode" + sudo iw dev $wlan set type monitor + + echo "Bringing $wlan back up" + sudo ip link set $wlan up +} + +airmon_method () { + echo "Using airmon-ng method for monitor mode on $wlan" + + # check packages + check_package airmon-ng + check_package airodump-ng + + wifi_mon="${wlan}mon" # name the monitor device + + echo "Cleaning up any existing processes" + sudo airmon-ng check kill + + echo "Starting $wlan in monitor mode" + sudo airmon-ng start $wlan + + echo "Putting $wlan in monitor mode" + sudo airodump-ng $wlan +} + +echo "Setting up for monitor mode" + +if [ -z $1 ]; then + echo "Defaulting to wlan0 for wifi device" + wlan=wlan0 +else + echo "Using $1 for wifi device" + wlan=$1 +fi + +# default, ifconfig/iwconfig method +if [ -z $2 ]; then # default ifconfig method + ifconfig_method +elif [ "$2" == "ifconfig" -o "$2" == "if" ]; then + ifconfig_method # explicit ifconfig method +elif [ "$2" == "ip" -o "$2" == "i" -o "$2" == "iw" ]; then + ip_method +elif [ "$2" == "airo" -o "$2" == "air" -o "$2" == "airmon-ng" -o "$2" == "a" ]; then + airmon_method +fi + +echo "Current wireless configuration" +iwconfig + +echo "Done!" \ No newline at end of file