Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
espoofer — Ein E-Mail-Spoofing-Testwerkzeug, das darauf abzielt, SPF/DKIM/DMARC zu umgehen und DKIM-Signaturen zu fälschen.🍻 | Kitploit
Tools/GitHubGitHub/chenjj/espoofer
Phishing-ToolsSchwachstellenanalysePenetrationstestsPapers & ForschungLernen & BildungE-Mail-Sicherheit
GitHubchenjj/espoofer

espoofer

Ein E-Mail-Spoofing-Testwerkzeug, das darauf abzielt, SPF/DKIM/DMARC zu umgehen und DKIM-Signaturen zu fälschen.🍻

Repository anzeigen
1.7k281vor 4 JahrenVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
Webseite

espoofer

espoofer ist ein Open-Source-Testwerkzeug, um die SPF-, DKIM- und DMARC-Authentifizierung in E-Mail-Systemen zu umgehen. Es hilft Mailserver-Administratoren und Penetrationstestern zu überprüfen, ob der Ziel-Mailserver und -Client anfällig für E-Mail-Spoofing-Angriffe sind oder missbraucht werden können, um Spoofing-E-Mails zu senden.


Abbildung 1. Ein Beispiel unserer Spoofing-Angriffe auf Gmail (Behoben, Demovideo)

Warum dieses Tool erstellen?

E-Mail-Spoofing ist eine große Bedrohung für sowohl Einzelpersonen als auch Organisationen (Yahoo-Breach, John Podesta). Um dieses Problem zu adressieren, verwenden moderne E-Mail-Dienste und Websites Authentifizierungsprotokolle – SPF, DKIM und DMARC – um E-Mail-Fälschungen zu verhindern.

Unsere neueste Forschung zeigt, dass die Implementierung dieser Protokolle unter einer Reihe von Sicherheitsproblemen leidet, die ausgenutzt werden können, um SPF-/DKIM-/DMARC-Schutz zu umgehen. Abbildung 1 demonstriert einen unserer Spoofing-Angriffe, um DKIM und DMARC in Gmail zu umgehen. Für weitere technische Details siehe unseren Black Hat USA 2020 Vortrag (mit Präsentationsvideo) oder das USENIX Security 2020 Paper.

  • Black Hat USA 2020 Folien (PDF): You have No Idea Who Sent that Email: 18 Attacks on Email Sender Authentication
  • USENIX Security 2020 Paper (PDF): Composition Kills: A Case Study of Email Sender Authentication
    • Distinguished Paper Award Winner

In diesem Repository fassen wir alle von uns gefundenen Testfälle zusammen und integrieren sie in dieses Tool, um Administratoren und Sicherheitspraktikern zu helfen, solche Sicherheitsprobleme schnell zu identifizieren und zu lokalisieren.

Bitte verwenden Sie das folgende Zitat, wenn Sie wissenschaftliche Forschung betreiben (Klicken Sie mich).

Latex-Version:

root@kitploit:~
@inproceedings{chen-email,
author = {Jianjun Chen and Vern Paxson and Jian Jiang},
title = {Composition Kills: A Case Study of Email Sender Authentication},
booktitle = {29th {USENIX} Security Symposium ({USENIX} Security 20)},
year = {2020},
isbn = {978-1-939133-17-5},
pages = {2183--2199},
url = {https://www.usenix.org/conference/usenixsecurity20/presentation/chen-jianjun},
publisher = {{USENIX} Association},
month = aug,
}

Word-Version:

Jianjun Chen, Vern Paxson, and Jian Jiang. "Composition kills: A case study of email sender authentication." In 29th USENIX Security Symposium (USENIX Security 20), pp. 2183-2199. 2020.

Installation

  • Dieses Tool herunterladen
root@kitploit:~
git clone https://github.com/chenjj/espoofer
  • Abhängigkeiten installieren
root@kitploit:~
sudo pip3 install -r requirements.txt

Python-Version: Python 3 (>=3.7).

Verwendung

espoofer hat drei Arbeitsmodi: Server ('s', Standardmodus), Client ('c') und Manuell ('m'). Im Server-Modus arbeitet espoofer wie ein Mailserver, um die Validierung in empfangenden Diensten zu testen. Im Client-Modus arbeitet espoofer als E-Mail-Client, um die Validierung in sendenden Diensten zu testen. Der Manuelle Modus wird für Debug-Zwecke verwendet.


Abbildung 2. Drei Arten von Angreifern und ihre Arbeitsmodi

Server-Modus

Um espoofer im Server-Modus auszuführen, benötigen Sie: 1) eine IP-Adresse (1.2.3.4), bei der der ausgehende Port 25 nicht vom ISP blockiert wird, und 2) eine Domain (attack.com).

  1. Domain-Konfiguration
  • DKIM öffentlichen Schlüssel für attack.com setzen
