hacktricks/network-services-pentesting/pentesting-smtp/smtp-smuggling.md

4.8 KiB

SMTP Smuggling

{% hint style="success" %} Impara e pratica Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks
{% endhint %}

Informazioni di base

Questo tipo di vulnerabilità è stata originariamente scoperta in questo post dove viene spiegato che è possibile sfruttare le discrepanze nel modo in cui il protocollo SMTP viene interpretato durante la finalizzazione di un'email, consentendo a un attaccante di contrabbandare più email nel corpo di quella legittima, permettendo di impersonare altri utenti del dominio interessato (come admin@outlook.com) eludendo difese come SPF.

Perché

Questo accade perché nel protocollo SMTP, i dati del messaggio da inviare nell'email sono controllati da un utente (attaccante) che potrebbe inviare dati appositamente creati abusando delle differenze nei parser che contrabbanderanno email extra nel ricevitore. Dai un'occhiata a questo esempio illustrato dal post originale:

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

Come

Per sfruttare questa vulnerabilità, un attaccante deve inviare alcuni dati che il server SMTP in uscita pensa siano solo 1 email ma il server SMTP in entrata pensa che ci siano diverse email.

I ricercatori hanno scoperto che diversi server in entrata considerano diversi caratteri come la fine dei dati del messaggio email che i server in uscita non considerano.
Ad esempio, una normale fine dei dati è \r\n.\r. Ma se il server SMTP in entrata supporta anche \n., un attaccante potrebbe semplicemente aggiungere quelli dati nella sua email e iniziare a indicare i comandi SMTP di nuove email da contrabbandare proprio come nell'immagine precedente.

Ovviamente, questo potrebbe funzionare solo se il server SMTP in uscita non tratta anche questi dati come la fine dei dati del messaggio, perché in quel caso vedrà 2 email invece di solo 1, quindi alla fine questa è la desincronizzazione che viene abusata in questa vulnerabilità.

Dati di potenziale desincronizzazione:

  • \n.
  • \n.\r

Nota anche che lo SPF viene eluso perché se contrabbandi un'email da admin@outlook.com da un'email da user@outlook.com, il mittente è ancora outlook.com.

Riferimenti

{% hint style="success" %} Impara e pratica Hacking AWS:HackTricks Training AWS Red Team Expert (ARTE)
Impara e pratica Hacking GCP: HackTricks Training GCP Red Team Expert (GRTE)

Supporta HackTricks
{% endhint %}