mirror of
https://github.com/carlospolop/hacktricks
synced 2024-11-23 13:13:41 +00:00
164 lines
10 KiB
Markdown
164 lines
10 KiB
Markdown
# Inyecciones de correo electrónico
|
|
|
|
![](<../.gitbook/assets/image (9) (1) (2).png>)
|
|
|
|
\
|
|
Utilice [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) para construir y **automatizar flujos de trabajo** con las herramientas de la comunidad **más avanzadas del mundo**.\
|
|
Obtenga acceso hoy mismo:
|
|
|
|
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|
|
|
|
<details>
|
|
|
|
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
|
|
|
* ¿Trabaja en una **empresa de ciberseguridad**? ¿Quiere ver su **empresa anunciada en HackTricks**? ¿O quiere tener acceso a la **última versión de PEASS o descargar HackTricks en PDF**? ¡Consulte los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
|
|
* Descubra [**The PEASS Family**](https://opensea.io/collection/the-peass-family), nuestra colección exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* Obtenga el [**swag oficial de PEASS y HackTricks**](https://peass.creator-spring.com)
|
|
* **Únase al** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de telegram**](https://t.me/peass) o **sígame** en **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
|
* **Comparta sus trucos de hacking enviando PR al** [**repositorio de hacktricks**](https://github.com/carlospolop/hacktricks) **y al** [**repositorio de hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|
|
|
|
## Inyectar en correo electrónico enviado
|
|
|
|
### Inyectar Cc y Bcc después del argumento del remitente
|
|
```
|
|
From:sender@domain.com%0ACc:recipient@domain.co,%0ABcc:recipient1@domain.com
|
|
```
|
|
El mensaje será enviado a las cuentas del destinatario y destinatario1.
|
|
|
|
### Inyectar argumento
|
|
```
|
|
From:sender@domain.com%0ATo:attacker@domain.com
|
|
```
|
|
El mensaje será enviado tanto al destinatario original como a la cuenta del atacante.
|
|
|
|
### Inyectar argumento de Asunto
|
|
```
|
|
From:sender@domain.com%0ASubject:This is%20Fake%20Subject
|
|
```
|
|
El asunto falso se agregará al asunto original y en algunos casos lo reemplazará. Depende del comportamiento del servicio de correo.
|
|
|
|
### Cambiar el cuerpo del mensaje
|
|
|
|
Inyecte dos saltos de línea y luego escriba su mensaje para cambiar el cuerpo del mensaje.
|
|
```
|
|
From:sender@domain.com%0A%0AMy%20New%20%0Fake%20Message.
|
|
```
|
|
### Explotación de la función mail() de PHP
|
|
```bash
|
|
# The function has the following definition:
|
|
|
|
php --rf mail
|
|
|
|
Function [ <internal:standard> function mail ] {
|
|
- Parameters [5] {
|
|
Parameter #0 [ <required> $to ]
|
|
Parameter #1 [ <required> $subject ]
|
|
Parameter #2 [ <required> $message ]
|
|
Parameter #3 [ <optional> $additional_headers ]
|
|
Parameter #4 [ <optional> $additional_parameters ]
|
|
}
|
|
}
|
|
```
|
|
#### El quinto parámetro ($additional\_parameters)
|
|
|
|
Esta sección se basará en **cómo abusar de este parámetro suponiendo que un atacante lo controle**.
|
|
|
|
Este parámetro se agregará a la línea de comando que PHP usará para invocar el binario sendmail. Sin embargo, se sanitizará con la función `escapeshellcmd($additional_parameters)`.
|
|
|
|
Un atacante puede **inyectar parámetros adicionales para sendmail** en este caso.
|
|
|
|
#### Diferencias en la implementación de /usr/sbin/sendmail
|
|
|
|
La interfaz **sendmail** es **proporcionada por el software MTA de correo electrónico** (Sendmail, Postfix, Exim, etc.) instalado en el sistema. Aunque la **funcionalidad básica** (como los parámetros -t -i -f) sigue siendo la **misma** por razones de compatibilidad, **otras funciones y parámetros** varían mucho según el MTA instalado.
|
|
|
|
Aquí hay algunos ejemplos de diferentes páginas de manual de la interfaz de comando sendmail:
|
|
|
|
* Sendmail MTA: http://www.sendmail.org/\~ca/email/man/sendmail.html
|
|
* Postfix MTA: http://www.postfix.org/mailq.1.html
|
|
* Exim MTA: https://linux.die.net/man/8/eximReferences
|
|
|
|
Dependiendo del **origen del binario sendmail**, se han descubierto diferentes opciones para abusar de ellos y **filtrar archivos o incluso ejecutar comandos arbitrarios**. Ver cómo en [**https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html**](https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html)
|
|
|
|
## Inyectar en el nombre del correo electrónico
|
|
|
|
### Partes ignoradas de un correo electrónico
|
|
|
|
Los símbolos: **+, -** y **{}** en raras ocasiones se pueden usar para etiquetar y ser ignorados por la mayoría de los servidores de correo electrónico.
|
|
|
|
* Ej. john.doe+intigriti@example.com → john.doe@example.com
|
|
|
|
Los **comentarios entre paréntesis ()** al principio o al final también se ignorarán.
|
|
|
|
* Ej. john.doe(intigriti)@example.com → john.doe@example.com
|
|
|
|
### Bypass de lista blanca
|
|
|
|
<figure><img src="../.gitbook/assets/image (4) (6).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
### Comillas
|
|
|
|
<figure><img src="../.gitbook/assets/image (6) (4).png" alt=""><figcaption></figcaption></figure>
|
|
|
|
### IPs
|
|
|
|
También puede usar IPs como nombres de dominio entre corchetes:
|
|
|
|
* john.doe@\[127.0.0.1]
|
|
* john.doe@\[IPv6:2001:db8::1]
|
|
|
|
### Otras vulnerabilidades
|
|
|
|
![](<../.gitbook/assets/image (296).png>)
|
|
|
|
## SSO de terceros
|
|
|
|
### XSS
|
|
|
|
Algunos servicios como **github** o **salesforce permiten** crear una **dirección de correo electrónico con payloads XSS**. Si puede **usar estos proveedores para iniciar sesión en otros servicios** y estos servicios **no están sanitizando** correctamente el correo electrónico, podría causar **XSS**.
|
|
|
|
### Toma de cuenta
|
|
|
|
Si un **servicio SSO** le permite **crear una cuenta sin verificar la dirección de correo electrónico proporcionada** (como **salesforce**) y luego puede usar esa cuenta para **iniciar sesión en un servicio diferente** que **confía** en salesforce, podría acceder a cualquier cuenta.\
|
|
_Tenga en cuenta que salesforce indica si se verificó o no el correo electrónico proporcionado, pero la aplicación también debería tener en cuenta esta información._
|
|
|
|
## Responder a
|
|
|
|
Puede enviar un correo electrónico usando _**De: empresa.com**_\*\* \*\* y _**Responder a: atacante.com**_ y si se envía alguna **respuesta automática** debido a que el correo electrónico se envió **desde** una **dirección interna**, el **atacante** podría ser capaz de **recibir** esa **respuesta**.
|
|
|
|
## Tasa de rebote duro
|
|
|
|
Algunas aplicaciones como AWS tienen una **Tasa de rebote duro** (en AWS es del 10%), que cuando está sobrecargado, el servicio de correo electrónico se bloquea.
|
|
|
|
Un **rebote duro** es un **correo electrónico** que no se pudo entregar por algunas razones permanentes. Tal vez la dirección de correo electrónico es falsa, tal vez el dominio de correo electrónico no es un dominio real, o tal vez el servidor del destinatario de correo electrónico no aceptará correos electrónicos, lo que significa que de un total de 1000 correos electrónicos, si 100 de ellos eran falsos o eran inválidos que causaron que todos rebotaran, **AWS SES** bloqueará su servicio.
|
|
|
|
Por lo tanto, si puede **enviar correos electrónicos (tal vez invitaciones) desde la aplicación web a cualquier dirección de correo electrónico, podría provocar este bloqueo enviando cientos de invitaciones a usuarios y dominios inexistentes: DoS del servicio de correo electrónico.**
|
|
|
|
## Referencias
|
|
|
|
* [https://resources.infosecinstitute.com/email-injection/](https://resources.infosecinstitute.com/email-injection/)
|
|
* [https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html](https://exploitbox.io/paper/Pwning-PHP-Mail-Function-For-Fun-And-RCE.html)
|
|
* [https://drive.google.com/file/d/1iKL6wbp3yYwOmxEtAg1jEmuOf8RM8ty9/view](https://drive.google.com/file/d/1iKL6wbp3yYwOmxEtAg1jEmuOf8RM8ty9/view)
|
|
* [https://www.youtube.com/watch?app=desktop\&v=4ZsTKvfP1g0](https://www.youtube.com/watch?app=desktop\&v=4ZsTKvfP1g0)
|
|
|
|
<details>
|
|
|
|
<summary><a href="https://cloud.hacktricks.xyz/pentesting-cloud/pentesting-cloud-methodology"><strong>☁️ HackTricks Cloud ☁️</strong></a> -<a href="https://twitter.com/hacktricks_live"><strong>🐦 Twitter 🐦</strong></a> - <a href="https://www.twitch.tv/hacktricks_live/schedule"><strong>🎙️ Twitch 🎙️</strong></a> - <a href="https://www.youtube.com/@hacktricks_LIVE"><strong>🎥 Youtube 🎥</strong></a></summary>
|
|
|
|
* ¿Trabaja en una **empresa de ciberseguridad**? ¿Quiere ver su **empresa anunciada en HackTricks**? o ¿quiere tener acceso a la **última versión de PEASS o descargar HackTricks en PDF**? ¡Consulte los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
|
|
* Descubre [**The PEASS Family**](https://opensea.io/collection/the-peass-family), nuestra colección de exclusivos [**NFTs**](https://opensea.io/collection/the-peass-family)
|
|
* Obtenga el [**swag oficial de PEASS y HackTricks**](https://peass.creator-spring.com)
|
|
* **Únase al** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de telegram**](https://t.me/peass) o **sígame** en **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
|
|
* **Comparta sus trucos de hacking enviando PR al** [**repositorio de hacktricks**](https://github.com/carlospolop/hacktricks) **y al** [**repositorio de hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
|
|
|
|
</details>
|
|
|
|
![](<../.gitbook/assets/image (9) (1) (2).png>)
|
|
|
|
\
|
|
Use [**Trickest**](https://trickest.com/?utm\_campaign=hacktrics\&utm\_medium=banner\&utm\_source=hacktricks) para crear y **automatizar flujos de trabajo** con las herramientas de la comunidad más avanzadas del mundo.\
|
|
Obtenga acceso hoy:
|
|
|
|
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
|