# 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:

https://sec-consult.com/fileadmin/user_upload/sec-consult/Dynamisch/Blogartikel/2023_12/SMTP_Smuggling-Overview__09_.png

### 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}}