Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
espoofer — Uno strumento di test per lo spoofing delle email che mira a bypassare SPF/DKIM/DMARC e falsificare le firme DKIM.🍻 | Kitploit
Strumenti/GitHubGitHub/chenjj/espoofer
Strumenti di PhishingAnalisi delle VulnerabilitàPenetration TestingPaper e RicercaApprendimento e FormazioneSicurezza Email
GitHubchenjj/espoofer

espoofer

Uno strumento di test per lo spoofing delle email che mira a bypassare SPF/DKIM/DMARC e falsificare le firme DKIM.🍻

Vedi Repository
1.7k281414 anni faRevisionato da Kitploit

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Sito web

espoofer

espoofer è uno strumento di test open-source per bypassare l'autenticazione SPF, DKIM e DMARC nei sistemi email. Aiuta gli amministratori di server di posta e i penetration tester a verificare se il server e il client di posta elettronica target sono vulnerabili ad attacchi di spoofing email o possono essere abusati per inviare email di spoofing.


Figura 1. Un caso dei nostri attacchi di spoofing su Gmail (Risolto, Video dimostrativo)

Perché costruire questo strumento?

Lo spoofing email è una grande minaccia sia per gli individui che per le organizzazioni (Yahoo breach, John podesta). Per affrontare questo problema, i moderni servizi email e i siti web impiegano protocolli di autenticazione -- SPF, DKIM e DMARC -- per prevenire la falsificazione delle email.

La nostra ultima ricerca mostra che l'implementazione di questi protocolli soffre di numerosi problemi di sicurezza, che possono essere sfruttati per bypassare le protezioni SPF/DKIM/DMARC. La Figura 1 dimostra uno dei nostri attacchi di spoofing per bypassare DKIM e DMARC in Gmail. Per maggiori dettagli tecnici, consulta il nostro Black Hat USA 2020 talk (con video della presentazione) o USENIX security 2020 paper.

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

In questo repository, riassumiamo tutti i casi di test che abbiamo trovato e li integriamo in questo strumento per aiutare amministratori e professionisti della sicurezza a identificare e localizzare rapidamente tali problemi di sicurezza.

Si prega di utilizzare la seguente citazione per ricerche scientifiche (Clicca qui).

Versione Latex:

@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,
}

Versione Word:

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.

Installazione

  • Scarica questo strumento
git clone https://github.com/chenjj/espoofer
  • Installa le dipendenze
sudo pip3 install -r requirements.txt

Versione Python: Python 3 (>=3.7).

Utilizzo

espoofer ha tre modalità di lavoro: server ('s', modalità predefinita), client ('c') e manual ('m'). In modalità server, espoofer funziona come un server di posta per testare la validazione nei servizi di ricezione. In modalità client, espoofer funziona come un client email per testare la validazione nei servizi di invio. La modalità manual è utilizzata per scopi di debug.


Figura 2. Tre tipi di attaccanti e le loro modalità di lavoro

Modalità server

Per eseguire espoofer in modalità server, è necessario avere: 1) un indirizzo IP (1.2.3.4), la cui porta 25 in uscita non sia bloccata dal provider, e 2) un dominio (attack.com).

  1. Configurazione del dominio
  • Imposta la chiave pubblica DKIM per attack.com
selector._domainkey.attacker.com TXT  "v=DKIM1; k=rsa; t=y; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDNjwdrmp/gcbKLaGQfRZk+LJ6XOWuQXkAOa/lI1En4t4sLuWiKiL6hACqMrsKQ8XfgqN76mmx4CHWn2VqVewFh7QTvshGLywWwrAJZdQ4KTlfR/2EwAlrItndijOfr2tpZRgP0nTY6saktkhQdwrk3U0SZmG7U8L9IPj7ZwPKGvQIDAQAB"
  • Imposta il record SPF per attack.com
attack.com TXT "v=spf1 ip4:1.2.3.4 +all"
  1. Configura lo strumento in config.py
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
}

Puoi elencare il case_id di tutti i casi di test usando l'opzione -l:

python3 espoofer.py -l
  1. Esegui lo strumento per inviare un'email di spoofing
python3 espoofer.py

Puoi cambiare il case_id in config.py o usare l'opzione -id nella riga di comando per testare diversi casi:

python3 espoofer.py -id server_a1

Modalità client

Per eseguire espoofer in modalità client, è necessario avere un account sui servizi email target. Questo attacco sfrutta la mancata validazione sufficiente delle email ricevute dai MUA locali da parte di alcuni servizi email. Ad esempio, [email protected] tenta di impersonare [email protected]. 

  1. Configura lo strumento in config.py
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 sending serve ip and port
		"username": b"[email protected]", # Your account username and password
		"password": b"your_passward_here",
	},
}

Puoi elencare il case_id di tutti i casi di test usando l'opzione -l:

python3 espoofer.py -l

Nota: sending_server deve essere l'indirizzo del server SMTP di invio, non l'indirizzo del server di ricezione.

  1. Esegui lo strumento per inviare un'email di spoofing
python3 espoofer.py -m c

Puoi cambiare il case_id in config.py ed eseguirlo di nuovo, oppure usare l'opzione -id nella riga di comando:

python3 espoofer.py -m c -id client_a1

Modalità manuale

Ecco un esempio di modalità manuale:

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

Schermate

  1. Una breve panoramica dei casi di test.

Bug trovati con questo strumento

Scarica lo strumento