Cómo descifrar paquetes IKE y ESP en un dispositivo de redes palo alto

Cómo descifrar paquetes IKE y ESP en un dispositivo de redes palo alto

86456
Created On 09/25/18 20:36 PM - Last Modified 06/12/23 10:32 AM


Resolution


Resumen

 

Cuando los túneles IPSEC terminan en un cortafuegos de Palo Alto Networks, es posible descifrar el tráfico utilizando las claves registradas en ikemg. log. Esto puede ser muy útil para solucionar problemas de IKE y problemas de performance con túneles IPSEC, como por ejemplo, la pérdida de paquetes y los paquetes fuera de servicio.

 

Detalles

 

En este artículo, ilustraremos cómo descifrar IKEv1 en el modo principal y el paquete ESP utilizando la topología siguiente. Los mismos pasos se pueden utilizar con IKEv2.

topología. png

De forma predeterminada, el nivel de depuración de ikemgr es normal. Para registrar las claves de autenticación y encriptación negociadas, debemos aumentar el nivel de depuración para volcar.

 

admin @ FW1 > Debug IKE global show

SW.ikedaemon.Debug.global: normal

admin @ FW1 > Debug IKE global on dump

admin @ FW1 > Debug IKE global show

SW. ikedaemon. Debug. global: dump

 

Los paquetes se pueden capturar en cualquier lugar entre FW1 y FW2. En nuestra configuración de prueba, tomaremos capturas de paquetes en FW1 siguiendo esta guía https://Live.paloaltonetworks.com/T5/Learning-articles/How-to-Run-a-Packet-Capture/TA-p/62390.

Para capturar datos claros y encriptados entre user1 y usuario2 vamos a utilizar los siguientes filtros.

 

admin @ FW1 > depurar paquete de plan de bits-Diag Mostrar configuración

--------------------------------------------------------------------------------

Ajuste de la diagnosis del paquete:

--------------------------------------------------------------------------------

Filtro de paquetes

  Habilitada: sí

  Paquetes previamente analizado partido: no

  Index 1:192.168.112.104 [0]-> 192.168.125.110 [0], proto 0

           interfaz de entrada, interfaz de salida, excluir a no-IP

           interfaz de entrada, interfaz de salida, excluir a no-IP

  Índice 2:10.193.121.91 [0]-> 10.193.121.93 [0], proto 0

           interfaz de entrada, interfaz de salida, excluir a no-IP

           interfaz de entrada, interfaz de salida, excluir a no-IP

--------------------------------------------------------------------------------

Inicio de sesión

  Habilitado: no

  Log-Throttle: no

  Sync-log-by-ticks: sí

  Características:

  Contadores:

--------------------------------------------------------------------------------

Captura de paquetes

  Habilitada: sí

  Snaplen: 0

  Etapa de recepción: archivo RX

    Capturado: paquetes-0 bytes-0

    Máximo: paquetes-0 bytes-0

  Etapa de transmisión: archivo TX

    Capturado: paquetes-1 bytes-0

    Máximo: paquetes-0 bytes-0

  Caída de escenario: archivo Dr

    Capturado: paquetes-0 bytes-0

    Máximo: paquetes-0 bytes-0

  

En este punto, necesitamos rebotar el túnel IPSec para iniciar un nuevo proceso de negociación y registrar las claves IPSec phase1 y Phase2.

 

admin @ FW1 > Clear VPN IKE-SA Gateway to-FW2

admin @ FW1 > Clear VPN IPSec-SA túnel a-FW2

 

A continuación, genere tráfico entre user1 y usuario2 y asegúrese de que el túnel está arriba.

 

admin @ FW1 > show VPN IKE-SA Gateway TO-FW2

 

IKEv1 Phase-1 SAs

GwID/cliente IP peer-Address Gateway nombre algoritmo modo de función establecido vencimiento 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

 

Mostrar IKEv1 IKE SA: total de 2 gateways encontrados. 1 IKE SA encontrado.

 

IKEv1 Phase-2 SAs

