Wie man IKE und ESP-Pakete auf einem Palo Alto-Netz Gerät entschlüsselt
Resolution
Übersicht
Wenn IPSec-Tunnel auf einer Palo Alto Networks-Firewall enden, ist es möglich, den Traffic mit den Schlüsseln zu entschlüsseln, die unter ikemg. log registriert sind. Dies kann sehr nützlich sein, um IKE zu stören, und Performance-Probleme mit IPSec-Tunneln wie Paketverlust und außer Bestellung Pakete.
Details
Auf diesem Artikel werden wir zeigen, wie man ikev1 im Haupt-und ESP-Paket mit der folgenden Topologie entschlüsselt. Die gleichen Schritte können mit IKEv2 verwendet werden.
Standardmäßig ist die Debugging-Ebene von ikemgr normal. Um die ausgehandelten Authentifizierungs-und Verschlüsselungsschlüssel zu protokollieren, müssen wir den Debugging-Level erhöhen, um zu entsorgen.
admin @ FW1 > Debug IKE Global Show
SW.ikedaemon.Debug.Global: normal
admin @ FW1 > Debug IKE Global auf Dump
admin @ FW1 > Debug IKE Global Show
SW. ikedaemon. Debug. Global: Dump
Pakete können überall zwischen FW1 und FW2 erfasst werden. Auf unserem Test-Setup nehmen wir Paketaufnahmen auf FW1, die diesem Leitfaden folgen https://Live.paloaltonetworks.com/T5/Learning-articles/how-to-run-a-Packet-Capture/Ta-p/62390.
Um klare und verschlüsselte Daten zwischen User1 und User2 zu erfassen, werden wir die folgenden Filter verwenden.
admin @ FW1 > Debug-dataplane-Paket-Diag-Show-Setting
--------------------------------------------------------------------------------
Paket-Diagnose-Einstellung:
--------------------------------------------------------------------------------
Paketfilter
Aktiviert: Ja
Spiel bereits analysierte Paket: keine
Index 1:192.168.112.104 [0]-> 192.168.125.110 [0], proto 0
Eindringen-Schnittstelle vorhanden, Ausgang-Schnittstelle, ausschließen nicht-IP-
Eindringen-Schnittstelle vorhanden, Ausgang-Schnittstelle, ausschließen nicht-IP-
Index 2:10.193.121.91 [0]-> 10.193.121.93 [0], proto 0
Eindringen-Schnittstelle vorhanden, Ausgang-Schnittstelle, ausschließen nicht-IP-
Eindringen-Schnittstelle vorhanden, Ausgang-Schnittstelle, ausschließen nicht-IP-
--------------------------------------------------------------------------------
Protokollierung
Aktiviert: keine
Log-throttle: Nein
Sync-Log-by-Zecken: Ja
Merkmale:
Zähler:
--------------------------------------------------------------------------------
Paket Erfassung
Aktiviert: Ja
Snaplen: 0
Stage Empfangs: File RX
Erfasst: Pakete-0 Bytes-0
Maximum: Pakete-0 Bytes-0
Stage Sende: File TX
Erfasst: Pakete-1 Bytes-0
Maximum: Pakete-0 Bytes-0
Stage Drop: Datei Dr
Erfasst: Pakete-0 Bytes-0
Maximum: Pakete-0 Bytes-0
An dieser Stelle müssen wir den IPSec-Tunnel abprallen, um einen neuen Verhandlungsprozess zu starten und die IPSec Phase1 und Phase2-Schlüssel zu protokollieren.
admin @ FW1 > Clear VPN IKE-SA Gateway to-fw2
admin @ FW1 > Clear VPN IPSec-SA Tunnel to-fw2
Dann erzeugen Sie den Verkehr zwischen User1 und User2 und stellen Sie sicher, dass der Tunnel oben ist.
admin @ FW1 > VPN IKE-SA Gateway TO-FW2
IKEv1 Phase-1 SAs
GwID/Client IP Peer-Address Gateway Name Rollen Modus Algorithmus FestGelegt Ablauf V ST XT P
hase2
-------------- ------------ ------------ ---- ---- --------- ----------- ---------- - -- -- -
-----
1 10.193.121.93 TO-FW2 init Main PSK/DH2/A128/SHA1 Apr. 08 21:57:04 Apr. 08 22:03:04 v1 12 4 1
Show IKEv1 IKE SA: insgesamt 2 Gateways gefunden 1 IKE SA gefunden.
IKEv1 Phase-2 SAs
GwID/Client IP Peer-Adresse Gateway Name Role Algorithmus SPI (in) SPI (Out) MsgID ST XT
-------------- ------------ ------------ ---- --------- ------- -------- ----- -- --
1 10.193.121.93 TO-FW2 init ESP/DH5/tunl/SHA2 B57366C2 B82D7CDE 547B1BD5 9 1
Show IKEv1 Phase2 SA: insgesamt 2 Gateways gefunden. 1 IKE SA gefunden.
Entschlüsselt ikev1 im Hauptmodus.
Mit ikev1 werden die Identifikations-und Quick-Mode-Nachrichten verschlüsselt. Manchmal ist es notwendig, Sie zu entschlüsseln, um zu überprüfen, welche Parameter zwischen den beiden Peer ausgetauscht wurden.
Hier ist ein Beispiel für eine verschlüsselte Identifikations Nachricht.
Um ikev1 Nachrichten zu entschlüsseln, brauchen wir zwei Informationen.
- Das Cookie des Initiators, das dem Initiator SPI auf der Paket Aufnahme entspricht. 294ff0e604e73f31
- Verschlüsselungsschlüssel, der auf dem ikemgr. Log zu finden ist: Suche nach "Cookie: 294ff0e604e73f31" und Scrollen Sie dann durch die Verhandlungs Nachrichten, bis Sie den endgültigen berechneten Verschlüsselungsschlüssel finden.
2017-04-08 21:57:04 [DEBUG]: Oakley. c:3157: oakley_compute_enckey (): Finale Verschlüsselungsschlüssel berechnet:
2017-04-08 21:57:04 [DEBUG]: Oakley. c:3158: oakley_compute_enckey ():
793f8697 cc0e8cdb 5851496c 0acff14c
Als nächstes gehen Sie zu wireshark > bearbeiten > Einstellungen > Protokolle > ISAKMP > IKEv1 Entschlüsselungs Tabelle und geben Sie den COOKIE und den Verschlüsselungsschlüssel des Initiators ein:
Und hier die entschlüsselte Identifikations Meldung:
ESP-Pakete entschlüsseln.
Die Entschlüsselung von ESP-Paketen folgt dem gleichen Prinzip wie IKE, erfordert aber mehr Parameter.
- Protokoll: IPv4
- Src IP: die Quell-IP der ESP-Pakete, die Sie entschlüsseln möchten. Für das obige Beispiel 10.193.121.91
- DST IP: die Ziel-IP der ESP-Pakete, die Sie entschlüsseln möchten. Für das obige Beispiel 10.193.121.93
- ESP SPI: Sie können es auf der Paket Aufnahme unter Verkapselungs Sicherheit Nutzlast finden. In unserem Beispiel ist es 0xb82d7cde
- Verschlüsselungs-und AuthentifizierungsAlgorithmus: Sie sind Teil der Ausgabe des Befehls "> VPN Flow anzeigen".
admin @ FW1 > VPN Flow Name to-FW2 | anzeigen Match Algorithmus
auth-Algorithmus: SHA256
ENC-Algorithmus: AES128
- Verschlüsselungs-und AuthentifizierungsSchlüssel, der auf dem ikemgr. Log zu finden ist:
21.93 [500]/0, Satype = 141 (ESP), SPI =, wsize = 4, AuthType = 41 (SHA256), enctype = 15 (AES128), saflags = 0x0, Samode = 137 (tunl), reqi
d = 0, lebenslange harte Zeit 180, Bytes 0, Lebensdauer weiche Zeit 146, Bytes 0, enckey len = 16 [3d6991e6a0f888d240c8d539a54676a7], authkey len = 32
[bbac69f722297906c11d7d9038248ba3b509519a0e1e37bb0652752130c8324c]
Als nächstes gehen Sie zu wireshark > bearbeiten > Einstellungen > Protokolle > ESP-Entschlüsselung und wählen "Versuch, verschlüsselte ESP-Nutzlasten zu erkennen/zu entschlüsseln":
Dann bearbeiten Sie die ESP SAs.
Danach sehen Sie die ESP-Pakete entschlüsselt.