Angenommen, Sie verfügen über eine 802.11-Monitor-Modus-Paketverfolgung eines Wi-Fi-Netzwerks, das WPA2-PSK verwendet hat, und möchten es manuell entschlüsseln, ohne die Funktion von Wireshark zu verwenden.
Zunächst müssen Sie die WPA2-Passphrase oder PSK für das Netzwerk kennen. Wenn Sie das nicht haben, können Sie nichts tun.
Zweitens müssen Sie sich bewusst machen, dass jeder Client bei jeder erneuten Verbindung mit dem AP einen neuen Verschlüsselungsschlüssel (den Pairwise Temporal Key oder PTK) generiert, der nur für diese Verbindung verwendet wird. So erhält jeder Kunde bei jeder neuen Verbindung einen neuen Schlüssel. Diese PTKs werden aus einer Kombination aus der WPA2-Passphrase (PSK) und einigen Zufallszahlen ( Nonces) generiert, die der Client und der AP beim Verbindungsaufbau eines Clients generieren.
Um den Datenverkehr eines bestimmten Clients für eine bestimmte Verbindungssitzung zu entschlüsseln, benötigen Sie diese Nonces. Sie müssen also in Ihrer Paketablaufverfolgung nachsehen, wann der Client verbunden ist, und die EAPOL-Schlüsselframes (den WPA2-Handshake) von Anfang an finden die Verbindung. Schauen Sie in diese Frames, die klar sein werden, und holen Sie sich diese Nonces.
Wenn Sie die WPA2-Passphrase / PSK für das Netzwerk und die Nonces aus dem Handshake für eine bestimmte Verbindung eines bestimmten Clients haben, können Sie die AES-CCMP-Berechnungen durchführen, um den Verkehr von dieser Clientsitzung zu entschlüsseln.
Die Details zur Funktionsweise von AES-CCMP gehen über den Umfang einer SuperUser-Frage hinaus. Sie sind jedoch öffentlich in der 802.11-Spezifikation (frei von der IEEE herunterladbar) und in den AES-Dokumenten, auf die verwiesen wird, dokumentiert.