GwID/cliente IP peer-Address Gateway Name algoritmo de rol SPI (in) SPI (out) MsgID ST XT

--------------  ------------           ------------           ---- ---------          -------  -------- -----    -- --

1 10.193.121.93 TO-FW2 init ESP/DH5/Tunl/SHA2 B57366C2 B82D7CDE 547B1BD5 9 1

 

Mostrar IKEv1 Phase2 SA: total de 2 gateways encontrados. 1 IKE SA encontrado.

 

DesCifre IKEv1 en el modo principal.

 

Con IKEv1, los mensajes de identificación y modo rápido están encriptados. A veces es necesario descifrarlos para verificar qué parámetros se intercambiaron entre los dos pares.

 

He aquí un ejemplo de un mensaje de identificación encriptado.

 

mensaje de identificación encriptado. png
Para desencriptar los mensajes de IKEv1, necesitamos dos piezas de información.

 

  • Cookie del iniciador que corresponde al iniciador SPI en la captura de paquetes. 294ff0e604e73f31
  • Clave de encriptación que se puede encontrar en el ikemgr. log: buscar "cookie: 294ff0e604e73f31" y, a continuación, desplácese por los mensajes de negociación hasta que encuentre la clave de cifrado final calculado.

2017-04-08 21:57:04 [Debug]: Oakley. c:3157: oakley_compute_enckey (): clave de encriptación final calculada:

2017-04-08 21:57:04 [DEBUG]: Oakley. c:3158: oakley_compute_enckey ():

793f8697 cc0e8cdb 5851496c 0acff14c

 

A continuación, vaya a Wireshark > editar > preferencias > protocolos > ISAKMP > IKEv1 tabla de desencriptación e introduzca la clave de cookie y cifrado del iniciador:

 

 IKEv1 desencriptación Table. png

 

Y aquí está el mensaje de identificación descifrado:

  mensaje de identificación desencriptado. png

 

 

Descifrar paquetes ESP.

 

Desencriptar paquetes ESP sigue el mismo principio que IKE, pero requiere más parámetros.

 

ESP ecrypted. png

 

  • Protocolo: IPv4
  • IP src: la IP de origen de los paquetes ESP que desea descifrar. Para el ejemplo arriba 10.193.121.91
  • DST IP: la IP de destino de los paquetes ESP que desea descifrar. Para el ejemplo arriba 10.193.121.93
  • ESP SPI: puede encontrarlo en la captura de paquetes bajo la carga de seguridad de encapsulación. En nuestro ejemplo, es 0xb82d7cde
  • Algoritmo de encriptación y autenticación: son parte de la salida del comando ' > show VPN Flow '.

admin @ FW1 > Mostrar nombre de flujo VPN a-FW2 | algoritmo de coincidencia

        algoritmo de autenticación: SHA256

        algoritmo enc: AES128

 

  • Clave de encriptación y autenticación que se puede encontrar en el ikemgr. log:

21.93 [500]/0, satype = 141 (ESP), SPI =, wsize = 4, AuthType = 41 (SHA256), enctype = 15 (AES128), saflags = 0X0, Samode = 137 (Tunl), reqi

d = 0, tiempo duro de por vida 180, bytes 0, tiempo suave de por vida 146, bytes 0, enckey Len = 16 [3d6991e6a0f888d240c8d539a54676a7], authkey Len = 32

[bbac69f722297906c11d7d9038248ba3b509519a0e1e37bb0652752130c8324c]

 

A continuación, vaya a Wireshark > editar > preferencias > protocolos > desencriptación ESP y seleccione "intentar detectar/descodificar las cargas útiles de ESP encriptadas":

 

 intento de detec y descodificar. png

 

A continuación, edite la SAS ESP.

 ESP SA. png

 

Después de eso verás los paquetes ESP desencriptados.

 

ESP desencriptado. png



Actions
  • Print
  • Copy Link

    https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA10g000000ClinCAC&lang=es&refURL=http%3A%2F%2Fknowledgebase.paloaltonetworks.com%2FKCSArticleDetail

Choose Language