mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
Translated ['src/generic-methodologies-and-resources/phishing-methodolog
This commit is contained in:
parent
0f44697b40
commit
086b5655a0
@ -32,6 +32,7 @@
|
|||||||
- [Clone a Website](generic-methodologies-and-resources/phishing-methodology/clone-a-website.md)
|
- [Clone a Website](generic-methodologies-and-resources/phishing-methodology/clone-a-website.md)
|
||||||
- [Detecting Phishing](generic-methodologies-and-resources/phishing-methodology/detecting-phising.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)
|
- [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)
|
- [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)
|
- [Phishing Files & Documents](generic-methodologies-and-resources/phishing-methodology/phishing-documents.md)
|
||||||
- [Basic Forensic Methodology](generic-methodologies-and-resources/basic-forensic-methodology/README.md)
|
- [Basic Forensic Methodology](generic-methodologies-and-resources/basic-forensic-methodology/README.md)
|
||||||
|
@ -1,12 +1,12 @@
|
|||||||
# Phishing-Methodologie
|
# Phishing Methodology
|
||||||
|
|
||||||
{{#include ../../banners/hacktricks-training.md}}
|
{{#include ../../banners/hacktricks-training.md}}
|
||||||
|
|
||||||
## Methodologie
|
## Methodology
|
||||||
|
|
||||||
1. Rekognoszieren Sie das Opfer
|
1. Recon der Zielperson
|
||||||
1. Wählen Sie die **Opferdomain**.
|
1. Wählen Sie die **Ziel-Domain** aus.
|
||||||
2. Führen Sie eine grundlegende Webenumeration durch, **um nach Anmeldeportalen** zu suchen, die vom Opfer verwendet werden, und **entscheiden** Sie, welches Sie **nachahmen** möchten.
|
2. Führen Sie eine grundlegende Webenumeration durch, **um nach Login-Portalen** zu suchen, die von der Zielperson verwendet werden, und **entscheiden** Sie, welches Sie **nachahmen** möchten.
|
||||||
3. Verwenden Sie einige **OSINT**, um **E-Mails zu finden**.
|
3. Verwenden Sie einige **OSINT**, um **E-Mails zu finden**.
|
||||||
2. Bereiten Sie die Umgebung vor
|
2. Bereiten Sie die Umgebung vor
|
||||||
1. **Kaufen Sie die Domain**, die Sie für die Phishing-Bewertung verwenden möchten.
|
1. **Kaufen Sie die Domain**, die Sie für die Phishing-Bewertung verwenden möchten.
|
||||||
@ -14,25 +14,29 @@
|
|||||||
3. Konfigurieren Sie den VPS mit **gophish**.
|
3. Konfigurieren Sie den VPS mit **gophish**.
|
||||||
3. Bereiten Sie die Kampagne vor
|
3. Bereiten Sie die Kampagne vor
|
||||||
1. Bereiten Sie die **E-Mail-Vorlage** vor.
|
1. Bereiten Sie die **E-Mail-Vorlage** vor.
|
||||||
2. Bereiten Sie die **Webseite** vor, um die Anmeldeinformationen zu stehlen.
|
2. Bereiten Sie die **Webseite** vor, um die Anmeldedaten zu stehlen.
|
||||||
4. Starten Sie die Kampagne!
|
4. Starten Sie die Kampagne!
|
||||||
|
|
||||||
## Generieren Sie ähnliche Domainnamen oder kaufen Sie eine vertrauenswürdige Domain
|
## Generieren Sie ähnliche Domainnamen oder kaufen Sie eine vertrauenswürdige Domain
|
||||||
|
|
||||||
### Techniken zur Variation von Domainnamen
|
### Techniken zur Variation von Domainnamen
|
||||||
|
|
||||||
- **Schlüsselwort**: Der Domainname **enthält** ein wichtiges **Schlüsselwort** der ursprünglichen Domain (z.B. zelster.com-management.com).
|
- **Keyword**: Der Domainname **enthält** ein wichtiges **Keyword** der ursprünglichen Domain (z.B. zelster.com-management.com).
|
||||||
- **getrennte Subdomain**: Ändern Sie den **Punkt in einen Bindestrich** einer Subdomain (z.B. www-zelster.com).
|
- **hypen-subdomain**: Ändern Sie den **Punkt in einen Bindestrich** einer Subdomain (z.B. www-zelster.com).
|
||||||
- **Neue TLD**: Gleiche Domain mit einer **neuen TLD** (z.B. zelster.org).
|
- **Neue TLD**: Gleiche Domain mit einer **neuen TLD** (z.B. zelster.org).
|
||||||
- **Homoglyph**: Es **ersetzt** einen Buchstaben im Domainnamen durch **Buchstaben, die ähnlich aussehen** (z.B. zelfser.com).
|
- **Homoglyph**: Es **ersetzt** einen Buchstaben im Domainnamen durch **Buchstaben, die ähnlich aussehen** (z.B. zelfser.com).
|
||||||
|
|
||||||
|
{{#ref}}
|
||||||
|
homograph-attacks.md
|
||||||
|
{{#endref}}
|
||||||
- **Transposition:** Es **tauscht zwei Buchstaben** innerhalb des Domainnamens (z.B. zelsetr.com).
|
- **Transposition:** Es **tauscht zwei Buchstaben** innerhalb des Domainnamens (z.B. zelsetr.com).
|
||||||
- **Singularisierung/Pluralisierung**: Fügt ein „s“ am Ende des Domainnamens hinzu oder entfernt es (z.B. zeltsers.com).
|
- **Singularisierung/Pluralisierung**: Fügt ein „s“ am Ende des Domainnamens hinzu oder entfernt es (z.B. zeltsers.com).
|
||||||
- **Auslassung**: Es **entfernt einen** der Buchstaben aus dem Domainnamen (z.B. zelser.com).
|
- **Omission**: Es **entfernt einen** der Buchstaben aus dem Domainnamen (z.B. zelser.com).
|
||||||
- **Wiederholung:** Es **wiederholt einen** der Buchstaben im Domainnamen (z.B. zeltsser.com).
|
- **Wiederholung:** Es **wiederholt einen** der Buchstaben im Domainnamen (z.B. zeltsser.com).
|
||||||
- **Ersetzung**: Wie Homoglyph, aber weniger heimlich. Es ersetzt einen der Buchstaben im Domainnamen, möglicherweise mit einem Buchstaben in der Nähe des ursprünglichen Buchstabens auf der Tastatur (z.B. zektser.com).
|
- **Ersetzung**: Wie Homoglyph, aber weniger stealthy. Es ersetzt einen der Buchstaben im Domainnamen, möglicherweise mit einem Buchstaben in der Nähe des ursprünglichen Buchstabens auf der Tastatur (z.B. zektser.com).
|
||||||
- **Subdominiert**: Fügen Sie einen **Punkt** innerhalb des Domainnamens ein (z.B. ze.lster.com).
|
- **Subdominiert**: Fügen Sie einen **Punkt** innerhalb des Domainnamens ein (z.B. ze.lster.com).
|
||||||
- **Einfügung**: Es **fügt einen Buchstaben** in den Domainnamen ein (z.B. zerltser.com).
|
- **Einfügung**: Es **fügt einen Buchstaben** in den Domainnamen ein (z.B. zerltser.com).
|
||||||
- **Fehlender Punkt**: Fügen Sie die TLD an den Domainnamen an. (z.B. zelstercom.com)
|
- **Fehlender Punkt**: Hängen Sie die TLD an den Domainnamen an. (z.B. zelstercom.com)
|
||||||
|
|
||||||
**Automatische Werkzeuge**
|
**Automatische Werkzeuge**
|
||||||
|
|
||||||
@ -51,7 +55,7 @@ Es besteht die **Möglichkeit, dass eines der Bits, die gespeichert oder in der
|
|||||||
|
|
||||||
Wenn dieses Konzept auf DNS-Anfragen **angewendet wird**, ist es möglich, dass die **Domain, die vom DNS-Server empfangen wird**, nicht die gleiche ist wie die ursprünglich angeforderte Domain.
|
Wenn dieses Konzept auf DNS-Anfragen **angewendet wird**, ist es möglich, dass die **Domain, die vom DNS-Server empfangen wird**, nicht die gleiche ist wie die ursprünglich angeforderte Domain.
|
||||||
|
|
||||||
Zum Beispiel kann eine einzige Bitänderung in der Domain "windows.com" sie in "windnws.com" ändern.
|
Zum Beispiel kann eine einzelne Bitänderung in der Domain "windows.com" sie in "windnws.com" ändern.
|
||||||
|
|
||||||
Angreifer können **dies ausnutzen, indem sie mehrere Bit-Flipping-Domains registrieren**, die der Domain des Opfers ähnlich sind. Ihre Absicht ist es, legitime Benutzer auf ihre eigene Infrastruktur umzuleiten.
|
Angreifer können **dies ausnutzen, indem sie mehrere Bit-Flipping-Domains registrieren**, die der Domain des Opfers ähnlich sind. Ihre Absicht ist es, legitime Benutzer auf ihre eigene Infrastruktur umzuleiten.
|
||||||
|
|
||||||
@ -60,7 +64,7 @@ Für weitere Informationen lesen Sie [https://www.bleepingcomputer.com/news/secu
|
|||||||
### Kaufen Sie eine vertrauenswürdige Domain
|
### Kaufen Sie eine vertrauenswürdige Domain
|
||||||
|
|
||||||
Sie können auf [https://www.expireddomains.net/](https://www.expireddomains.net) nach einer abgelaufenen Domain suchen, die Sie verwenden könnten.\
|
Sie können auf [https://www.expireddomains.net/](https://www.expireddomains.net) nach einer abgelaufenen Domain suchen, die Sie verwenden könnten.\
|
||||||
Um sicherzustellen, dass die abgelaufene Domain, die Sie kaufen möchten, **bereits ein gutes SEO hat**, können Sie nachsehen, wie sie kategorisiert ist in:
|
Um sicherzustellen, dass die abgelaufene Domain, die Sie kaufen möchten, **bereits eine gute SEO hat**, können Sie nachsehen, wie sie kategorisiert ist in:
|
||||||
|
|
||||||
- [http://www.fortiguard.com/webfilter](http://www.fortiguard.com/webfilter)
|
- [http://www.fortiguard.com/webfilter](http://www.fortiguard.com/webfilter)
|
||||||
- [https://urlfiltering.paloaltonetworks.com/query/](https://urlfiltering.paloaltonetworks.com/query/)
|
- [https://urlfiltering.paloaltonetworks.com/query/](https://urlfiltering.paloaltonetworks.com/query/)
|
||||||
@ -83,7 +87,7 @@ Vergessen Sie außerdem nicht, dass, wenn die Benutzer **ein Webportal verwenden
|
|||||||
Sie können es von [https://github.com/gophish/gophish/releases/tag/v0.11.0](https://github.com/gophish/gophish/releases/tag/v0.11.0) herunterladen.
|
Sie können es von [https://github.com/gophish/gophish/releases/tag/v0.11.0](https://github.com/gophish/gophish/releases/tag/v0.11.0) herunterladen.
|
||||||
|
|
||||||
Laden Sie es herunter und entpacken Sie es in `/opt/gophish` und führen Sie `/opt/gophish/gophish` aus.\
|
Laden Sie es herunter und entpacken Sie es in `/opt/gophish` und führen Sie `/opt/gophish/gophish` aus.\
|
||||||
Ihnen wird ein Passwort für den Admin-Benutzer auf Port 3333 in der Ausgabe angezeigt. Greifen Sie daher auf diesen Port zu und verwenden Sie diese Anmeldeinformationen, um das Admin-Passwort zu ändern. Möglicherweise müssen Sie diesen Port auf lokal tunneln:
|
Sie erhalten ein Passwort für den Admin-Benutzer auf Port 3333 in der Ausgabe. Greifen Sie daher auf diesen Port zu und verwenden Sie diese Anmeldeinformationen, um das Admin-Passwort zu ändern. Möglicherweise müssen Sie diesen Port zu lokal tunneln:
|
||||||
```bash
|
```bash
|
||||||
ssh -L 3333:127.0.0.1:3333 <user>@<ip>
|
ssh -L 3333:127.0.0.1:3333 <user>@<ip>
|
||||||
```
|
```
|
||||||
@ -223,19 +227,19 @@ service gophish stop
|
|||||||
|
|
||||||
### Warten & legitim sein
|
### Warten & legitim sein
|
||||||
|
|
||||||
Je älter eine Domain ist, desto unwahrscheinlicher ist es, dass sie als Spam erkannt wird. Daher solltest du so viel Zeit wie möglich warten (mindestens 1 Woche) vor der Phishing-Bewertung. Außerdem wird die Reputation besser, wenn du eine Seite über einen reputationswürdigen Sektor erstellst.
|
Je älter eine Domain ist, desto unwahrscheinlicher ist es, dass sie als Spam erkannt wird. Daher sollten Sie so viel Zeit wie möglich warten (mindestens 1 Woche) vor der Phishing-Bewertung. Darüber hinaus wird die Reputation besser sein, wenn Sie eine Seite über einen reputationswürdigen Sektor erstellen.
|
||||||
|
|
||||||
Beachte, dass du, auch wenn du eine Woche warten musst, jetzt alles konfigurieren kannst.
|
Beachten Sie, dass Sie, auch wenn Sie eine Woche warten müssen, jetzt alles konfigurieren können.
|
||||||
|
|
||||||
### Konfigurieren des Reverse DNS (rDNS) Eintrags
|
### Konfigurieren des Reverse DNS (rDNS) Eintrags
|
||||||
|
|
||||||
Setze einen rDNS (PTR) Eintrag, der die IP-Adresse des VPS auf den Domainnamen auflöst.
|
Setzen Sie einen rDNS (PTR) Eintrag, der die IP-Adresse des VPS auf den Domainnamen auflöst.
|
||||||
|
|
||||||
### Sender Policy Framework (SPF) Eintrag
|
### Sender Policy Framework (SPF) Eintrag
|
||||||
|
|
||||||
Du musst **einen SPF-Eintrag für die neue Domain konfigurieren**. Wenn du nicht weißt, was ein SPF-Eintrag ist, [**lies diese Seite**](../../network-services-pentesting/pentesting-smtp/index.html#spf).
|
Sie müssen **einen SPF-Eintrag für die neue Domain konfigurieren**. Wenn Sie nicht wissen, was ein SPF-Eintrag ist, [**lesen Sie diese Seite**](../../network-services-pentesting/pentesting-smtp/index.html#spf).
|
||||||
|
|
||||||
Du kannst [https://www.spfwizard.net/](https://www.spfwizard.net) verwenden, um deine SPF-Richtlinie zu generieren (verwende die IP der VPS-Maschine).
|
Sie können [https://www.spfwizard.net/](https://www.spfwizard.net) verwenden, um Ihre SPF-Richtlinie zu generieren (verwenden Sie die IP der VPS-Maschine).
|
||||||
|
|
||||||
.png>)
|
.png>)
|
||||||
|
|
||||||
@ -247,7 +251,7 @@ v=spf1 mx a ip4:ip.ip.ip.ip ?all
|
|||||||
|
|
||||||
Sie müssen **einen DMARC-Eintrag für die neue Domain konfigurieren**. Wenn Sie nicht wissen, was ein DMARC-Eintrag ist, [**lesen Sie diese Seite**](../../network-services-pentesting/pentesting-smtp/index.html#dmarc).
|
Sie müssen **einen DMARC-Eintrag für die neue Domain konfigurieren**. Wenn Sie nicht wissen, was ein DMARC-Eintrag ist, [**lesen Sie diese Seite**](../../network-services-pentesting/pentesting-smtp/index.html#dmarc).
|
||||||
|
|
||||||
Sie müssen einen neuen DNS TXT-Eintrag erstellen, der auf den Hostnamen `_dmarc.<domain>` mit folgendem Inhalt zeigt:
|
Sie müssen einen neuen DNS TXT-Eintrag erstellen, der den Hostnamen `_dmarc.<domain>` mit folgendem Inhalt zeigt:
|
||||||
```bash
|
```bash
|
||||||
v=DMARC1; p=none
|
v=DMARC1; p=none
|
||||||
```
|
```
|
||||||
@ -314,7 +318,7 @@ Die Seite [www.mail-tester.com](https://www.mail-tester.com) kann Ihnen anzeigen
|
|||||||
### E-Mail-Vorlage
|
### E-Mail-Vorlage
|
||||||
|
|
||||||
- Setzen Sie einen **Namen zur Identifizierung** der Vorlage
|
- Setzen Sie einen **Namen zur Identifizierung** der Vorlage
|
||||||
- Schreiben Sie dann einen **Betreff** (nichts Ungewöhnliches, nur etwas, das Sie in einer regulären E-Mail erwarten würden)
|
- Schreiben Sie dann einen **Betreff** (nichts Ungewöhnliches, einfach etwas, das Sie in einer regulären E-Mail erwarten würden)
|
||||||
- Stellen Sie sicher, dass Sie "**Tracking-Bild hinzufügen**" aktiviert haben
|
- Stellen Sie sicher, dass Sie "**Tracking-Bild hinzufügen**" aktiviert haben
|
||||||
- Schreiben Sie die **E-Mail-Vorlage** (Sie können Variablen wie im folgenden Beispiel verwenden):
|
- Schreiben Sie die **E-Mail-Vorlage** (Sie können Variablen wie im folgenden Beispiel verwenden):
|
||||||
```html
|
```html
|
||||||
@ -350,7 +354,7 @@ Beachten Sie, dass **um die Glaubwürdigkeit der E-Mail zu erhöhen**, empfohlen
|
|||||||
|
|
||||||
- Schreiben Sie einen **Namen**
|
- Schreiben Sie einen **Namen**
|
||||||
- **Schreiben Sie den HTML-Code** der Webseite. Beachten Sie, dass Sie **Webseiten importieren** können.
|
- **Schreiben Sie den HTML-Code** der Webseite. Beachten Sie, dass Sie **Webseiten importieren** können.
|
||||||
- Markieren Sie **Eingereichte Daten erfassen** und **Passwörter erfassen**
|
- Aktivieren Sie **Erfasste eingereichte Daten** und **Erfasste Passwörter**
|
||||||
- Setzen Sie eine **Weiterleitung**
|
- Setzen Sie eine **Weiterleitung**
|
||||||
|
|
||||||
.png>)
|
.png>)
|
||||||
@ -360,12 +364,12 @@ Beachten Sie, dass **um die Glaubwürdigkeit der E-Mail zu erhöhen**, empfohlen
|
|||||||
> Beachten Sie, dass Sie, wenn Sie **statische Ressourcen** für das HTML benötigen (vielleicht einige CSS- und JS-Seiten), diese in _**/opt/gophish/static/endpoint**_ speichern können und dann von _**/static/\<dateiname>**_ darauf zugreifen können.
|
> Beachten Sie, dass Sie, wenn Sie **statische Ressourcen** für das HTML benötigen (vielleicht einige CSS- und JS-Seiten), diese in _**/opt/gophish/static/endpoint**_ speichern können und dann von _**/static/\<dateiname>**_ darauf zugreifen können.
|
||||||
|
|
||||||
> [!TIP]
|
> [!TIP]
|
||||||
> Für die Weiterleitung könnten Sie **die Benutzer zur legitimen Hauptwebseite** des Opfers umleiten oder sie beispielsweise zu _/static/migration.html_ umleiten, eine **Ladeanimation (**[**https://loading.io/**](https://loading.io)**) für 5 Sekunden anzeigen und dann angeben, dass der Prozess erfolgreich war**.
|
> Für die Weiterleitung könnten Sie **die Benutzer zur legitimen Hauptwebseite** des Opfers umleiten oder sie beispielsweise zu _/static/migration.html_ umleiten, eine **Ladeanimation** (**[**https://loading.io/**](https://loading.io)**) für 5 Sekunden anzeigen und dann angeben, dass der Prozess erfolgreich war.
|
||||||
|
|
||||||
### Benutzer & Gruppen
|
### Benutzer & Gruppen
|
||||||
|
|
||||||
- Setzen Sie einen Namen
|
- Setzen Sie einen Namen
|
||||||
- **Importieren Sie die Daten** (beachten Sie, dass Sie, um die Vorlage für das Beispiel zu verwenden, den Vornamen, Nachnamen und die E-Mail-Adresse jedes Benutzers benötigen)
|
- **Importieren Sie die Daten** (beachten Sie, dass Sie für die Verwendung der Vorlage für das Beispiel den Vornamen, Nachnamen und die E-Mail-Adresse jedes Benutzers benötigen)
|
||||||
|
|
||||||
.png>)
|
.png>)
|
||||||
|
|
||||||
@ -392,7 +396,7 @@ clone-a-website.md
|
|||||||
|
|
||||||
## Hintertür-Dokumente & -Dateien
|
## Hintertür-Dokumente & -Dateien
|
||||||
|
|
||||||
In einigen Phishing-Bewertungen (hauptsächlich für Red Teams) möchten Sie möglicherweise auch **Dateien mit einer Art Hintertür senden** (vielleicht ein C2 oder einfach etwas, das eine Authentifizierung auslöst).\
|
In einigen Phishing-Bewertungen (hauptsächlich für Red Teams) möchten Sie möglicherweise auch **Dateien mit einer Art Hintertür senden** (vielleicht ein C2 oder vielleicht nur etwas, das eine Authentifizierung auslöst).\
|
||||||
Überprüfen Sie die folgende Seite für einige Beispiele:
|
Überprüfen Sie die folgende Seite für einige Beispiele:
|
||||||
|
|
||||||
{{#ref}}
|
{{#ref}}
|
||||||
@ -414,7 +418,7 @@ Hier sind Tools wie [**evilginx2**](https://github.com/kgretzky/evilginx2)**,**
|
|||||||
|
|
||||||
### Via VNC
|
### Via VNC
|
||||||
|
|
||||||
Was wäre, wenn Sie anstatt den **Opfer zu einer bösartigen Seite** mit dem gleichen Aussehen wie die Originalseite zu senden, ihn zu einer **VNC-Sitzung mit einem Browser, der mit der echten Webseite verbunden ist, senden**? Sie können sehen, was er tut, das Passwort, die verwendete MFA, die Cookies stehlen...\
|
Was wäre, wenn Sie anstelle von **den Opfern auf eine bösartige Seite** mit dem gleichen Aussehen wie die Originalseite zu senden, sie zu einer **VNC-Sitzung mit einem Browser, der mit der echten Webseite verbunden ist,** senden? Sie können sehen, was er tut, das Passwort, die verwendete MFA, die Cookies stehlen...\
|
||||||
Sie können dies mit [**EvilnVNC**](https://github.com/JoelGMSec/EvilnoVNC) tun.
|
Sie können dies mit [**EvilnVNC**](https://github.com/JoelGMSec/EvilnoVNC) tun.
|
||||||
|
|
||||||
## Erkennung der Erkennung
|
## Erkennung der Erkennung
|
||||||
|
@ -0,0 +1,104 @@
|
|||||||
|
# Homograph / Homoglyph Angriffe im Phishing
|
||||||
|
|
||||||
|
{{#include ../../banners/hacktricks-training.md}}
|
||||||
|
|
||||||
|
## Übersicht
|
||||||
|
|
||||||
|
Ein Homograph (auch Homoglyph) Angriff nutzt die Tatsache aus, dass viele **Unicode-Codepunkte aus nicht-lateinischen Schriften visuell identisch oder extrem ähnlich zu ASCII-Zeichen sind**. Durch das Ersetzen eines oder mehrerer lateinischer Zeichen durch ihre ähnlich aussehenden Gegenstücke kann ein Angreifer:
|
||||||
|
|
||||||
|
* Anzeigenamen, Betreffzeilen oder Nachrichteninhalte erstellen, die für das menschliche Auge legitim erscheinen, aber keyword-basierte Erkennungen umgehen.
|
||||||
|
* Domains, Subdomains oder URL-Pfade erstellen, die Opfer dazu bringen, zu glauben, sie besuchen eine vertrauenswürdige Seite.
|
||||||
|
|
||||||
|
Da jedes Glyph intern durch seinen **Unicode-Codepunkt** identifiziert wird, reicht ein einzelnes ersetztes Zeichen aus, um naive String-Vergleiche zu überwinden (z. B. `"Παypal.com"` vs. `"Paypal.com"`).
|
||||||
|
|
||||||
|
## Typischer Phishing-Workflow
|
||||||
|
|
||||||
|
1. **Nachrichteninhalt erstellen** – Ersetzen Sie spezifische lateinische Buchstaben in der impersonierten Marke / dem Schlüsselwort durch visuell nicht unterscheidbare Zeichen aus einer anderen Schrift (Griechisch, Kyrillisch, Armenisch, Cherokee usw.).
|
||||||
|
2. **Unterstützende Infrastruktur registrieren** – Optional eine Homoglyph-Domain registrieren und ein TLS-Zertifikat erhalten (die meisten CAs führen keine visuellen Ähnlichkeitsprüfungen durch).
|
||||||
|
3. **E-Mail / SMS senden** – Die Nachricht enthält Homoglyphen an einem oder mehreren der folgenden Orte:
|
||||||
|
* Absenderanzeige (z. B. `Ηеlрdеѕk`)
|
||||||
|
* Betreffzeile (`Urgеnt Аctіon Rеquіrеd`)
|
||||||
|
* Hyperlink-Text oder vollqualifizierter Domainname
|
||||||
|
4. **Umleitungs-Kette** – Das Opfer wird durch scheinbar harmlose Websites oder URL-Shortener geleitet, bevor es auf dem bösartigen Host landet, der Anmeldeinformationen erntet / Malware liefert.
|
||||||
|
|
||||||
|
## Häufig missbrauchte Unicode-Bereiche
|
||||||
|
|
||||||
|
| Schrift | Bereich | Beispiel-Glyph | Sieht aus wie |
|
||||||
|
|--------|-------|---------------|------------|
|
||||||
|
| Griechisch | U+0370-03FF | `Η` (U+0397) | Latein `H` |
|
||||||
|
| Griechisch | U+0370-03FF | `ρ` (U+03C1) | Latein `p` |
|
||||||
|
| Kyrillisch | U+0400-04FF | `а` (U+0430) | Latein `a` |
|
||||||
|
| Kyrillisch | U+0400-04FF | `е` (U+0435) | Latein `e` |
|
||||||
|
| Armenisch | U+0530-058F | `օ` (U+0585) | Latein `o` |
|
||||||
|
| Cherokee | U+13A0-13FF | `Ꭲ` (U+13A2) | Latein `T` |
|
||||||
|
|
||||||
|
> Tipp: Vollständige Unicode-Diagramme sind verfügbar unter [unicode.org](https://home.unicode.org/).
|
||||||
|
|
||||||
|
## Erkennungstechniken
|
||||||
|
|
||||||
|
### 1. Mischschriftinspektion
|
||||||
|
|
||||||
|
Phishing-E-Mails, die sich an eine englischsprachige Organisation richten, sollten selten Zeichen aus mehreren Schriften mischen. Eine einfache, aber effektive Heuristik ist es,:
|
||||||
|
|
||||||
|
1. Jedes Zeichen des inspizierten Strings zu durchlaufen.
|
||||||
|
2. Den Codepunkt seinem Unicode-Block zuzuordnen.
|
||||||
|
3. Eine Warnung auszulösen, wenn mehr als eine Schrift vorhanden ist **oder** wenn nicht-lateinische Schriften an unerwarteten Stellen erscheinen (Anzeigename, Domain, Betreff, URL usw.).
|
||||||
|
|
||||||
|
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. Punycode-Normalisierung (Domains)
|
||||||
|
|
||||||
|
Internationalisierte Domainnamen (IDNs) werden mit **punycode** (`xn--`) codiert. Die Umwandlung jedes Hostnamens in Punycode und dann zurück in Unicode ermöglicht das Abgleichen mit einer Whitelist oder das Durchführen von Ähnlichkeitsprüfungen (z. B. Levenshtein-Distanz) **nachdem** der String normalisiert wurde.
|
||||||
|
```python
|
||||||
|
import idna
|
||||||
|
hostname = "Ρаypal.com" # Greek Rho + Cyrillic a
|
||||||
|
puny = idna.encode(hostname).decode()
|
||||||
|
print(puny) # xn--yl8hpyal.com
|
||||||
|
```
|
||||||
|
### 3. Homoglyph-Wörterbücher / Algorithmen
|
||||||
|
|
||||||
|
Tools wie **dnstwist** (`--homoglyph`) oder **urlcrazy** können visuell ähnliche Domain-Permutationen auflisten und sind nützlich für proaktive Abschaltungen / Überwachung.
|
||||||
|
|
||||||
|
## Prävention & Minderung
|
||||||
|
|
||||||
|
* Strenge DMARC/DKIM/SPF-Richtlinien durchsetzen – Spoofing von unautorisierten Domains verhindern.
|
||||||
|
* Implementieren Sie die oben genannte Erkennungslogik in **Secure Email Gateways** und **SIEM/XSOAR**-Playbooks.
|
||||||
|
* Nachrichten kennzeichnen oder quarantänisieren, bei denen der Anzeigename-Domain ≠ Absender-Domain.
|
||||||
|
* Benutzer schulen: Verdächtigen Text in einen Unicode-Inspektor kopieren, Links überfahren, URL-Shortener niemals vertrauen.
|
||||||
|
|
||||||
|
## Beispiele aus der Praxis
|
||||||
|
|
||||||
|
* Anzeigename: `Сonfidеntiаl Ꭲiꮯkеt` (Kyrillisch `С`, `е`, `а`; Cherokee `Ꭲ`; lateinisches Kleinbuchstaben `ꮯ`).
|
||||||
|
* Domain-Kette: `bestseoservices.com` ➜ kommunales `/templates` Verzeichnis ➜ `kig.skyvaulyt.ru` ➜ gefälschte Microsoft-Anmeldung bei `mlcorsftpsswddprotcct.approaches.it.com`, geschützt durch benutzerdefinierte OTP CAPTCHA.
|
||||||
|
* Spotify-Imitation: `Sρօtifւ` Absender mit Link, der hinter `redirects.ca` verborgen ist.
|
||||||
|
|
||||||
|
Diese Beispiele stammen aus der Forschung von Unit 42 (Juli 2025) und veranschaulichen, wie Homographenmissbrauch mit URL-Umleitung und CAPTCHA-Umgehung kombiniert wird, um automatisierte Analysen zu umgehen.
|
||||||
|
|
||||||
|
## Referenzen
|
||||||
|
|
||||||
|
- [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}}
|
Loading…
x
Reference in New Issue
Block a user