DHCPv6

Tip

Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE) Aprende y practica Hacking en Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Apoya a HackTricks

DHCPv6 vs. DHCPv4 Comparación de tipos de mensajes

A comparative view of DHCPv6 and DHCPv4 message types is presented in the table below:

Tipo de mensaje DHCPv6Tipo de mensaje DHCPv4
Solicit (1)DHCPDISCOVER
Advertise (2)DHCPOFFER
Request (3), Renew (5), Rebind (6)DHCPREQUEST
Reply (7)DHCPACK / DHCPNAK
Release (8)DHCPRELEASE
Information-Request (11)DHCPINFORM
Decline (9)DHCPDECLINE
Confirm (4)none
Reconfigure (10)DHCPFORCERENEW
Relay-Forw (12), Relay-Reply (13)none

Explicación detallada de los tipos de mensaje de DHCPv6:

  1. Solicit (1): Iniciado por un cliente DHCPv6 para encontrar servidores disponibles.
  2. Advertise (2): Enviado por servidores en respuesta a un Solicit, indicando disponibilidad para el servicio DHCP.
  3. Request (3): Los clientes usan esto para solicitar direcciones IP o prefijos de un servidor específico.
  4. Confirm (4): Usado por un cliente para verificar si las direcciones asignadas siguen siendo válidas en la red, típicamente después de un cambio de red.
  5. Renew (5): Los clientes envían esto al servidor original para extender la validez de las direcciones o actualizar configuraciones.
  6. Rebind (6): Enviado a cualquier servidor para extender la validez de las direcciones o actualizar configuraciones, especialmente cuando no se recibe respuesta a un Renew.
  7. Reply (7): Los servidores usan esto para proporcionar direcciones, parámetros de configuración, o para reconocer mensajes como Release o Decline.
  8. Release (8): Los clientes informan al servidor que deje de usar una o más direcciones asignadas.
  9. Decline (9): Enviado por los clientes para reportar que las direcciones asignadas están en conflicto en la red.
  10. Reconfigure (10): Los servidores solicitan a los clientes que inicien transacciones para nuevas configuraciones o configuraciones actualizadas.
  11. Information-Request (11): Los clientes solicitan parámetros de configuración sin asignación de dirección IP.
  12. Relay-Forw (12): Los agentes relay reenvían mensajes a servidores.
  13. Relay-Repl (13): Los servidores responden a agentes relay, quienes luego entregan el mensaje al cliente.

Notas rápidas del protocolo (Offensive)

  • Los clientes DHCPv6 usan el puerto UDP 546 y los servidores/relays usan el puerto UDP 547.
  • Los clientes envían Solicit a All_DHCP_Relay_Agents_and_Servers (ff02::1:2); los servidores/relays escuchan ahí. All_DHCP_Servers es ff05::1:3.
  • Las identidades de cliente y servidor se llevan en OPTION_CLIENTID y OPTION_SERVERID usando DUIDs. Esto es útil para fingerprinting del mismo host a través de cambios de dirección.
  • La asignación de direcciones se solicita con IA_NA (dirección no temporal) y la delegación de prefijo con IA_PD (prefijo de router aguas abajo).

Quick Recon

# Basic DHCPv6 traffic capture
sudo tcpdump -vvv -i <IFACE> 'udp port 546 or udp port 547'

# THC-IPv6: discover DHCPv6 servers and their options
sudo atk6-dump_dhcp6 <IFACE>

Rogue DHCPv6 Server (Address/DNS Hijack)

# THC-IPv6: rogue DHCPv6 server advertising address + DNS
sudo atk6-fake_dhcps6 <IFACE> <PREFIX>/<LEN> <DNSv6>

Este es un servidor DHCPv6 malicioso on-link genérico. En redes Windows/AD, combínalo con relays de nivel superior (ver la página IPv6) si quieres NTLM relay primitives.

Agotamiento del pool / Starvation de DHCPv6

# THC-IPv6: exhaust the server's address pool
sudo atk6-flood_dhcpc6 <IFACE>

Precaución sobre el mensaje Reconfigure

DHCPv6 Reconfigure no se acepta ciegamente: los clientes solo lo aceptan si enviaron explícitamente OPTION_RECONF_ACCEPT. Por defecto, un cliente está poco dispuesto a aceptar mensajes Reconfigure, por lo que ataques Reconfigure poco sólidos suelen fallar a menos que observes/induzcas esa opción.

Pentesting IPv6

Referencias

Tip

Aprende y practica Hacking en AWS:HackTricks Training AWS Red Team Expert (ARTE)
Aprende y practica Hacking en GCP: HackTricks Training GCP Red Team Expert (GRTE) Aprende y practica Hacking en Azure: HackTricks Training Azure Red Team Expert (AzRTE)

Apoya a HackTricks