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
6d5a1c3e25
commit
4373e4c570
@ -15,7 +15,7 @@
|
||||
Ενώ το IPv6 παραλείπει το πρωτόκολλο ARP που υπάρχει στο IPv4, εισάγει το **ICMPv6** με δύο κύρια μηνύματα:
|
||||
|
||||
- **Αίτηση Γειτόνων (NS)**: Μηνύματα multicast για την επίλυση διευθύνσεων.
|
||||
- **Διαφήμιση Γειτόνων (NA)**: Μοναδικές απαντήσεις σε NS ή αυθόρμητες ανακοινώσεις.
|
||||
- **Διαφήμιση Γειτόνων (NA)**: Απαντήσεις unicast σε NS ή αυθόρμητες ανακοινώσεις.
|
||||
|
||||
Το IPv6 περιλαμβάνει επίσης ειδικούς τύπους διευθύνσεων:
|
||||
|
||||
@ -84,7 +84,7 @@ ip -6 neigh # Display the neighbor table
|
||||
- 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
|
||||
|
||||
@ -96,11 +96,11 @@ site:ipv6./
|
||||
```
|
||||
### Χρήση Ερωτημάτων DNS
|
||||
|
||||
Για να εντοπιστούν διευθύνσεις IPv6, μπορούν να γίνουν ερωτήματα σε ορισμένους τύπους εγγραφών DNS:
|
||||
Για να εντοπιστούν διευθύνσεις IPv6, μπορούν να γίνουν ερωτήσεις σε ορισμένους τύπους εγγραφών DNS:
|
||||
|
||||
- **AXFR**: Ζητά μια πλήρη μεταφορά ζώνης, αποκαλύπτοντας ενδεχομένως ένα ευρύ φάσμα εγγραφών DNS.
|
||||
- **AAAA**: Αναζητά άμεσα διευθύνσεις IPv6.
|
||||
- **ANY**: Ένα ευρύ ερώτημα που επιστρέφει όλες τις διαθέσιμες εγγραφές DNS.
|
||||
- **ANY**: Μια ευρεία ερώτηση που επιστρέφει όλες τις διαθέσιμες εγγραφές DNS.
|
||||
|
||||
### Δοκιμή με Ping6
|
||||
|
||||
@ -195,11 +195,11 @@ 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)
|
||||
```
|
||||
Αποτέλεσμα: μια πλήρης **τοπολογία link-local** (MAC ⇄ IPv6) μέσα σε λίγα δευτερόλεπτα, χωρίς να ενεργοποιήσετε συστήματα IPS/IDS που βασίζονται σε ενεργές σάρωσεις.
|
||||
Αποτέλεσμα: μια πλήρης **τοπολογία link-local** (MAC ⇄ IPv6) μέσα σε λίγα δευτερόλεπτα, χωρίς να ενεργοποιήσετε τα συστήματα IPS/IDS που βασίζονται σε ενεργές σάρωσεις.
|
||||
|
||||
### Spoofing Διαφημίσεων Δρομολογητή (RA)
|
||||
|
||||
Οι IPv6 hosts βασίζονται σε **ICMPv6 Router Advertisements** για την ανακάλυψη της προεπιλεγμένης πύλης. Αν εισάγετε πλαστές RAs **συχνότερα** από τον νόμιμο δρομολογητή, οι συσκευές θα αλλάξουν σιωπηλά σε εσάς ως πύλη.
|
||||
Οι IPv6 hosts βασίζονται σε **ICMPv6 Διαφημίσεις Δρομολογητή** για την ανακάλυψη της προεπιλεγμένης πύλης. Αν εισάγετε πλαστές RAs **συχνότερα** από τον νόμιμο δρομολογητή, οι συσκευές θα αλλάξουν σιωπηλά σε εσάς ως πύλη.
|
||||
```python
|
||||
#!/usr/bin/env python3
|
||||
from scapy.all import *
|
||||
@ -232,31 +232,31 @@ sudo ip6tables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
|
||||
| Σημαία | Σημασία | Επίδραση στη Συμπεριφορά του Πελάτη |
|
||||
|--------|---------|------------------------------------|
|
||||
| **M (Διαχείριση Διεύθυνσης)** | Όταν είναι ρυθμισμένο σε `1`, ο υπολογιστής ΠΡΕΠΕΙ να χρησιμοποιεί **DHCPv6** για να αποκτήσει τη διεύθυνση IPv6 του. | Όλη η διευθυνσιοδότηση προέρχεται από το DHCPv6 – τέλειο για δηλητηρίαση τύπου *mitm6*. |
|
||||
| **O (Άλλη Διαμόρφωση)** | Όταν είναι ρυθμισμένο σε `1`, ο υπολογιστής θα πρέπει να χρησιμοποιεί το **DHCPv6** μόνο για να αποκτήσει *άλλες* πληροφορίες (DNS, NTP, …). | Διεύθυνση μέσω SLAAC, αλλά το DNS μπορεί να παραβιαστεί με το DHCPv6. |
|
||||
| **O (Άλλη Διαμόρφωση)** | Όταν είναι ρυθμισμένο σε `1`, ο υπολογιστής θα πρέπει να χρησιμοποιεί το **DHCPv6** μόνο για να αποκτήσει *άλλες* πληροφορίες (DNS, NTP, …). | Η διεύθυνση εξακολουθεί να προέρχεται μέσω SLAAC, αλλά το DNS μπορεί να παραβιαστεί με το DHCPv6. |
|
||||
| **M=0 / O=0** | Καθαρό δίκτυο SLAAC. | Μόνο κόλπα RA / RDNSS είναι δυνατά – το DHCPv6 δεν θα σταλεί από τους πελάτες. |
|
||||
| **M=1 / O=1** | Μικτό περιβάλλον. | Χρησιμοποιούνται τόσο το DHCPv6 όσο και το SLAAC; η επιφάνεια για παραπλάνηση είναι η μεγαλύτερη. |
|
||||
| **M=1 / O=1** | Μεικτό περιβάλλον. | Χρησιμοποιούνται τόσο το DHCPv6 όσο και το SLAAC; η επιφάνεια για παραποίηση είναι η μεγαλύτερη. |
|
||||
|
||||
Κατά τη διάρκεια ενός pentest, μπορείτε απλά να επιθεωρήσετε τη νόμιμη RA μία φορά και να αποφασίσετε ποιο διανυσμα είναι εφικτό:
|
||||
Κατά τη διάρκεια ενός pentest, μπορείτε απλά να ελέγξετε τη νόμιμη RA μία φορά και να αποφασίσετε ποιο vector είναι εφικτό:
|
||||
```bash
|
||||
sudo tcpdump -vvv -i eth0 'icmp6 && ip6[40] == 134' # capture Router Advertisements
|
||||
```
|
||||
Κοιτάξτε το πεδίο `flags [M,O]` στο dump – δεν απαιτείται μαντεψιά.
|
||||
Look for the `flags [M,O]` field in the dump – no guessing required.
|
||||
|
||||
Το **Prf** (Router Preference) πεδίο μέσα στην κεφαλίδα RA ελέγχει πόσο ελκυστικός φαίνεται ο κακόβουλος δρομολογητής σας όταν υπάρχουν *πολλαπλές* πύλες:
|
||||
The **Prf** (Router Preference) field inside the RA header controls how attractive your rogue router looks when *multiple* gateways are present:
|
||||
|
||||
| Τιμή Prf | Δυαδικό | Σημασία |
|
||||
|----------|---------|---------|
|
||||
| **Υψηλό** | `10` | Οι πελάτες προτιμούν αυτόν τον δρομολογητή από οποιονδήποτε *Μεσαίο*/*Χαμηλό* |
|
||||
| Μεσαίο (προεπιλογή) | `01` | Χρησιμοποιείται από σχεδόν κάθε νόμιμη συσκευή |
|
||||
| Χαμηλό | `00` | Επιλέγεται μόνο όταν δεν υπάρχει καλύτερος δρομολογητής |
|
||||
| Prf value | Binary | Meaning |
|
||||
|-----------|--------|---------|
|
||||
| **High** | `10` | Οι πελάτες προτιμούν αυτό το δρομολογητή από οποιονδήποτε *Μέτριο*/*Χαμηλό* |
|
||||
| Medium (default) | `01` | Χρησιμοποιείται από σχεδόν κάθε νόμιμη συσκευή |
|
||||
| Low | `00` | Επιλέγεται μόνο όταν δεν υπάρχει καλύτερος δρομολογητής |
|
||||
|
||||
Όταν δημιουργείτε το πακέτο με το Scapy μπορείτε να το ρυθμίσετε μέσω της παραμέτρου `prf` όπως φαίνεται παραπάνω (`prf=0x1` → Υψηλό). Συνδυάζοντας **Υψηλό Prf**, ένα **σύντομο διάστημα** και μια **μη μηδενική διάρκεια ζωής** καθιστά την κακόβουλη πύλη σας εξαιρετικά σταθερή.
|
||||
When generating the packet with Scapy you can set it through the `prf` parameter as shown above (`prf=0x1` → High). Combining **High Prf**, a **short interval**, and a **non-zero lifetime** makes your rogue gateway remarkably stable.
|
||||
|
||||
---
|
||||
|
||||
### RDNSS (DNS) Spoofing μέσω RA
|
||||
### RDNSS (DNS) Spoofing via 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, …) το εμπιστεύονται αυτόματα:
|
||||
[RFC 8106](https://datatracker.ietf.org/doc/html/rfc8106) allows adding a **Recursive DNS Server (RDNSS)** option inside a RA. Modern OSes (Win 10 ≥1709, Win 11, macOS Big Sur, Linux systemd-resolved, …) automatically trust it:
|
||||
```python
|
||||
#!/usr/bin/env python3
|
||||
from scapy.all import *
|
||||
@ -276,13 +276,13 @@ ICMPv6NDOptRDNSS(dns=[args.dns],lifetime=args.lifetime))
|
||||
|
||||
send(ra,iface=args.interface,loop=1,inter=args.interval)
|
||||
```
|
||||
Οι πελάτες θα **προθέσουν** το DNS σας στη λίστα αναλυτών τους για την καθορισμένη διάρκεια, παρέχοντας πλήρη DNS hijacking μέχρι να λήξει η τιμή ή να στείλετε μια `lifetime=0` αναίρεση.
|
||||
Οι πελάτες θα **προθέσουν** το DNS σας στη λίστα αναλυτών τους για την καθορισμένη διάρκεια ζωής, παρέχοντας πλήρη hijacking DNS μέχρι να λήξει η τιμή ή να στείλετε μια ανατροπή `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)
|
||||
* Επιθέσεις NTLM relay (WPAD + DNS hijacking)
|
||||
* Παρεμβολή στην εσωτερική ανάλυση ονομάτων χωρίς να αγγίξετε δρομολογητές
|
||||
|
||||
Τυπική χρήση:
|
||||
|
||||
@ -25,7 +25,7 @@ hydra -P wordlist.txt -s 161 10.10.10.1 snmp
|
||||
nmap -sU -p161 --script snmp-ios-config \
|
||||
--script-args creds.snmp=private 192.168.66.1
|
||||
```
|
||||
Το σενάριο αυτοματοποιεί τη λειτουργία αντιγραφής και εκτυπώνει τη διαμόρφωση στο stdout.
|
||||
Το σενάριο αυτοματοποιεί τη λειτουργία αντιγραφής και εκτυπώνει τη διαμόρφωση στην έξοδο stdout.
|
||||
|
||||
2. **Χειροκίνητη ακολουθία `snmpset`**
|
||||
```bash
|
||||
@ -61,35 +61,35 @@ run
|
||||
|
||||
| Έτος | CVE | Επηρεαζόμενη δυνατότητα | Επιπτώσεις |
|
||||
|------|-----|-----------------|--------|
|
||||
| 2025 | CVE-2025-20174 | Υποσύστημα SNMP | Δημιουργημένο πακέτο οδηγεί σε αυθεντικοποιημένο *DoS* (επανεκκίνηση) σε IOS/IOS-XE (v1/v2c/v3). |
|
||||
| 2024 | CVE-2024-20373 | Διαχείριση ACL IPv4 | Λάθος ρυθμισμένες **εκτεταμένες** ACL αποτυγχάνουν σιωπηλά, επιτρέποντας μη αυθεντικοποιημένη SNMP polling όταν είναι γνωστή μια έγκυρη κοινότητα/χρήστης. |
|
||||
| 2025 | (χωρίς CVE ακόμα) | Παράκαμψη περιορισμού ρύθμισης SNMPv3 | Έγκυρος χρήστης v3 μπορεί να κάνει polling από διευθύνσεις που θα έπρεπε να απορρίπτονται. |
|
||||
| 2025 | CVE-2025-20174 | Υποσύστημα SNMP | Ένα κατασκευασμένο πακέτο οδηγεί σε αυθεντικοποιημένο *DoS* (επανεκκίνηση) σε IOS/IOS-XE (v1/v2c/v3). |
|
||||
| 2024 | CVE-2024-20373 | Διαχείριση ACL IPv4 | Κακώς ρυθμισμένα **εκτεταμένα** ACL αποτυγχάνουν σιωπηλά, επιτρέποντας μη αυθεντικοποιημένη SNMP polling όταν είναι γνωστή μια έγκυρη κοινότητα/χρήστης. |
|
||||
| 2025 | (χωρίς CVE ακόμα) | Παράκαμψη περιορισμού ρύθμισης SNMPv3 | Ένας έγκυρος χρήστης v3 μπορεί να κάνει polling από διευθύνσεις που θα έπρεπε να απορρίπτονται. |
|
||||
|
||||
Η εκμεταλλευσιμότητα συχνά εξαρτάται από την κατοχή της κοινότητας ή των διαπιστευτηρίων v3—άλλος ένας λόγος για τον οποίο η βίαιη δοκιμή τους παραμένει σχετική.
|
||||
Η εκμεταλλευσιμότητα συχνά εξαρτάται από την κατοχή της κοινότητας ή των διαπιστευτηρίων v3—ένας ακόμη λόγος για τον οποίο η βίαιη δοκιμή τους παραμένει σχετική.
|
||||
|
||||
---
|
||||
|
||||
## Συμβουλές Σκληροποίησης & Ανίχνευσης
|
||||
|
||||
* Αναβαθμίστε σε μια διορθωμένη έκδοση IOS/IOS-XE (δείτε τη συμβουλή της Cisco για το παραπάνω CVE).
|
||||
* Αναβαθμίστε σε μια διορθωμένη έκδοση IOS/IOS-XE (δείτε τη συμβουλή της Cisco για το CVE παραπάνω).
|
||||
* Προτιμήστε **SNMPv3** με `authPriv` (SHA-256/AES-256) αντί για v1/v2c.
|
||||
```
|
||||
snmp-server group SECURE v3 priv
|
||||
snmp-server user monitor SECURE v3 auth sha <authpass> priv aes 256 <privpass>
|
||||
```
|
||||
* Δέστε το SNMP σε μια διαχείριση VRF και **περιορίστε με *τυπικές* αριθμημένες ACL IPv4** (οι εκτεταμένες ονομαστές ACL είναι επικίνδυνες – CVE-2024-20373).
|
||||
* Δέστε το SNMP σε ένα VRF διαχείρισης και **περιορίστε με *τυπικά* αριθμημένα ACL IPv4** (τα εκτεταμένα ονομασμένα ACL είναι επικίνδυνα – CVE-2024-20373).
|
||||
* Απενεργοποιήστε τις **RW κοινότητες**; αν απαιτείται λειτουργικά, περιορίστε τις με ACL και προβολές:
|
||||
`snmp-server community <string> RW 99 view SysView`
|
||||
* Παρακολουθήστε για:
|
||||
- Κορυφές UDP/161 ή απροσδόκητες πηγές (κανόνες SIEM).
|
||||
- `CISCO-CONFIG-MAN-MIB::ccmHistoryEventConfigSource` γεγονότα που υποδεικνύουν αλλαγές διαμόρφωσης εκτός ζώνης.
|
||||
* Ενεργοποιήστε **SNMPv3 logging** και `snmp-server packetsize 1500` για να μειώσετε ορισμένα vectors DoS.
|
||||
- Εκδηλώσεις `CISCO-CONFIG-MAN-MIB::ccmHistoryEventConfigSource` που υποδεικνύουν αλλαγές διαμόρφωσης εκτός ζώνης.
|
||||
* Ενεργοποιήστε **SNMPv3 logging** και `snmp-server packetsize 1500` για να μειώσετε ορισμένα διανύσματα DoS.
|
||||
|
||||
---
|
||||
|
||||
## Αναφορές
|
||||
|
||||
- Cisco: *Πώς να Αντιγράψετε Διαμορφώσεις Από και Προς Συσκευές Cisco Χρησιμοποιώντας SNMP*
|
||||
- Cisco: *Πώς να αντιγράψετε διαμορφώσεις προς και από συσκευές Cisco χρησιμοποιώντας SNMP*
|
||||
- Cisco Security Advisory *cisco-sa-snmp-uwBXfqww* (CVE-2024-20373)
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user