root@kitploit:~
selector._domainkey.attacker.com TXT  "v=DKIM1; k=rsa; t=y; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDNjwdrmp/gcbKLaGQfRZk+LJ6XOWuQXkAOa/lI1En4t4sLuWiKiL6hACqMrsKQ8XfgqN76mmx4CHWn2VqVewFh7QTvshGLywWwrAJZdQ4KTlfR/2EwAlrItndijOfr2tpZRgP0nTY6saktkhQdwrk3U0SZmG7U8L9IPj7ZwPKGvQIDAQAB"
  • SPF-Eintrag für attack.com setzen
root@kitploit:~
attack.com TXT "v=spf1 ip4:1.2.3.4 +all"
  1. Konfigurieren Sie das Tool in config.py
root@kitploit:~
config ={
	"attacker_site": b"attack.com", # attack.com
	"legitimate_site_address": b"[email protected]", # legitimate.com
	"victim_address": b"[email protected]", # [email protected]
	"case_id": b"server_a1", # server_a1
}

Sie können die case_id aller Testfälle mit der Option -l auflisten:

root@kitploit:~
python3 espoofer.py -l
  1. Führen Sie das Tool aus, um eine Spoofing-E-Mail zu senden
root@kitploit:~
python3 espoofer.py

Sie können die case_id in der config.py ändern oder die Option -id in der Befehlszeile verwenden, um verschiedene Fälle zu testen:

root@kitploit:~
python3 espoofer.py -id server_a1

Client-Modus

Um espoofer im Client-Modus auszuführen, benötigen Sie ein Konto beim Ziel-E-Mail-Dienst. Dieser Angriff nutzt das Versagen einiger E-Mail-Dienste aus, eine ausreichende Validierung von E-Mails durchzuführen, die von lokalen MUAs empfangen werden. Zum Beispiel versucht [email protected], sich als [email protected] auszugeben.

  1. Konfigurieren Sie das Tool in config.py
root@kitploit:~
config ={
	"legitimate_site_address": b"[email protected]",  
	"victim_address": b"[email protected]", 
	"case_id": b"client_a1",

	"client_mode": {
		"sending_server": ("smtp.gmail.com", 587),  # SMTP-Sende-Server-IP und Port
		"username": b"[email protected]", # Ihr Kontobenutzername und Passwort
		"password": b"your_password_here",
	},
}

Sie können die case_id aller Testfälle mit der Option -l auflisten:

root@kitploit:~
python3 espoofer.py -l

Hinweis: sending_server sollte die SMTP-Sende-Server-Adresse sein, nicht die Empfangs-Server-Adresse.

  1. Führen Sie das Tool aus, um eine Spoofing-E-Mail zu senden
root@kitploit:~
python3 espoofer.py -m c

Sie können die case_id in der config.py ändern und erneut ausführen, oder Sie können die Option -id in der Befehlszeile verwenden:

root@kitploit:~
python3 espoofer.py -m c -id client_a1

Manueller Modus

Hier ist ein Beispiel des manuellen Modus:

