tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks

Théorie de base de l'IPv6

RĂ©seaux

Les adresses IPv6 sont structurées pour améliorer l'organisation du réseau et l'interaction des dispositifs. Une adresse IPv6 est divisée en :

  1. Préfixe de réseau : Les 48 premiers bits, déterminant le segment de réseau.
  2. ID de sous-réseau : Les 16 bits suivants, utilisés pour définir des sous-réseaux spécifiques au sein du réseau.
  3. Identifiant d'interface : Les 64 derniers bits, identifiant de maniÚre unique un dispositif au sein du sous-réseau.

Bien que l'IPv6 omette le protocole ARP trouvé dans l'IPv4, il introduit ICMPv6 avec deux messages principaux :

  • Solicitation de voisin (NS) : Messages multicast pour la rĂ©solution d'adresse.
  • Annonce de voisin (NA) : RĂ©ponses unicast aux NS ou annonces spontanĂ©es.

L'IPv6 incorpore également des types d'adresses spéciaux :

  • Adresse de boucle (::1) : Équivalente Ă  127.0.0.1 de l'IPv4, pour la communication interne au sein de l'hĂŽte.
  • Adresses Link-Local (FE80::/10) : Pour les activitĂ©s de rĂ©seau local, non pour le routage Internet. Les dispositifs sur le mĂȘme rĂ©seau local peuvent se dĂ©couvrir en utilisant cette plage.

Utilisation pratique de l'IPv6 dans les commandes réseau

Pour interagir avec les réseaux IPv6, vous pouvez utiliser diverses commandes :

  • Ping des adresses Link-Local : VĂ©rifiez la prĂ©sence de dispositifs locaux en utilisant ping6.
  • DĂ©couverte de voisin : Utilisez ip neigh pour voir les dispositifs dĂ©couverts au niveau de la couche de liaison.
  • alive6 : Un outil alternatif pour dĂ©couvrir des dispositifs sur le mĂȘme rĂ©seau.

Voici quelques exemples de commandes :

bash
ping6 –I eth0 -c 5 ff02::1 > /dev/null 2>&1
ip neigh | grep ^fe80

# Alternatively, use alive6 for neighbor discovery
alive6 eth0

Les adresses IPv6 peuvent ĂȘtre dĂ©rivĂ©es de l'adresse MAC d'un appareil pour la communication locale. Voici un guide simplifiĂ© sur la façon de dĂ©river l'adresse IPv6 Link-local Ă  partir d'une adresse MAC connue, ainsi qu'un aperçu des types d'adresses IPv6 et des mĂ©thodes pour dĂ©couvrir des adresses IPv6 au sein d'un rĂ©seau.

Étant donnĂ© une adresse MAC 12:34:56:78:9a:bc, vous pouvez construire l'adresse IPv6 Link-local comme suit :

  1. Convertir la MAC au format IPv6 : 1234:5678:9abc
  2. Préfixer fe80:: et insérer fffe au milieu : fe80::1234:56ff:fe78:9abc
  3. Inverser le septiĂšme bit Ă  partir de la gauche, changeant 1234 en 1034 : fe80::1034:56ff:fe78:9abc

Types d'adresses IPv6

  • Adresse locale unique (ULA) : Pour les communications locales, non destinĂ©e au routage sur Internet public. PrĂ©fixe : FEC00::/7
  • Adresse multicast : Pour la communication un-Ă -plusieurs. LivrĂ©e Ă  toutes les interfaces dans le groupe multicast. PrĂ©fixe : FF00::/8
  • Adresse anycast : Pour la communication un-Ă -proche. EnvoyĂ©e Ă  l'interface la plus proche selon le protocole de routage. Partie de la plage unicast globale 2000::/3.

Préfixes d'adresses

  • fe80::/10 : Adresses Link-Local (similaire Ă  169.254.x.x)
  • fc00::/7 : Unicast local unique (similaire aux plages IPv4 privĂ©es comme 10.x.x.x, 172.16.x.x, 192.168.x.x)
  • 2000::/3 : Unicast global
  • ff02::1 : Multicast Tous les NƓuds
  • ff02::2 : Multicast NƓuds Routeurs

Découverte des adresses IPv6 au sein d'un réseau

  1. Obtenez l'adresse MAC d'un appareil au sein du réseau.
  2. DĂ©rivez l'adresse IPv6 Link-local Ă  partir de l'adresse MAC.

MĂ©thode 2 : Utilisation du multicast

  1. Envoyez un ping à l'adresse multicast ff02::1 pour découvrir les adresses IPv6 sur le réseau local.
bash
service ufw stop # Stop the firewall
ping6 -I <IFACE> ff02::1 # Send a ping to multicast address
ip -6 neigh # Display the neighbor table

Attaques Man-in-the-Middle (MitM) IPv6

Plusieurs techniques existent pour exécuter des attaques MitM dans des réseaux IPv6, telles que :

  • Usurpation des annonces de voisins ou de routeurs ICMPv6.
  • Utilisation de messages ICMPv6 de redirection ou "Packet Too Big" pour manipuler le routage.
  • Attaque sur IPv6 mobile (nĂ©cessite gĂ©nĂ©ralement que l'IPSec soit dĂ©sactivĂ©).
  • Mise en place d'un serveur DHCPv6 malveillant.

Identification des adresses IPv6 dans le champ

Exploration des sous-domaines

Une mĂ©thode pour trouver des sous-domaines potentiellement liĂ©s Ă  des adresses IPv6 consiste Ă  tirer parti des moteurs de recherche. Par exemple, utiliser un modĂšle de requĂȘte comme ipv6.* peut ĂȘtre efficace. Plus prĂ©cisĂ©ment, la commande de recherche suivante peut ĂȘtre utilisĂ©e dans Google :

bash
site:ipv6./

Utilisation des requĂȘtes DNS

Pour identifier les adresses IPv6, certains types d'enregistrements DNS peuvent ĂȘtre interrogĂ©s :

  • AXFR : Demande un transfert complet de zone, pouvant rĂ©vĂ©ler un large Ă©ventail d'enregistrements DNS.
  • AAAA : Recherche directement des adresses IPv6.
  • ANY : Une requĂȘte large qui renvoie tous les enregistrements DNS disponibles.

Exploration avec Ping6

AprĂšs avoir identifiĂ© les adresses IPv6 associĂ©es Ă  une organisation, l'utilitaire ping6 peut ĂȘtre utilisĂ© pour l'exploration. Cet outil aide Ă  Ă©valuer la rĂ©activitĂ© des adresses IPv6 identifiĂ©es et peut Ă©galement aider Ă  dĂ©couvrir des dispositifs IPv6 adjacents.

Références

tip

Apprenez et pratiquez le hacking AWS :HackTricks Training AWS Red Team Expert (ARTE)
Apprenez et pratiquez le hacking GCP : HackTricks Training GCP Red Team Expert (GRTE)

Soutenir HackTricks