SMTP Smuggling

Support HackTricks

Informações Básicas

Esse tipo de vulnerabilidade foi originalmente descoberto neste post 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:

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.. 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.

Além disso, note 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

Support HackTricks

Last updated