tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримайте HackTricks

Основи теорії IPv6

Мережі

IPv6 адреси структуровані для покращення організації мережі та взаємодії пристроїв. IPv6 адреса ділиться на:

  1. Префікс мережі: Перші 48 біт, що визначають сегмент мережі.
  2. ID підмережі: Наступні 16 біт, що використовуються для визначення конкретних підмереж у межах мережі.
  3. Ідентифікатор інтерфейсу: Останні 64 біти, які унікально ідентифікують пристрій у підмережі.

Хоча IPv6 не має протоколу ARP, що використовується в IPv4, він вводить ICMPv6 з двома основними повідомленнями:

  • Запит сусіда (NS): Мультимедійні повідомлення для розв'язання адрес.
  • Реклама сусіда (NA): Уніicast відповіді на NS або спонтанні оголошення.

IPv6 також включає спеціальні типи адрес:

  • Адреса циклічного з'єднання (::1): Еквівалентна 127.0.0.1 в IPv4, для внутрішньої комунікації в межах хоста.
  • Локальні адреси зв'язку (FE80::/10): Для локальних мережевих активностей, не для маршрутизації в інтернеті. Пристрої в одній локальній мережі можуть виявляти один одного, використовуючи цей діапазон.

Практичне використання IPv6 у мережевих командах

Для взаємодії з IPv6 мережами ви можете використовувати різні команди:

  • Ping локальних адрес: Перевірте наявність локальних пристроїв за допомогою ping6.
  • Виявлення сусідів: Використовуйте ip neigh, щоб переглянути пристрої, виявлені на канальному рівні.
  • alive6: Альтернативний інструмент для виявлення пристроїв в одній мережі.

Нижче наведені деякі приклади команд:

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

# Alternatively, use alive6 for neighbor discovery
alive6 eth0

IPv6 адреси можуть бути отримані з MAC-адреси пристрою для локальної комунікації. Ось спрощений посібник про те, як отримати Link-local IPv6 адресу з відомої MAC-адреси, а також короткий огляд типів IPv6 адрес і методів виявлення IPv6 адрес у мережі.

Дано MAC-адресу 12:34:56:78:9a:bc, ви можете побудувати Link-local IPv6 адресу наступним чином:

  1. Перетворіть MAC в формат IPv6: 1234:5678:9abc
  2. Додайте fe80:: і вставте fffe посередині: fe80::1234:56ff:fe78:9abc
  3. Інвертуйте сьомий біт зліва, змінивши 1234 на 1034: fe80::1034:56ff:fe78:9abc

Типи IPv6 адрес

  • Унікальна локальна адреса (ULA): Для локальних комунікацій, не призначена для маршрутизації в публічному інтернеті. Префікс: FEC00::/7
  • Мультимовна адреса: Для комунікації один-до-багатьох. Доставляється до всіх інтерфейсів у мультимовній групі. Префікс: FF00::/8
  • Адреса Anycast: Для комунікації один-до-найближчого. Надсилається до найближчого інтерфейсу відповідно до маршрутизаційного протоколу. Частина глобального унікального діапазону 2000::/3.

Префікси адрес

  • fe80::/10: Link-Local адреси (схожі на 169.254.x.x)
  • fc00::/7: Унікальний локальний унікаст (схожий на приватні діапазони IPv4, такі як 10.x.x.x, 172.16.x.x, 192.168.x.x)
  • 2000::/3: Глобальний унікаст
  • ff02::1: Мультимовна адреса для всіх вузлів
  • ff02::2: Мультимовна адреса для маршрутизаторів

Виявлення IPv6 адрес у мережі

  1. Отримайте MAC-адресу пристрою в мережі.
  2. Отримайте Link-local IPv6 адресу з MAC-адреси.

Спосіб 2: Використання мультимовлення

  1. Надішліть пінг на мультимовну адресу ff02::1, щоб виявити IPv6 адреси в локальній мережі.
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

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

Існує кілька технік для виконання атак MitM в мережах IPv6, таких як:

  • Підробка ICMPv6 сусідніх або маршрутизаторських оголошень.
  • Використання ICMPv6 перенаправлень або повідомлень "Пакет занадто великий" для маніпуляції маршрутизацією.
  • Атака на мобільний IPv6 (зазвичай вимагає вимкнення IPSec).
  • Налаштування підробленого DHCPv6 сервера.

Identifying IPv6 Addresses in the eild

Exploring Subdomains

Метод для знаходження піддоменів, які потенційно пов'язані з адресами IPv6, полягає у використанні пошукових систем. Наприклад, використання шаблону запиту, такого як ipv6.*, може бути ефективним. Конкретно, наступна команда пошуку може бути використана в Google:

bash
site:ipv6./

Використання DNS Запитів

Щоб ідентифікувати IPv6 адреси, можна запитувати певні типи DNS записів:

  • AXFR: Запитує повний трансфер зони, що може виявити широкий спектр DNS записів.
  • AAAA: Безпосередньо шукає IPv6 адреси.
  • ANY: Широкий запит, який повертає всі доступні DNS записи.

Пробивання з Ping6

Після визначення IPv6 адрес, пов'язаних з організацією, можна використовувати утиліту ping6 для пробивання. Цей інструмент допомагає оцінити реакцію виявлених IPv6 адрес і може також допомогти виявити сусідні IPv6 пристрої.

Посилання

tip

Вивчайте та практикуйте AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Вивчайте та практикуйте GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Підтримайте HackTricks