From dd88cb67577b6a91c3cfe4614b3dca994163fda4 Mon Sep 17 00:00:00 2001 From: Translator Date: Mon, 28 Jul 2025 10:13:57 +0000 Subject: [PATCH] Translated ['src/generic-methodologies-and-resources/phishing-methodolog --- src/SUMMARY.md | 1 + .../phishing-methodology/README.md | 48 ++++---- .../phishing-methodology/homograph-attacks.md | 104 ++++++++++++++++++ 3 files changed, 131 insertions(+), 22 deletions(-) create mode 100644 src/generic-methodologies-and-resources/phishing-methodology/homograph-attacks.md diff --git a/src/SUMMARY.md b/src/SUMMARY.md index 4a374c24d..4f96c20dc 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -32,6 +32,7 @@ - [Clone a Website](generic-methodologies-and-resources/phishing-methodology/clone-a-website.md) - [Detecting Phishing](generic-methodologies-and-resources/phishing-methodology/detecting-phising.md) - [Discord Invite Hijacking](generic-methodologies-and-resources/phishing-methodology/discord-invite-hijacking.md) + - [Homograph Attacks](generic-methodologies-and-resources/phishing-methodology/homograph-attacks.md) - [Mobile Phishing Malicious Apps](generic-methodologies-and-resources/phishing-methodology/mobile-phishing-malicious-apps.md) - [Phishing Files & Documents](generic-methodologies-and-resources/phishing-methodology/phishing-documents.md) - [Basic Forensic Methodology](generic-methodologies-and-resources/basic-forensic-methodology/README.md) diff --git a/src/generic-methodologies-and-resources/phishing-methodology/README.md b/src/generic-methodologies-and-resources/phishing-methodology/README.md index 2a93b693e..403a02298 100644 --- a/src/generic-methodologies-and-resources/phishing-methodology/README.md +++ b/src/generic-methodologies-and-resources/phishing-methodology/README.md @@ -23,16 +23,20 @@ - **Słowo kluczowe**: Nazwa domeny **zawiera** ważne **słowo kluczowe** oryginalnej domeny (np. zelster.com-management.com). - **poddomena z myślnikiem**: Zmień **kropkę na myślnik** w poddomenie (np. www-zelster.com). -- **Nowe TLD**: Ta sama domena używająca **nowego TLD** (np. zelster.org). +- **Nowe TLD**: Ta sama domena z użyciem **nowego TLD** (np. zelster.org). - **Homoglif**: **Zastępuje** literę w nazwie domeny **literami, które wyglądają podobnie** (np. zelfser.com). + +{{#ref}} +homograph-attacks.md +{{#endref}} - **Transpozycja:** **Zamienia dwie litery** w nazwie domeny (np. zelsetr.com). - **Liczba pojedyncza/mnoga**: Dodaje lub usuwa „s” na końcu nazwy domeny (np. zeltsers.com). - **Ominięcie**: **Usuwa jedną** z liter z nazwy domeny (np. zelser.com). - **Powtórzenie:** **Powtarza jedną** z liter w nazwie domeny (np. zeltsser.com). -- **Zamiana**: Jak homoglif, ale mniej dyskretny. Zastępuje jedną z liter w nazwie domeny, być może literą bliską oryginalnej literze na klawiaturze (np. zektser.com). -- **Poddomenowana**: Wprowadza **kropkę** wewnątrz nazwy domeny (np. ze.lster.com). +- **Zastąpienie**: Jak homoglif, ale mniej dyskretny. Zastępuje jedną z liter w nazwie domeny, być może literą bliską oryginalnej literze na klawiaturze (np. zektser.com). +- **Subdomenowana**: Wprowadza **kropkę** wewnątrz nazwy domeny (np. ze.lster.com). - **Wstawienie**: **Wstawia literę** do nazwy domeny (np. zerltser.com). -- **Brak kropki**: Dołącz TLD do nazwy domeny. (np. zelstercom.com) +- **Brakująca kropka**: Dołącz TLD do nazwy domeny. (np. zelstercom.com) **Narzędzia automatyczne** @@ -47,19 +51,19 @@ ### Bitflipping -Istnieje **możliwość, że jeden z bitów przechowywanych lub w komunikacji może zostać automatycznie zmieniony** z powodu różnych czynników, takich jak wybuchy słoneczne, promieniowanie kosmiczne lub błędy sprzętowe. +Istnieje **możliwość, że jeden z bitów przechowywanych lub w komunikacji może zostać automatycznie zmieniony** z powodu różnych czynników, takich jak burze słoneczne, promieniowanie kosmiczne lub błędy sprzętowe. Gdy ten koncept jest **stosowany do zapytań DNS**, możliwe jest, że **domena odebrana przez serwer DNS** nie jest taka sama jak domena pierwotnie żądana. Na przykład, pojedyncza modyfikacja bitu w domenie "windows.com" może zmienić ją na "windnws.com." -Atakujący mogą **wykorzystać to, rejestrując wiele domen z bit-flipping**, które są podobne do domeny ofiary. Ich intencją jest przekierowanie legalnych użytkowników do własnej infrastruktury. +Napastnicy mogą **wykorzystać to, rejestrując wiele domen z bit-flipping**, które są podobne do domeny ofiary. Ich intencją jest przekierowanie legalnych użytkowników do własnej infrastruktury. Aby uzyskać więcej informacji, przeczytaj [https://www.bleepingcomputer.com/news/security/hijacking-traffic-to-microsoft-s-windowscom-with-bitflipping/](https://www.bleepingcomputer.com/news/security/hijacking-traffic-to-microsoft-s-windowscom-with-bitflipping/) ### Kup zaufaną domenę -Możesz poszukać na [https://www.expireddomains.net/](https://www.expireddomains.net) wygasłej domeny, którą mógłbyś wykorzystać.\ +Możesz poszukać na [https://www.expireddomains.net/](https://www.expireddomains.net) wygasłej domeny, którą mógłbyś użyć.\ Aby upewnić się, że wygasła domena, którą zamierzasz kupić, **ma już dobrą SEO**, możesz sprawdzić, jak jest sklasyfikowana w: - [http://www.fortiguard.com/webfilter](http://www.fortiguard.com/webfilter) @@ -73,8 +77,8 @@ Aby upewnić się, że wygasła domena, którą zamierzasz kupić, **ma już dob - [https://hunter.io/](https://hunter.io) - [https://anymailfinder.com/](https://anymailfinder.com) -Aby **odkryć więcej** ważnych adresów e-mail lub **zweryfikować te**, które już odkryłeś, możesz sprawdzić, czy możesz przeprowadzić brute-force na serwerach smtp ofiary. [Dowiedz się, jak zweryfikować/odkryć adres e-mail tutaj](../../network-services-pentesting/pentesting-smtp/index.html#username-bruteforce-enumeration).\ -Ponadto nie zapomnij, że jeśli użytkownicy korzystają z **jakiegokolwiek portalu internetowego do dostępu do swoich e-maili**, możesz sprawdzić, czy jest on podatny na **brute force nazwy użytkownika** i wykorzystać tę podatność, jeśli to możliwe. +Aby **odkryć więcej** ważnych adresów e-mail lub **zweryfikować te, które już odkryłeś**, możesz sprawdzić, czy możesz przeprowadzić brute-force na serwerach smtp ofiary. [Dowiedz się, jak zweryfikować/odkryć adres e-mail tutaj](../../network-services-pentesting/pentesting-smtp/index.html#username-bruteforce-enumeration).\ +Ponadto nie zapomnij, że jeśli użytkownicy korzystają z **jakiegokolwiek portalu internetowego do dostępu do swoich e-maili**, możesz sprawdzić, czy jest on podatny na **brute force nazw użytkowników** i wykorzystać tę podatność, jeśli to możliwe. ## Konfigurowanie GoPhish @@ -109,7 +113,7 @@ cp "/etc/letsencrypt/live/$DOMAIN/fullchain.pem" /opt/gophish/ssl_keys/key.crt ``` **Konfiguracja poczty** -Zacznij od instalacji: `apt-get install postfix` +Rozpocznij instalację: `apt-get install postfix` Następnie dodaj domenę do następujących plików: @@ -219,7 +223,7 @@ service gophish status ss -l | grep "3333\|443" service gophish stop ``` -## Konfiguracja serwera pocztowego i domeny +## Konfigurowanie serwera pocztowego i domeny ### Czekaj i bądź legitny @@ -235,7 +239,7 @@ Ustaw rekord rDNS (PTR), który rozwiązuje adres IP VPS na nazwę domeny. Musisz **skonfigurować rekord SPF dla nowej domeny**. Jeśli nie wiesz, czym jest rekord SPF [**przeczytaj tę stronę**](../../network-services-pentesting/pentesting-smtp/index.html#spf). -Możesz użyć [https://www.spfwizard.net/](https://www.spfwizard.net), aby wygenerować swoją politykę SPF (użyj adresu IP maszyny VPS) +Możesz użyć [https://www.spfwizard.net/](https://www.spfwizard.net) do wygenerowania swojej polityki SPF (użyj adresu IP maszyny VPS) ![](<../../images/image (1037).png>) @@ -289,17 +293,17 @@ Authentication-Results: mx.google.com; spf=pass (google.com: domain of contact@example.com designates --- as permitted sender) smtp.mail=contact@example.com; dkim=pass header.i=@example.com; ``` -### Usuwanie z czarnej listy Spamhouse +### Usuwanie z Czarnej Listy Spamhouse Strona [www.mail-tester.com](https://www.mail-tester.com) może wskazać, czy Twoja domena jest blokowana przez spamhouse. Możesz poprosić o usunięcie swojej domeny/IP pod adresem: ​[https://www.spamhaus.org/lookup/](https://www.spamhaus.org/lookup/) -### Usuwanie z czarnej listy Microsoft +### Usuwanie z Czarnej Listy Microsoft ​​Możesz poprosić o usunięcie swojej domeny/IP pod adresem [https://sender.office.com/](https://sender.office.com). -## Utwórz i uruchom kampanię GoPhish +## Utwórz i Uruchom Kampanię GoPhish -### Profil wysyłania +### Profil Wysyłania - Ustaw **nazwę identyfikującą** profil nadawcy - Zdecyduj, z którego konta będziesz wysyłać e-maile phishingowe. Sugestie: _noreply, support, servicedesk, salesforce..._ @@ -311,12 +315,12 @@ Strona [www.mail-tester.com](https://www.mail-tester.com) może wskazać, czy Tw > Zaleca się korzystanie z funkcji "**Wyślij e-mail testowy**", aby sprawdzić, czy wszystko działa.\ > Zalecałbym **wysyłanie e-maili testowych na adresy 10min mail**, aby uniknąć dodania do czarnej listy podczas testów. -### Szablon e-maila +### Szablon E-mail - Ustaw **nazwę identyfikującą** szablon - Następnie napisz **temat** (nic dziwnego, po prostu coś, co można by się spodziewać w zwykłym e-mailu) - Upewnij się, że zaznaczyłeś "**Dodaj obrazek śledzący**" -- Napisz **szablon e-maila** (możesz używać zmiennych, jak w poniższym przykładzie): +- Napisz **szablon e-mail** (możesz używać zmiennych, jak w poniższym przykładzie): ```html @@ -360,7 +364,7 @@ Zauważ, że **aby zwiększyć wiarygodność e-maila**, zaleca się użycie jak > Zauważ, że jeśli musisz **użyć jakichś statycznych zasobów** dla HTML (może jakieś strony CSS i JS), możesz je zapisać w _**/opt/gophish/static/endpoint**_ i następnie uzyskać do nich dostęp z _**/static/\**_ > [!TIP] -> W przypadku przekierowania możesz **przekierować użytkowników na legitną główną stronę internetową** ofiary lub przekierować ich na _/static/migration.html_, na przykład, umieścić jakiś **kręcący się kółko (**[**https://loading.io/**](https://loading.io)**) przez 5 sekund, a następnie wskazać, że proces zakończył się sukcesem**. +> W przypadku przekierowania możesz **przekierować użytkowników na legalną główną stronę** ofiary lub przekierować ich na _/static/migration.html_, na przykład, umieścić jakiś **kręcący się kółko (**[**https://loading.io/**](https://loading.io)**) przez 5 sekund, a następnie wskazać, że proces zakończył się sukcesem**. ### Użytkownicy i grupy @@ -410,11 +414,11 @@ Tutaj przydatne są narzędzia takie jak [**evilginx2**](https://github.com/kgre 1. **Podszywasz się pod formularz logowania** prawdziwej strony internetowej. 2. Użytkownik **wysyła** swoje **dane logowania** na twoją fałszywą stronę, a narzędzie wysyła je na prawdziwą stronę internetową, **sprawdzając, czy dane logowania działają**. 3. Jeśli konto jest skonfigurowane z **2FA**, strona MitM poprosi o to, a gdy **użytkownik wprowadzi** to, narzędzie wyśle to na prawdziwą stronę internetową. -4. Gdy użytkownik jest uwierzytelniony, ty (jako atakujący) będziesz miał **przechwycone dane logowania, 2FA, ciasteczka i wszelkie informacje** z każdej interakcji, podczas gdy narzędzie wykonuje atak MitM. +4. Gdy użytkownik zostanie uwierzytelniony, ty (jako atakujący) będziesz miał **przechwycone dane logowania, 2FA, ciasteczka i wszelkie informacje** z każdej interakcji, podczas gdy narzędzie wykonuje atak MitM. ### Poprzez VNC -Co jeśli zamiast **wysyłać ofiarę na złośliwą stronę** o takim samym wyglądzie jak oryginalna, wyślesz go na **sesję VNC z przeglądarką połączoną z prawdziwą stroną internetową**? Będziesz mógł zobaczyć, co robi, ukraść hasło, używane MFA, ciasteczka...\ +Co jeśli zamiast **wysyłać ofiarę na złośliwą stronę** o takim samym wyglądzie jak oryginalna, wyślesz ją do **sesji VNC z przeglądarką połączoną z prawdziwą stroną internetową**? Będziesz mógł zobaczyć, co robi, ukraść hasło, używane MFA, ciasteczka...\ Możesz to zrobić za pomocą [**EvilnVNC**](https://github.com/JoelGMSec/EvilnoVNC) ## Wykrywanie wykrycia @@ -436,7 +440,7 @@ Użyj [**Phishious** ](https://github.com/Rices/Phishious), aby ocenić, czy tw ## Przechwytywanie schowka / Pastejacking -Atakujący mogą cicho kopiować złośliwe polecenia do schowka ofiary z kompromitowanej lub źle napisanej strony internetowej, a następnie oszukać użytkownika, aby wkleił je w **Win + R**, **Win + X** lub oknie terminala, wykonując dowolny kod bez pobierania lub załączania. +Atakujący mogą cicho kopiować złośliwe polecenia do schowka ofiary z kompromitowanej lub błędnie napisanej strony internetowej, a następnie oszukać użytkownika, aby wkleił je w **Win + R**, **Win + X** lub oknie terminala, wykonując dowolny kod bez pobierania lub załączania. {{#ref}} clipboard-hijacking.md diff --git a/src/generic-methodologies-and-resources/phishing-methodology/homograph-attacks.md b/src/generic-methodologies-and-resources/phishing-methodology/homograph-attacks.md new file mode 100644 index 000000000..4e3bf1117 --- /dev/null +++ b/src/generic-methodologies-and-resources/phishing-methodology/homograph-attacks.md @@ -0,0 +1,104 @@ +# Ataki homograficzne / homoglifowe w phishingu + +{{#include ../../banners/hacktricks-training.md}} + +## Przegląd + +Atak homograficzny (znany również jako atak homoglifowy) wykorzystuje fakt, że wiele **punktów kodowych Unicode z nielatynowych skryptów jest wizualnie identycznych lub bardzo podobnych do znaków ASCII**. Poprzez zastąpienie jednego lub więcej znaków łacińskich ich odpowiednikami, atakujący może stworzyć: + +* Nazwy wyświetlane, tematy lub treści wiadomości, które wyglądają na legitymne dla ludzkiego oka, ale omijają detekcje oparte na słowach kluczowych. +* Domeny, subdomeny lub ścieżki URL, które oszukują ofiary, sprawiając, że wierzą, iż odwiedzają zaufaną stronę. + +Ponieważ każdy glif jest identyfikowany wewnętrznie przez swój **punkt kodowy Unicode**, pojedynczy zastąpiony znak wystarczy, aby pokonać naiwne porównania ciągów (np. `"Παypal.com"` vs. `"Paypal.com"`). + +## Typowy proces phishingowy + +1. **Stwórz treść wiadomości** – Zastąp konkretne litery łacińskie w podszywającej się marce / słowie kluczowym wizualnie nieodróżnialnymi znakami z innego skryptu (greckiego, cyrylicy, ormiańskiego, cherokee itp.). +2. **Zarejestruj infrastrukturę wspierającą** – Opcjonalnie zarejestruj domenę homoglifową i uzyskaj certyfikat TLS (większość CA nie przeprowadza kontroli podobieństwa wizualnego). +3. **Wyślij e-mail / SMS** – Wiadomość zawiera homoglify w jednej lub więcej z następujących lokalizacji: +* Nazwa wyświetlana nadawcy (np. `Ηеlрdеѕk`) +* Temat (`Urgеnt Аctіon Rеquіrеd`) +* Tekst hiperlinku lub w pełni kwalifikowana nazwa domeny +4. **Łańcuch przekierowań** – Ofiara jest przekierowywana przez pozornie nieszkodliwe strony internetowe lub skracacze URL, zanim trafi na złośliwy host, który zbiera dane uwierzytelniające / dostarcza złośliwe oprogramowanie. + +## Zakresy Unicode powszechnie nadużywane + +| Skrypt | Zakres | Przykładowy glif | Wygląda jak | +|--------|-------|---------------|------------| +| Grecki | U+0370-03FF | `Η` (U+0397) | Łacińskie `H` | +| Grecki | U+0370-03FF | `ρ` (U+03C1) | Łacińskie `p` | +| Cyrylica | U+0400-04FF | `а` (U+0430) | Łacińskie `a` | +| Cyrylica | U+0400-04FF | `е` (U+0435) | Łacińskie `e` | +| Ormiański | U+0530-058F | `օ` (U+0585) | Łacińskie `o` | +| Cherokee | U+13A0-13FF | `Ꭲ` (U+13A2) | Łacińskie `T` | + +> Wskazówka: Pełne wykresy Unicode są dostępne na [unicode.org](https://home.unicode.org/). + +## Techniki detekcji + +### 1. Inspekcja mieszanych skryptów + +E-maile phishingowe skierowane do anglojęzycznej organizacji rzadko powinny mieszać znaki z wielu skryptów. Prosta, ale skuteczna heurystyka to: + +1. Iterować przez każdy znak sprawdzanego ciągu. +2. Mapować punkt kodowy do jego bloku Unicode. +3. Wzbudzić alert, jeśli obecnych jest więcej niż jeden skrypt **lub** jeśli nielatynowe skrypty pojawiają się tam, gdzie nie są oczekiwane (nazwa wyświetlana, domena, temat, URL itp.). + +Python proof-of-concept: +```python +import unicodedata as ud +from collections import defaultdict + +SUSPECT_FIELDS = { +"display_name": "Ηоmоgraph Illusion", # example data +"subject": "Finаnꮯiаl Տtatеmеnt", +"url": "https://xn--messageconnecton-2kb.blob.core.windows.net" # punycode +} + +for field, value in SUSPECT_FIELDS.items(): +blocks = defaultdict(int) +for ch in value: +if ch.isascii(): +blocks['Latin'] += 1 +else: +name = ud.name(ch, 'UNKNOWN') +block = name.split(' ')[0] # e.g., 'CYRILLIC' +blocks[block] += 1 +if len(blocks) > 1: +print(f"[!] Mixed scripts in {field}: {dict(blocks)} -> {value}") +``` +### 2. Normalizacja Punycode (Domeny) + +Zinternationalizowane Nazwy Domen (IDN) są kodowane za pomocą **punycode** (`xn--`). Konwersja każdej nazwy hosta na punycode, a następnie z powrotem na Unicode, umożliwia porównanie z białą listą lub przeprowadzenie kontroli podobieństwa (np. odległość Levenshteina) **po** normalizacji ciągu. +```python +import idna +hostname = "Ρаypal.com" # Greek Rho + Cyrillic a +puny = idna.encode(hostname).decode() +print(puny) # xn--yl8hpyal.com +``` +### 3. Słowniki / Algorytmy Homoglifów + +Narzędzia takie jak **dnstwist** (`--homoglyph`) lub **urlcrazy** mogą enumerować wizualnie podobne permutacje domen i są przydatne do proaktywnego usuwania / monitorowania. + +## Zapobieganie i Łagodzenie + +* Wprowadź surowe polityki DMARC/DKIM/SPF – zapobiegaj podszywaniu się z nieautoryzowanych domen. +* Wdróż logikę detekcji powyżej w **Secure Email Gateways** i **SIEM/XSOAR** playbookach. +* Oznaczaj lub kwarantannuj wiadomości, w których domena wyświetlanej nazwy ≠ domena nadawcy. +* Edukuj użytkowników: kopiuj-wklej podejrzany tekst do inspektora Unicode, najeżdżaj na linki, nigdy nie ufaj skracaczom URL. + +## Przykłady z Życia Wziętego + +* Wyświetlana nazwa: `Сonfidеntiаl Ꭲiꮯkеt` (cyrylica `С`, `е`, `а`; cherokee `Ꭲ`; mała litera łacińska `ꮯ`). +* Łańcuch domen: `bestseoservices.com` ➜ katalog miejskich `/templates` ➜ `kig.skyvaulyt.ru` ➜ fałszywe logowanie do Microsoftu na `mlcorsftpsswddprotcct.approaches.it.com` chronione przez niestandardowy OTP CAPTCHA. +* Podszywanie się pod Spotify: nadawca `Sρօtifւ` z linkiem ukrytym za `redirects.ca`. + +Te przykłady pochodzą z badań Unit 42 (lipiec 2025) i ilustrują, jak nadużycie homoglifów jest łączone z przekierowaniem URL i omijaniem CAPTCHA w celu obejścia analizy automatycznej. + +## Źródła + +- [The Homograph Illusion: Not Everything Is As It Seems](https://unit42.paloaltonetworks.com/homograph-attacks/) +- [Unicode Character Database](https://home.unicode.org/) +- [dnstwist – domain permutation engine](https://github.com/elceef/dnstwist) + +{{#include ../../banners/hacktricks-training.md}}