root@kitploit:~
python3 espoofer.py -m m -helo attack.com -mfrom <[email protected]> -rcptto <[email protected]> -data raw_msg_here -ip 127.0.0.1 -port 25

Screenshots

  1. Eine kurze Übersicht der Testfälle.

Mit diesem Tool gefundene Fehler

  • Gmail.com DMARC-Umgehungs-Demovideo, https://youtu.be/xuKZpT0rsd0
  • Outlook.com DMARC-Umgehungsvideo, https://youtu.be/IsWgAEbPaK0
  • Yahoo.com DMARC-Umgehungsvideo, https://youtu.be/DRepfStOruE
  • Protonmail.com DMARC-Umgehungsvideo, https://youtu.be/bh4_SoPniMA
  • CVE-2020-12272, OpenDMARC-Umgehungs-Fehlerbericht, https://sourceforge.net/p/opendmarc/tickets/237/
  • CVE-2019-20790, OpenDMARC- und pypolicyd-spf-Umgehungs-Fehlerbericht, https://sourceforge.net/p/opendmarc/tickets/235/
  • Mail.ru DMARC-Umgehungs-Fehlerbericht auf HackerOne, https://hackerone.com/reports/731878

Sie sind willkommen, einen Pull-Request zu senden, um hier Ihren Fehlerbericht einzureichen.

Fragen & Antworten

  1. Woher weiß ich, ob die E-Mail die DMARC-Authentifizierung erfolgreich umgangen hat?

Sie können es im Authentication-results-Header in den Roh-Nachrichtenheadern überprüfen. Wenn der Header dmarc=pass anzeigt, hat die E-Mail die DMARC-Authentifizierung bestanden. Sie können einige Demovideos hier ansehen.

  1. Warum schlagen E-Mails beim Senden fehl?

Es gibt mehrere mögliche Gründe, wenn das Senden einer E-Mail fehlschlägt: 1) Ihr ISP blockiert ausgehende E-Mails an Port 25, um Spam zu verhindern. In diesem Fall müssen Sie die Erlaubnis des ISP einholen; 2) die IP-Adresse steht in der Spam-Liste des Ziel-E-Mail-Dienstes. In vielen Fällen können Sie das Problem hier lösen: https://www.spamhaus.org/lookup/ ; 3) einige E-Mail-Dienste überprüfen, ob ein PTR-Eintrag für die sendende IP vorhanden ist. Möglicherweise müssen Sie auch den PTR-Eintrag setzen, um diese Überprüfung zu umgehen; 4) die E-Mail kann die Formatvalidierung des Ziel-E-Mail-Dienstes nicht bestehen. Sie möchten vielleicht einen anderen Testfall ausprobieren.

  1. Warum landet die E-Mail im Spam-Ordner? Gibt es eine Möglichkeit, dies zu vermeiden?

Derzeit konzentriert sich espoofer auf die Umgehung der SPF-/DKIM-/DMARC-Authentifizierung und zielt nicht auf die Umgehung von Spam-Filtern ab. Sie könnten jedoch versuchen, eine vertrauenswürdige sendende IP-Adresse, Domain und einen harmlosen Nachrichteninhalt zu verwenden, um den Spam-Filter zu umgehen.

  1. Warum sende ich eine E-Mail erfolgreich, aber die E-Mail erscheint weder im Posteingang noch im Spam-Ordner?

Nach unseren früheren Erfahrungen filtern einige E-Mail-Dienste verdächtige E-Mails stillschweigend.

  1. Warum kann ich beim Testen von server_a5/a6 keine Sonderzeichen wie '(' in der Domain setzen?

Sie müssen einen eigenen autoritativen DNS-Server einrichten, anstatt DNS-Hosting-Dienste von Drittanbietern zu verwenden, da einige DNS-Hosting-Dienste Einschränkungen beim Setzen von Sonderzeichen haben. Siehe Issue.

Credits

Sie sind willkommen, weitere Testfälle hinzuzufügen.

Tool herunterladen