<summary><strong>Nauka hakowania AWS od zera do bohatera z</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLANY SUBSKRYPCYJNE**](https://github.com/sponsors/carlospolop)!
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Podziel się swoimi sztuczkami hakowania, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) repozytoriów na GitHubie.
**Wskazówka dotycząca nagrody za błąd**: **Zarejestruj się** na platformie **Intigriti**, premium **platformie do nagród za błędy stworzonej przez hakerów, dla hakerów**! Dołącz do nas na [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) już dziś i zacznij zarabiać nagrody aż do **100 000 USD**!
To jest **najłatwiejszy** i **najszybszy** sposób na odkrycie, czy host jest aktywny czy nie.\
Możesz spróbować wysłać kilka pakietów **ICMP** i **oczekiwać odpowiedzi**. Najprostszym sposobem jest wysłanie **żądania echo** i oczekiwanie na odpowiedź. Możesz to zrobić za pomocą prostego polecenia `ping` lub używając `fping` do **zakresów**.\
Możesz także użyć **nmap** do wysyłania innych typów pakietów ICMP (to pozwoli ominąć filtry dla standardowego żądania-odpowiedzi echo ICMP).
Bardzo często zdarza się, że wszystkie rodzaje pakietów ICMP są filtrowane. W takim przypadku jedyną opcją sprawdzenia, czy host jest aktywny, jest **sprawdzenie otwartych portów**. Każdy host ma **65535 portów**, więc jeśli masz "duży" zakres, nie możesz testować, czy **każdy port** każdego hosta jest otwarty czy nie, ponieważ zajęłoby to zbyt dużo czasu.\
W takim przypadku potrzebujesz **szybkiego skanera portów** ([masscan](https://github.com/robertdavidgraham/masscan)) oraz listy **najczęściej używanych portów:**
Możesz również spróbować sprawdzić, czy **jest otwarty jakiś port UDP**, aby zdecydować, czy powinieneś **zwrócić większą uwagę** na **hosta**. Ponieważ usługi UDP zazwyczaj **nie odpowiadają****żadnymi danymi** na zwykły pusty pakiet sondy UDP, trudno powiedzieć, czy port jest filtrowany czy otwarty. Najprostszym sposobem na podjęcie decyzji jest wysłanie pakietu związane z działającą usługą, a ponieważ nie wiesz, która usługa jest uruchomiona, powinieneś spróbować najbardziej prawdopodobnej na podstawie numeru portu:
Linia nmap zaproponowana wcześniej przetestuje **top 1000 portów UDP** w każdym hoście w obrębie zakresu **/24**, ale nawet to zajmie **>20 minut**. Jeśli potrzebujesz **szybkich wyników**, możesz użyć [**udp-proto-scanner**](https://github.com/portcullislabs/udp-proto-scanner): `./udp-proto-scanner.pl 199.66.11.53/24` To wyśle te **sondy UDP** do ich **oczekiwanego portu** (dla zakresu /24 zajmie to tylko 1 minutę): _DNSStatusRequest, DNSVersionBindReq, NBTStat, NTPRequest, RPCCheck, SNMPv3GetRequest, chargen, citrix, daytime, db2, echo, gtpv1, ike,ms-sql, ms-sql-slam, netop, ntp, rpc, snmp-public, systat, tftp, time, xdmcp._
Jeśli jesteś w sieci, jedną z pierwszych rzeczy, które chcesz zrobić, jest **odkrycie innych hostów**. W zależności od **tego, jak wiele hałasu** możesz/chcesz wygenerować, można wykonać różne działania:
Zauważ, że techniki omówione w [_**Odkrywanie hostów z zewnątrz**_](./#discovering-hosts-from-the-outside) (_Odkrywanie portów TCP/HTTP/UDP/SCTP_) mogą być również **zastosowane tutaj**.\
Jednak, ponieważ znajdujesz się w **tym samym sieci**, możesz zrobić **więcej rzeczy**:
* Jeśli **pingujesz****adres rozgłoszeniowy podsieci**, ping powinien dotrzeć do **każdego hosta** i mogą oni do Ciebie **odpowiedzieć**: `ping -b 10.10.5.255`
* Pingując **adres rozgłoszeniowy sieci**, możesz nawet znaleźć hosty wewnątrz **innych podsieci**: `ping -b 255.255.255.255`
* Użyj flag `-PE`, `-PP`, `-PM` narzędzia `nmap` do przeprowadzenia odkrywania hostów wysyłając odpowiednio żądania **ICMPv4 echo**, **znacznik czasu** i **maskę podsieci:**`nmap -PE -PM -PP -sn -vvv -n 10.12.5.0/24`
Wake On Lan służy do **włączania** komputerów za pomocą **wiadomości sieciowej**. Pakiet magiczny używany do włączenia komputera to po prostu pakiet, w którym podany jest **MAC Dst**, a następnie jest on **powtarzany 16 razy** w tym samym pakiecie.\
Następnie tego rodzaju pakiety są zazwyczaj wysyłane w ramce **ethernet 0x0842** lub w pakiecie **UDP na port 9**.\
Jeśli nie jest podany **żaden \[MAC]**, pakiet jest wysyłany do **rozgłoszeniowego ethernetu** (a rozgłoszeniowy MAC będzie powtarzany).
* Wyślij **pakiet UDP** i sprawdź odpowiedź _**ICMP unreachable**_, jeśli port jest **zamknięty** (w wielu przypadkach ICMP będzie **filtrowany**, więc nie otrzymasz informacji, czy port jest zamknięty czy otwarty).
* Wyślij **sformatowane datagramy**, aby wywołać odpowiedź z **usługi** (np. DNS, DHCP, TFTP i inne, jak wymienione w _nmap-payloads_). Jeśli otrzymasz **odpowiedź**, to port jest **otwarty**.
**SCTP (Protokół Kontroli Transmisji Strumieniowej)** został zaprojektowany do użytku obok **TCP (Protokół Kontroli Transmisji)** i **UDP (Protokół Datagramów Użytkownika)**. Jego głównym celem jest ułatwienie transportu danych telefonicznych w sieciach IP, odzwierciedlając wiele cech niezawodności znalezionych w **Systemie Sygnalizacyjnym 7 (SS7)**. **SCTP** jest podstawowym składnikiem rodziny protokołów **SIGTRAN**, które mają na celu transport sygnałów SS7 w sieciach IP.
Wsparcie dla **SCTP** jest dostarczane przez różne systemy operacyjne, takie jak **IBM AIX**, **Oracle Solaris**, **HP-UX**, **Linux**, **Cisco IOS** i **VxWorks**, co wskazuje na jego szerokie akceptowanie i użyteczność w dziedzinie telekomunikacji i sieci.
**Źle skonfigurowane routery, firewalle i urządzenia sieciowe** czasami odpowiadają na sondy sieciowe, używając **niepublicznych adresów źródłowych**. **tcpdump** może być wykorzystany do identyfikacji pakietów otrzymywanych z adresów prywatnych podczas testowania. W szczególności, na Kali Linux, pakiety mogą być przechwytywane na interfejsie **eth2**, który jest dostępny z publicznego Internetu. Warto zauważyć, że jeśli Twoje środowisko jest za NAT-em lub Firewallem, takie pakiety prawdopodobnie zostaną odfiltrowane.
Podczas podsłuchiwania możesz dowiedzieć się szczegółów dotyczących zakresów IP, rozmiarów podsieci, adresów MAC i nazw hostów, przeglądając przechwycone ramki i pakiety. Jeśli sieć jest źle skonfigurowana lub przełączana sieć jest obciążona, atakujący mogą przechwycić poufne materiały poprzez pasywne podsłuchiwanie sieci.
Możesz użyć narzędzi takich jak [https://github.com/lgandx/PCredz](https://github.com/lgandx/PCredz) do analizy poświadczeń z pliku pcap lub interfejsu na żywo.
ARP Spoofing polega na wysyłaniu fałszywych odpowiedzi ARP w celu wskazania, że IP maszyny ma MAC naszego urządzenia. Następnie ofiara zmieni tabelę ARP i będzie kontaktować się z naszym urządzeniem za każdym razem, gdy chce skontaktować się z podszywanym adresem IP.
set arp.spoof.targets <IP>#Specific targets to ARP spoof (default=<entiresubnet>)
set arp.spoof.whitelist #Specific targets to skip while spoofing
set arp.spoof.fullduplex true #If true, both the targets and the gateway will be attacked, otherwise only the target (default=false)
set arp.spoof.internal true #If true, local connections among computers of the network will be spoofed, otherwise only connections going to and coming from the Internet (default=false)
Przepełnij tabelę CAM przełącznika, wysyłając wiele pakietów z różnymi adresami MAC źródłowych. Gdy tabela CAM jest pełna, przełącznik zaczyna zachowywać się jak koncentrator (rozsyłając cały ruch).
Protokół **Dynamic Trunking Protocol (DTP)** został zaprojektowany jako protokół warstwy łącza w celu ułatwienia automatycznego systemu trunkowania, pozwalając przełącznikom automatycznie wybierać porty w trybie trunk (Trunk) lub non-trunk. Wdrożenie **DTP** jest często postrzegane jako wskaźnik suboptymalnego projektu sieci, podkreślając konieczność ręcznej konfiguracji trunków tylko tam, gdzie jest to konieczne, oraz zapewnienia odpowiedniej dokumentacji.
Domyślnie porty przełącznika są ustawione na tryb Dynamic Auto, co oznacza, że są gotowe do rozpoczęcia trunkowania, jeśli zostaną do tego skłonione przez sąsiedni przełącznik. Problem związany z bezpieczeństwem pojawia się, gdy pentester lub atakujący podłącza się do przełącznika i wysyła ramkę DTP Desirable, zmuszając port do przejścia w tryb trunk. Ta czynność umożliwia atakującemu wyliczenie VLAN-ów poprzez analizę ramek STP i obejście segmentacji VLAN poprzez konfigurację interfejsów wirtualnych.
Obecność DTP w wielu przełącznikach domyślnie może być wykorzystana przez przeciwników do naśladowania zachowania przełącznika, co umożliwia dostęp do ruchu we wszystkich VLAN-ach. Skrypt [_**dtpscan.sh**_](https://github.com/commonexploits/dtpscan) jest wykorzystywany do monitorowania interfejsu, ujawniając, czy przełącznik jest w trybie domyślnym, trunk, dynamic, auto lub access—ten ostatni jest jedyną konfiguracją odporną na ataki VLAN hopping. Narzędzie to ocenia stan podatności przełącznika.
Jeśli zidentyfikowano podatność sieciową, narzędzie _**Yersinia**_ może być użyte do "włączenia trunkowania" za pomocą protokołu DTP, umożliwiając obserwację pakietów ze wszystkich VLAN-ów.
Aby wyliczyć VLAN-y, można również wygenerować ramkę DTP Desirable za pomocą skryptu [**DTPHijacking.py**](https://github.com/in9uz/VLANPWN/blob/main/DTPHijacking.py)**. N**ie przerywaj skryptu pod żadnym pozorem. Wstrzykuje on ramki DTP Desirable co trzy sekundy. **Dynamicznie tworzone kanały trunkowe na przełączniku istnieją tylko przez pięć minut. Po upływie pięciu minut kanał trunkowy zostanie usunięty.**
Chciałbym zwrócić uwagę, że **Dostępny/Żądany (0x03)** oznacza, że ramka DTP jest typu Żądany, co informuje port o przełączeniu się w tryb Trunk. A **802.1Q/802.1Q (0xa5)** oznacza typ enkapsulacji **802.1Q**.
Omawiany atak **Dynamic Trunking i tworzenie wirtualnych interfejsów oraz odkrywanie hostów w innych** VLAN-ach jest **automatycznie wykonywany** przez narzędzie: [**https://github.com/nccgroup/vlan-hopping---frogger**](https://github.com/nccgroup/vlan-hopping---frogger)
Jeśli atakujący zna wartość **MAC, IP i ID VLAN ofiary**, może spróbować **podwójnie otagować ramkę** z jego wyznaczonym VLAN-em i VLAN-em ofiary, a następnie wysłać pakiet. Ponieważ **ofiara nie będzie mogła się połączyć z powrotem** z atakującym, najlepszą opcją dla atakującego jest komunikacja za pomocą UDP z protokołami, które mogą wykonać interesujące akcje (np. SNMP).
Inną opcją dla atakującego jest uruchomienie **skanu portów TCP podając fałszywy adres IP kontrolowany przez atakującego i dostępny dla ofiary** (prawdopodobnie przez internet). Następnie atakujący mógłby podsłuchiwać w drugim hostingu, którym włada, czy otrzymuje jakieś pakiety od ofiary.
Jeśli masz **dostęp do przełącznika, do którego jesteś bezpośrednio podłączony**, masz możliwość **ominięcia segmentacji VLAN** w sieci. Po prostu **zmień port na tryb trunk** (inaczej znany jako trunk), stwórz wirtualne interfejsy z identyfikatorami docelowych VLAN-ów i skonfiguruj adres IP. Możesz spróbować żądać adresu dynamicznie (DHCP) lub skonfigurować go statycznie. To zależy od sytuacji.
W pewnych środowiskach, takich jak sieci bezprzewodowe dla gości, ustawienia **izolacji portów (znane również jako prywatne VLAN-y)** są wdrożone w celu zapobieżenia bezpośredniej komunikacji klientów podłączonych do punktu dostępu bezprzewodowego. Zidentyfikowano jednak technikę, która może obejść te środki izolacji. Ta technika wykorzystuje brak list ACL sieciowych lub ich niewłaściwą konfigurację, umożliwiając przekierowanie pakietów IP przez router, aby dotrzeć do innego klienta w tej samej sieci.
Atak jest przeprowadzany poprzez stworzenie **pakietu, który przenosi adres IP docelowego klienta, ale z adresem MAC routera**. Powoduje to błędne przekierowanie pakietu przez router do klienta docelowego. To podejście jest podobne do tego używanego w atakach podwójnego znakowania, gdzie możliwość kontrolowania hosta dostępnego dla ofiary jest wykorzystywana do wykorzystania luki w zabezpieczeniach.
1.**Tworzenie Pakietu:** Pakiet jest specjalnie przygotowany tak, aby zawierał adres IP docelowego klienta, ale z adresem MAC routera.
2.**Wykorzystanie Zachowania Routera:** Przygotowany pakiet jest wysyłany do routera, który, ze względu na konfigurację, przekierowuje pakiet do klienta docelowego, omijając izolację zapewnioną przez ustawienia prywatnego VLAN-u.
VTP (VLAN Trunking Protocol) centralizuje zarządzanie VLAN-ami. Wykorzystuje numery rewizji do utrzymania integralności bazy danych VLAN; każda modyfikacja zwiększa ten numer. Przełączniki przyjmują konfiguracje z wyższymi numerami rewizji, aktualizując swoje bazy danych VLAN.
* **Serwer VTP:** Zarządza VLAN-ami—tworzy, usuwa, modyfikuje. Wysyła ogłoszenia VTP do członków domeny.
* **Klient VTP:** Odbiera ogłoszenia VTP w celu zsynchronizowania swojej bazy danych VLAN. Ta rola jest ograniczona od modyfikacji lokalnej konfiguracji VLAN.
* **Transparentny VTP:** Nie uczestniczy w aktualizacjach VTP, ale przekazuje ogłoszenia VTP. Niepodatny na ataki VTP, utrzymuje stały numer rewizji równy zero.
* **Ogłoszenie Podsumowujące:** Wysyłane przez serwer VTP co 300 sekund, przenoszące istotne informacje domenowe.
* **Ogłoszenie Podzbiór:** Wysyłane po zmianach konfiguracji VLAN.
* **Żądanie Ogłoszenia:** Wystawiane przez klienta VTP w celu żądania Ogłoszenia Podsumowującego, zazwyczaj w odpowiedzi na wykrycie wyższego numeru rewizji konfiguracji.
Układy VTP są podatne na ataki wyłącznie poprzez porty trunkowe, ponieważ ogłoszenia VTP krążą wyłącznie przez nie. Scenariusze ataków po ataku DTP mogą skierować się w stronę VTP. Narzędzia takie jak Yersinia mogą ułatwić ataki VTP, mające na celu usunięcie bazy danych VLAN, skutecznie zakłócając sieć.
Wysyłając wiele ramek BPDUs TCP (Topology Change Notification) lub Conf (BPDUs wysyłane podczas tworzenia topologii), przełączniki są przeciążone i przestają działać poprawnie.
Kiedy zostanie wysłane TCP, tabela CAM przełączników zostanie usunięta w ciągu 15s. Następnie, jeśli wysyłasz ciągle ten rodzaj pakietów, tabela CAM będzie ciągle restartowana (co 15 sekund) i gdy zostanie zrestartowana, przełącznik zachowuje się jak koncentrator.
Atakujący symuluje zachowanie przełącznika, aby stać się korzeniem STP sieci. Wtedy więcej danych będzie przechodzić przez niego. Jest to interesujące, gdy jesteś podłączony do dwóch różnych przełączników.\
To jest osiągane poprzez wysyłanie pakietów CONF BPDUs mówiących, że wartość **priorytetu** jest mniejsza niż rzeczywisty priorytet rzeczywistego przełącznika korzenia.
**Jeśli atakujący jest podłączony do 2 przełączników, może stać się korzeniem nowego drzewa, a cały ruch między tymi przełącznikami będzie przechodził przez niego** (atakuje typu MITM).
yersinia stp -attack 6 #This will cause a DoS as the layer 2 packets wont be forwarded. You can use Ettercap to forward those packets "Sniff" --> "Bridged sniffing"
Protokół Odkrywania CISCO (CDP) jest niezbędny do komunikacji między urządzeniami CISCO, umożliwiając im **identyfikację siebie nawzajem i udostępnianie szczegółów konfiguracji**.
CDP jest skonfigurowany do rozgłaszania informacji przez wszystkie porty, co może stanowić ryzyko dla bezpieczeństwa. Atakujący, po podłączeniu do portu przełącznika, może zastosować narzędzia do podsłuchiwania sieci, takie jak **Wireshark**, **tcpdump** lub **Yersinia**. Ta akcja może ujawnić wrażliwe dane na temat urządzenia sieciowego, w tym jego model i wersję systemu Cisco IOS, na którym działa. Następnie atakujący może skierować się przeciwko konkretnym podatnościom zidentyfikowanej wersji Cisco IOS.
Bardziej agresywne podejście polega na uruchomieniu ataku typu Denial of Service (DoS), przytłaczając pamięć przełącznika, udając prawidłowe urządzenia CISCO. Poniżej znajduje się sekwencja poleceń do zainicjowania takiego ataku przy użyciu Yersinii, narzędzia sieciowego przeznaczonego do testowania:
Podczas tego ataku jednostka centralna przełącznika oraz tabela sąsiadów CDP są silnie obciążone, prowadząc często do tzw. **"paraliżu sieci"** z powodu nadmiernego zużycia zasobów.
Telefony VoIP, coraz bardziej zintegrowane z urządzeniami IoT, oferują funkcjonalności takie jak odblokowywanie drzwi lub sterowanie termostatami za pomocą specjalnych numerów telefonów. Jednak ta integracja może stwarzać ryzyko bezpieczeństwa.
Narzędzie [**voiphopper**](http://voiphopper.sourceforge.net) zostało zaprojektowane do emulowania telefonu VoIP w różnych środowiskach (Cisco, Avaya, Nortel, Alcatel-Lucent). Odkrywa identyfikator VLAN sieci głosowej za pomocą protokołów takich jak CDP, DHCP, LLDP-MED i 802.1Q ARP.
Istnieją dwa rodzaje ataków typu **DoS** przeprowadzanych przeciwko serwerom DHCP. Pierwszy polega na **symulowaniu wystarczającej liczby fałszywych hostów, aby zużyć wszystkie możliwe adresy IP**.\
Ten atak zadziała tylko wtedy, gdy możesz zobaczyć odpowiedzi serwera DHCP i ukończyć protokół (**Odkrycie** (Komputer) --> **Oferta** (serwer) --> **Żądanie** (Komputer) --> **Potwierdzenie** (serwer)). Na przykład **nie jest to możliwe w sieciach WiFi**.
Innym sposobem przeprowadzenia ataku DoS na DHCP jest wysłanie **pakietu DHCP-RELEASE, używając jako źródła każdego możliwego adresu IP**. Wtedy serwer będzie myślał, że wszyscy zakończyli korzystanie z tego adresu IP.
Możesz użyć wspomnianych ataków DoS, aby zmusić klientów do uzyskania nowych dzierżaw w środowisku i wyczerpać prawidłowe serwery, aby stały się nieodpowiednie. Dlatego gdy prawidłowe serwery spróbują ponownie połączyć się, **możesz serwować złośliwe wartości wspomniane w następnym ataku**.
Rogi serwer DHCP można skonfigurować, używając skryptu DHCP znajdującego się w `/usr/share/responder/DHCP.py`. Jest to przydatne do ataków sieciowych, takich jak przechwytywanie ruchu HTTP i poświadczeń, poprzez przekierowanie ruchu do złośliwego serwera. Jednakże, ustawienie fałszywej bramy jest mniej skuteczne, ponieważ pozwala tylko na przechwytywanie ruchu wychodzącego z klienta, pomijając odpowiedzi od prawdziwej bramy. Zamiast tego, zaleca się ustawienie fałszywego serwera DNS lub WPAD dla bardziej skutecznego ataku.
* **Nasz adres IP (Reklama Bramy)**: Użyj `-i 10.0.0.100`, aby reklamować IP twojego urządzenia jako bramę.
* **Lokalna nazwa domeny DNS**: Opcjonalnie, użyj `-d example.org`, aby ustawić lokalną nazwę domeny DNS.
* **Oryginalny Router/Brama IP**: Użyj `-r 10.0.0.1`, aby określić adres IP prawidłowego routera lub bramy.
* **Główny serwer DNS IP**: Użyj `-p 10.0.0.100`, aby ustawić adres IP fałszywego serwera DNS, który kontrolujesz.
* **Drugi serwer DNS IP**: Opcjonalnie, użyj `-s 10.0.0.1`, aby ustawić drugi adres IP serwera DNS.
* **Maska podsieci lokalnej sieci**: Użyj `-n 255.255.255.0`, aby zdefiniować maskę podsieci dla lokalnej sieci.
* **Interfejs do ruchu DHCP**: Użyj `-I eth1`, aby nasłuchiwać ruchu DHCP na określonym interfejsie sieciowym.
* **Adres konfiguracji WPAD**: Użyj `-w “http://10.0.0.100/wpad.dat”`, aby ustawić adres konfiguracji WPAD, pomagając w przechwytywaniu ruchu internetowego.
* **Podszywanie adresu IP domyślnej bramy**: Dodaj `-S`, aby podszyć adres IP domyślnej bramy.
* **Odpowiedz na wszystkie żądania DHCP**: Dodaj `-R`, aby sprawić, że serwer odpowie na wszystkie żądania DHCP, ale miej świadomość, że jest to głośne i może być wykryte.
Jeśli atakujący znajduje się między ofiarą a serwerem uwierzytelniania, może próbować obniżyć (jeśli konieczne) protokół uwierzytelniania do EAP-MD5 i przechwycić próbę uwierzytelnienia. Następnie może próbować złamać to hasło za pomocą:
**FHRP** (First Hop Redundancy Protocol) to klasa protokołów sieciowych zaprojektowanych do **tworzenia gorącego redundantnego systemu routingu**. Dzięki FHRP fizyczne routery mogą być połączone w pojedyncze logiczne urządzenie, co zwiększa tolerancję na awarie i pomaga rozłożyć obciążenie.
Istnieją trzy wersje protokołu Routing Information Protocol (RIP): RIP, RIPv2 i RIPng. Datagramy są wysyłane do równorzędnych poprzez port 520 za pomocą UDP przez RIP i RIPv2, podczas gdy datagramy są nadawane do portu 521 za pomocą multicastu IPv6 przez RIPng. Wersja RIPv2 wprowadziła obsługę uwierzytelniania MD5. Z kolei wersja RIPng nie zawiera natywnego uwierzytelniania; zamiast tego polega na opcjonalnych nagłówkach IPsec AH i ESP w IPv6.
Należy zauważyć, że RIPv2 obsługuje uwierzytelnianie MD5, podczas gdy RIPng nie zawiera natywnego uwierzytelniania, polegając na nagłówkach IPsec AH i ESP w IPv6.
**EIGRP (Enhanced Interior Gateway Routing Protocol)** to dynamiczny protokół routingu. **Jest to protokół wektorów odległości.** Jeśli brak jest **uwierzytelniania** i konfiguracji interfejsów pasywnych, **intruz** może zakłócić routing EIGRP i spowodować **zatrucie tablic routingu**. Ponadto sieć EIGRP (inaczej mówiąc, system autonomiczny) **jest płaska i nie ma podziału na strefy**. Jeśli **atakujący wstrzyknie trasę**, istnieje duże prawdopodobieństwo, że ta trasa **rozprzestrzeni się** w całym autonomicznym systemie EIGRP.
Aby zaatakować system EIGRP, konieczne jest **ustanowienie sąsiedztwa z prawidłowym routerem EIGRP**, co otwiera wiele możliwości, począwszy od podstawowej rozpoznawalności po różne wstrzyknięcia.
[**FRRouting**](https://frrouting.org/) pozwala na wdrożenie **wirtualnego routera obsługującego BGP, OSPF, EIGRP, RIP i inne protokoły.** Wystarczy go wdrożyć na systemie atakującego, aby faktycznie udawać prawidłowy router w domenie routingu.
[**Coly**](https://code.google.com/p/coly/) posiada możliwości przechwytywania nadawań EIGRP (Enhanced Interior Gateway Routing Protocol). Umożliwia również wstrzykiwanie pakietów, które można wykorzystać do zmiany konfiguracji routingu.
W protokole Open Shortest Path First (OSPF) **często stosuje się uwierzytelnianie MD5 w celu zapewnienia bezpiecznej komunikacji między routerami**. Jednakże to zabezpieczenie może zostać złamane za pomocą narzędzi takich jak Loki i John the Ripper. Narzędzia te są zdolne do przechwytywania i łamania haseł MD5, ujawniając klucz uwierzytelniania. Po uzyskaniu tego klucza można go wykorzystać do wprowadzenia nowych informacji o trasowaniu. Aby skonfigurować parametry trasy i ustalić skompromitowany klucz, wykorzystuje się odpowiednio karty _Injection_ i _Connection_.
ICMP Redirect polega na wysyłaniu pakietu ICMP typu 1, kod 5, który wskazuje, że atakujący jest najlepszą drogą do osiągnięcia danego adresu IP. Następnie, gdy ofiara chce skontaktować się z adresem IP, pakiet zostanie wysłany przez atakującego.
hping3 [VICTIM IP ADDRESS] -C 5 -K 1 -a [VICTIM DEFAULT GW IP ADDRESS] --icmp-gw [ATTACKER IP ADDRESS] --icmp-ipdst [DST IP ADDRESS] --icmp-ipsrc [VICTIM IP ADDRESS] #Send icmp to [1] form [2], route to [3] packets sent to [4] from [5]
apt-get install dnsmasqecho "addn-hosts=dnsmasq.hosts" > dnsmasq.conf #Create dnsmasq.confecho "127.0.0.1 domain.example.com" > dnsmasq.hosts #Domains in dnsmasq.hosts will be the domains resolved by the Dsudo dnsmasq -C dnsmasq.conf --no-daemon
dig @localhost domain.example.com # Test the configured DNS
Często istnieje wiele tras do systemów i sieci. Po utworzeniu listy adresów MAC w lokalnej sieci, użyj _gateway-finder.py_ do zidentyfikowania hostów obsługujących przekazywanie IPv4.
Dla lokalnego rozwiązywania nazw hostów, gdy zapytania DNS są nieudane, systemy Microsoft polegają na **Link-Local Multicast Name Resolution (LLMNR)** i **NetBIOS Name Service (NBT-NS)**. Podobnie, **Apple Bonjour** i implementacje **zero-configuration Linux** wykorzystują **Multicast DNS (mDNS)** do odkrywania systemów w sieci. Ze względu na nieuwierzytelniony charakter tych protokołów i ich działanie poprzez UDP, wysyłanie komunikatów do wszystkich, mogą być wykorzystane przez atakujących, którzy chcą przekierować użytkowników do złośliwych usług.
Możesz podszywać się pod usługi poszukiwane przez hosty, używając Responder do wysyłania fałszywych odpowiedzi.\
Przeczytaj więcej informacji na temat [jak podszywać się pod usługi za pomocą Responder](spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md).
Przeglądarki zazwyczaj korzystają z protokołu **Web Proxy Auto-Discovery (WPAD)** do automatycznego pobierania ustawień proxy. Polega to na pobieraniu szczegółów konfiguracji z serwera, konkretnie poprzez adres URL, takiego jak "http://wpad.example.org/wpad.dat". Odkrycie tego serwera przez klientów może nastąpić poprzez różne mechanizmy:
Narzędzie Responder wykorzystuje ten protokół, działając jako **złośliwy serwer WPAD**. Wykorzystuje DHCP, DNS, LLMNR i NBT-NS, aby wprowadzić klientów w błąd i skłonić ich do połączenia się z nim. Aby zagłębić się w to, jak usługi mogą być podszywane za pomocą Responder, [sprawdź to](spoofing-llmnr-nbt-ns-mdns-dns-and-wpad-and-relay-attacks.md).
Możesz oferować różne usługi w sieci, aby **oszukać użytkownika** i skłonić go do podania **hasła w postaci tekstu jawnego**. **Więcej informacji na temat tego ataku w** [**Podstawianie urządzeń SSDP i UPnP**](spoofing-ssdp-and-upnp-devices.md)**.**
Niektóre systemy operacyjne domyślnie konfigurują bramę na podstawie pakietów RA wysyłanych w sieci. Aby ogłosić atakującego jako router IPv6, można użyć:
Domyślnie niektóre systemy operacyjne próbują skonfigurować DNS, czytając pakiet DHCPv6 w sieci. W takim przypadku atakujący mógłby wysłać pakiet DHCPv6, aby skonfigurować siebie jako DNS. DHCP również dostarcza adres IPv6 ofierze.
Podstawowo, co robi ten atak, to w przypadku, gdy **użytkownik** próbuje **uzyskać dostęp** do strony **HTTP**, która jest **przekierowywana** na wersję **HTTPS**. **sslStrip** będzie **utrzymywał** połączenie **HTTP z** klientem i połączenie **HTTPS z** serwerem, dzięki czemu będzie mógł **przechwycić** połączenie w **czystym tekście**.
**Różnica** między **sslStrip+ a dns2proxy** a **sslStrip** polega na tym, że będą **przekierowywać** na przykład _**www.facebook.com**_**na**_**wwww.facebook.com**_ (zauważ dodatkowe "**w**") i ustawiać **adres tego domeny jako IP atakującego**. W ten sposób **klient** będzie **łączył się** z _**wwww.facebook.com**_ (atakujący), ale za kulisami **sslstrip+** będzie **utrzymywał****rzeczywiste połączenie** za pośrednictwem https z **www.facebook.com**.
**Celem** tej techniki jest **unikanie HSTS**, ponieważ _**wwww**.facebook.com_**nie** zostanie zapisane w **pamięci podręcznej** przeglądarki, więc przeglądarka zostanie oszukana, aby wykonać **uwierzytelnianie Facebooka w protokole HTTP**.\
Zauważ, że aby przeprowadzić ten atak, ofiara musi spróbować uzyskać początkowy dostęp do [http://www.faceook.com](http://www.faceook.com) a nie https. Można to zrobić, modyfikując linki wewnątrz strony http.
Więcej informacji [tutaj](https://www.bettercap.org/legacy/#hsts-bypass), [tutaj](https://www.slideshare.net/Fatuo\_\_/offensive-exploiting-dns-servers-changes-blackhat-asia-2014) i [tutaj](https://security.stackexchange.com/questions/91092/how-does-bypassing-hsts-with-sslstrip-work-exactly).
**sslStrip lub sslStrip+ już nie działają. Wynika to z zapisanych zasad HSTS w przeglądarkach, więc nawet jeśli użytkownik po raz pierwszy uzyskuje dostęp do "ważnej" domeny, uzyska do niej dostęp za pośrednictwem HTTPS. Zauważ również, że zasady zapisane i inne wygenerowane zasady mogą używać flagi** [**`includeSubdomains`**](https://hstspreload.appspot.com) **więc przykład**_**wwww.facebook.com**_**z wcześniej nie będzie działać, ponieważ**_**facebook.com**_**korzysta z HSTS z `includeSubdomains`.**
Inne rzeczy do przetestowania to próba podpisania certyfikatu ważnym certyfikatem, który nie jest ważnym CA. Lub użycie ważnego klucza publicznego, wymuszenie użycia algorytmu typu Diffie-Hellman (który nie wymaga odszyfrowywania niczego za pomocą prawdziwego klucza prywatnego) i gdy klient żąda sondy prawdziwego klucza prywatnego (jak skrótu), wysłanie fałszywej sondy i oczekiwanie, że klient tego nie sprawdzi.
Pakiety ARP są używane do odkrywania używanych adresów IP w sieci. Komputer musi wysłać żądanie dla każdego możliwego adresu IP, a tylko te, które są używane, odpowiedzą.
Bettercap wysyła żądanie MDNS (co X ms) pytając o **\_services\_.dns-sd.\_udp.local**. Maszyna, która widzi ten pakiet, zazwyczaj odpowiada na to żądanie. Następnie wyszukuje tylko maszyny odpowiadające na "services".
* **Network Security Assessment: Know Your Network (3rd edition)**
* **Practical IoT Hacking: The Definitive Guide to Attacking the Internet of Things. By Fotios Chantzis, Ioannis Stais, Paulino Calderon, Evangelos Deirmentzoglou, Beau Wood**
**Wskazówka dotycząca bug bounty**: **Zarejestruj się** na platformie **Intigriti**, premium platformie **bug bounty stworzonej przez hakerów, dla hakerów**! Dołącz do nas na [**https://go.intigriti.com/hacktricks**](https://go.intigriti.com/hacktricks) już dziś i zacznij zarabiać nagrody aż do **$100,000**!
<summary><strong>Naucz się hakować AWS od zera do bohatera z</strong><ahref="https://training.hacktricks.xyz/courses/arte"><strong>htARTE (HackTricks AWS Red Team Expert)</strong></a><strong>!</strong></summary>
* Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLANY SUBSKRYPCYJNE**](https://github.com/sponsors/carlospolop)!
* **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.