mirror of
https://github.com/HackTricks-wiki/hacktricks.git
synced 2025-10-10 18:36:50 +00:00
36 lines
2.7 KiB
Markdown
36 lines
2.7 KiB
Markdown
# SMTP Smuggling
|
|
|
|
{{#include ../../banners/hacktricks-training.md}}
|
|
|
|
## Informações Básicas
|
|
|
|
Esse tipo de vulnerabilidade foi [**originalmente descoberto neste post**](https://sec-consult.com/blog/detail/smtp-smuggling-spoofing-e-mails-worldwide/) onde é explicado que é possível **explorar discrepâncias em como o protocolo SMTP é interpretado** ao finalizar um e-mail, permitindo que um atacante contrabandeie mais e-mails no corpo do e-mail legítimo, permitindo se passar por outros usuários do domínio afetado (como admin@outlook.com) contornando defesas como SPF.
|
|
|
|
### Por que
|
|
|
|
Isso ocorre porque no protocolo SMTP, os **dados da mensagem** a ser enviada no e-mail são controlados por um usuário (atacante) que pode enviar dados especialmente elaborados abusando das diferenças nos analisadores que contrabandeiam e-mails extras no receptor. Veja este exemplo ilustrado do post original:
|
|
|
|
<figure><img src="../../images/image (8) (1) (1) (1) (1).png" alt=""><figcaption><p><a href="https://sec-consult.com/fileadmin/user_upload/sec-consult/Dynamisch/Blogartikel/2023_12/SMTP_Smuggling-Overview__09_.png">https://sec-consult.com/fileadmin/user_upload/sec-consult/Dynamisch/Blogartikel/2023_12/SMTP_Smuggling-Overview__09_.png</a></p></figcaption></figure>
|
|
|
|
### Como
|
|
|
|
Para explorar essa vulnerabilidade, um atacante precisa enviar alguns dados que o **servidor SMTP de saída pensa que é apenas 1 e-mail, mas o servidor SMTP de entrada pensa que há vários e-mails**.
|
|
|
|
Os pesquisadores descobriram que diferentes **servidores de entrada consideram diferentes caracteres como o fim dos dados** da mensagem de e-mail que os servidores de saída não consideram.\
|
|
Por exemplo, um fim regular dos dados é `\r\n.\r`. Mas se o servidor SMTP de entrada também suporta `\n.`, um atacante poderia simplesmente adicionar **esses dados em seu e-mail e começar a indicar os comandos SMTP** de novos e-mails para contrabandeá-los, assim como na imagem anterior.
|
|
|
|
Claro, isso só funcionaria se o **servidor SMTP de saída não tratar esses dados** como o fim dos dados da mensagem, porque nesse caso ele verá 2 e-mails em vez de apenas 1, então, no final, essa é a desincronização que está sendo abusada nessa vulnerabilidade.
|
|
|
|
Dados de desincronização potenciais:
|
|
|
|
- `\n.`
|
|
- `\n.\r`
|
|
|
|
Observe também que o SPF é contornado porque se você contrabandear um e-mail de `admin@outlook.com` de um e-mail de `user@outlook.com`, **o remetente ainda é `outlook.com`.**
|
|
|
|
## **Referências**
|
|
|
|
- [https://sec-consult.com/blog/detail/smtp-smuggling-spoofing-e-mails-worldwide/](https://sec-consult.com/blog/detail/smtp-smuggling-spoofing-e-mails-worldwide/)
|
|
|
|
{{#include ../../banners/hacktricks-training.md}}
|