mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
Translated ['src/generic-methodologies-and-resources/pentesting-network/
This commit is contained in:
parent
e6f0d269a5
commit
3bd4f8e326
@ -30,7 +30,7 @@ Um mit IPv6-Netzwerken zu interagieren, können Sie verschiedene Befehle verwend
|
||||
- **Neighbor Discovery**: Verwenden Sie `ip neigh`, um Geräte zu sehen, die auf der Linkschicht entdeckt wurden.
|
||||
- **alive6**: Ein alternatives Tool zur Entdeckung von Geräten im selben Netzwerk.
|
||||
|
||||
Unten sind einige Beispielbefehle:
|
||||
Nachfolgend einige Beispielbefehle:
|
||||
```bash
|
||||
ping6 –I eth0 -c 5 ff02::1 > /dev/null 2>&1
|
||||
ip neigh | grep ^fe80
|
||||
@ -51,8 +51,8 @@ Gegeben ist eine MAC-Adresse **`12:34:56:78:9a:bc`**, die Link-Local IPv6-Adress
|
||||
### **IPv6-Adresstypen**
|
||||
|
||||
- **Unique Local Address (ULA)**: Für lokale Kommunikation, nicht für das Routing im öffentlichen Internet gedacht. Präfix: **`FEC00::/7`**
|
||||
- **Multicast-Adresse**: Für Eins-zu-viele-Kommunikation. An alle Schnittstellen in der Multicast-Gruppe gesendet. Präfix: **`FF00::/8`**
|
||||
- **Anycast-Adresse**: Für Eins-zu-nächste Kommunikation. An die nächstgelegene Schnittstelle gemäß Routing-Protokoll gesendet. Teil des **`2000::/3`** globalen Unicast-Bereichs.
|
||||
- **Multicast-Adresse**: Für Eins-zu-viele-Kommunikation. An alle Schnittstellen in der Multicast-Gruppe geliefert. Präfix: **`FF00::/8`**
|
||||
- **Anycast-Adresse**: Für Eins-zu-nächster Kommunikation. An die nächstgelegene Schnittstelle gemäß Routing-Protokoll gesendet. Teil des **`2000::/3`** globalen Unicast-Bereichs.
|
||||
|
||||
### **Adresspräfixe**
|
||||
|
||||
@ -106,7 +106,7 @@ Um IPv6-Adressen zu identifizieren, können bestimmte DNS-Record-Typen abgefragt
|
||||
|
||||
Nachdem IPv6-Adressen, die mit einer Organisation verbunden sind, identifiziert wurden, kann das Dienstprogramm `ping6` zum Abtasten verwendet werden. Dieses Tool hilft dabei, die Reaktionsfähigkeit der identifizierten IPv6-Adressen zu bewerten und kann auch dabei helfen, benachbarte IPv6-Geräte zu entdecken.
|
||||
|
||||
## IPv6-Angriffstechniken im lokalen Netzwerk
|
||||
## IPv6 Angriffs-Techniken im lokalen Netzwerk
|
||||
|
||||
Die folgenden Abschnitte behandeln praktische Layer-2 IPv6-Angriffe, die **innerhalb desselben /64-Segments** ausgeführt werden können, ohne einen globalen Präfix zu kennen. Alle unten gezeigten Pakete sind **link-local** und reisen nur durch den lokalen Switch, was sie in den meisten Umgebungen extrem stealthy macht.
|
||||
|
||||
@ -195,7 +195,7 @@ argp.add_argument('-t','--time',type=int,default=0,help='Duration (0 = infinite)
|
||||
a = argp.parse_args()
|
||||
sniff(iface=a.interface,prn=handler,timeout=a.time or None,store=0)
|
||||
```
|
||||
Ergebnis: eine vollständige **link-lokale Topologie** (MAC ⇄ IPv6) in wenigen Sekunden, ohne IPS/IDS-Systeme auszulösen, die auf aktiven Scans basieren.
|
||||
Ergebnis: eine vollständige **link-lokale Topologie** (MAC ⇄ IPv6) in Sekundenschnelle, ohne IPS/IDS-Systeme auszulösen, die auf aktiven Scans basieren.
|
||||
|
||||
### Router Advertisement (RA) Spoofing
|
||||
|
||||
@ -227,6 +227,33 @@ sudo sysctl -w net.ipv6.conf.all.forwarding=1
|
||||
sudo ip6tables -A FORWARD -i eth0 -j ACCEPT
|
||||
sudo ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
|
||||
```
|
||||
#### Router Advertisement Flags (M/O) & Default Router Preference (Prf)
|
||||
|
||||
| Flag | Bedeutung | Auswirkung auf das Client-Verhalten |
|
||||
|------|-----------|-------------------------------------|
|
||||
| **M (Managed Address Configuration)** | Wenn auf `1` gesetzt, muss der Host **DHCPv6** verwenden, um seine IPv6-Adresse zu erhalten. | Die gesamte Adressierung erfolgt über DHCPv6 – perfekt für *mitm6* Stilvergiftung. |
|
||||
| **O (Other Configuration)** | Wenn auf `1` gesetzt, sollte der Host **DHCPv6** nur verwenden, um *andere* Informationen (DNS, NTP, …) zu erhalten. | Adresse weiterhin über SLAAC, aber DNS kann mit DHCPv6 gehijackt werden. |
|
||||
| **M=0 / O=0** | Reines SLAAC-Netzwerk. | Nur RA / RDNSS-Tricks sind möglich – DHCPv6 wird von Clients nicht gesendet. |
|
||||
| **M=1 / O=1** | Gemischte Umgebung. | Sowohl DHCPv6 als auch SLAAC werden verwendet; die Angriffsfläche für Spoofing ist am größten. |
|
||||
|
||||
Während eines Pentests können Sie einfach die legitime RA einmal inspizieren und entscheiden, welcher Vektor machbar ist:
|
||||
```bash
|
||||
sudo tcpdump -vvv -i eth0 'icmp6 && ip6[40] == 134' # capture Router Advertisements
|
||||
```
|
||||
Suchen Sie nach dem Feld `flags [M,O]` im Dump – kein Raten erforderlich.
|
||||
|
||||
Das **Prf** (Router Preference) Feld im RA-Header steuert, wie attraktiv Ihr rogue Router aussieht, wenn *mehrere* Gateways vorhanden sind:
|
||||
|
||||
| Prf-Wert | Binär | Bedeutung |
|
||||
|----------|-------|-----------|
|
||||
| **Hoch** | `10` | Clients bevorzugen diesen Router gegenüber jedem *Mittleren*/*Niedrigen* |
|
||||
| Mittel (Standard) | `01` | Wird von fast jedem legitimen Gerät verwendet |
|
||||
| Niedrig | `00` | Wird nur gewählt, wenn kein besserer Router vorhanden ist |
|
||||
|
||||
Beim Generieren des Pakets mit Scapy können Sie es über den `prf`-Parameter wie oben gezeigt festlegen (`prf=0x1` → Hoch). Die Kombination aus **Hoch Prf**, einem **kurzen Intervall** und einer **nicht null Lebensdauer** macht Ihr rogue Gateway bemerkenswert stabil.
|
||||
|
||||
---
|
||||
|
||||
### RDNSS (DNS) Spoofing über RA
|
||||
|
||||
[RFC 8106](https://datatracker.ietf.org/doc/html/rfc8106) erlaubt das Hinzufügen einer **Recursive DNS Server (RDNSS)** Option innerhalb eines RA. Moderne Betriebssysteme (Win 10 ≥1709, Win 11, macOS Big Sur, Linux systemd-resolved, …) vertrauen darauf automatisch:
|
||||
@ -253,7 +280,7 @@ Clients will **prepend** your DNS to their resolver list for the given lifetime,
|
||||
|
||||
### DHCPv6 DNS Spoofing (mitm6)
|
||||
|
||||
Statt SLAAC verlassen sich Windows-Netzwerke oft auf **stateless DHCPv6** für DNS. [mitm6](https://github.com/rofl0r/mitm6) antwortet automatisch auf `Solicit`-Nachrichten mit einem **Advertise → Reply**-Fluss, der **deine Link-Local-Adresse für 300 Sekunden als DNS zuweist**. Dies ermöglicht:
|
||||
Anstatt SLAAC verlassen sich Windows-Netzwerke oft auf **stateless DHCPv6** für DNS. [mitm6](https://github.com/rofl0r/mitm6) antwortet automatisch auf `Solicit`-Nachrichten mit einem **Advertise → Reply**-Fluss, der **deine Link-Local-Adresse für 300 Sekunden als DNS zuweist**. Dies ermöglicht:
|
||||
|
||||
* NTLM-Relay-Angriffe (WPAD + DNS-Hijacking)
|
||||
* Abfangen interner Namensauflösungen, ohne Router zu berühren
|
||||
@ -262,12 +289,12 @@ Typische Verwendung:
|
||||
```bash
|
||||
sudo mitm6 -i eth0 --no-ra # only DHCPv6 poisoning
|
||||
```
|
||||
### Abwehrmaßnahmen
|
||||
### Verteidigungen
|
||||
|
||||
* **RA Guard / DHCPv6 Guard / ND Inspection** auf verwalteten Switches.
|
||||
* Port-ACLs, die nur die MAC-Adresse des legitimen Routers erlauben, RAs zu senden.
|
||||
* Port-ACLs, die nur die MAC des legitimen Routers erlauben, RAs zu senden.
|
||||
* Überwachen auf **unsolide hochfrequente RAs** oder plötzliche **RDNSS-Änderungen**.
|
||||
* Das Deaktivieren von IPv6 an Endpunkten ist eine vorübergehende Lösung, die oft moderne Dienste beeinträchtigt und blinde Flecken verbirgt – bevorzuge stattdessen L2-Filterung.
|
||||
* Das Deaktivieren von IPv6 an Endpunkten ist eine vorübergehende Lösung, die oft moderne Dienste unterbricht und blinde Flecken verbirgt – bevorzuge stattdessen L2-Filterung.
|
||||
|
||||
## Referenzen
|
||||
|
||||
@ -276,5 +303,6 @@ sudo mitm6 -i eth0 --no-ra # only DHCPv6 poisoning
|
||||
- [RFC 8106 – IPv6 ND DNS Configuration](https://datatracker.ietf.org/doc/html/rfc8106)
|
||||
- [http://www.firewall.cx/networking-topics/protocols/877-ipv6-subnetting-how-to-subnet-ipv6.html](http://www.firewall.cx/networking-topics/protocols/877-ipv6-subnetting-how-to-subnet-ipv6.html)
|
||||
- [https://www.sans.org/reading-room/whitepapers/detection/complete-guide-ipv6-attack-defense-33904](https://www.sans.org/reading-room/whitepapers/detection/complete-guide-ipv6-attack-defense-33904)
|
||||
- [Practical Guide to IPv6 Attacks in a Local Network](https://habr.com/ru/articles/930526/)
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user