SMTP Smuggling

Reading time: 3 minutes

tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Unterstützen Sie HackTricks

Grundinformationen

Diese Art von Schwachstelle wurde ursprünglich in diesem Beitrag entdeckt, in dem erklärt wird, dass es möglich ist, Diskrepanzen in der Interpretation des SMTP-Protokolls auszunutzen, wenn eine E-Mail abgeschlossen wird, was es einem Angreifer ermöglicht, weitere E-Mails im Text der legitimen E-Mail zu schmuggeln und andere Benutzer der betroffenen Domain (wie admin@outlook.com) zu impersonieren und Verteidigungen wie SPF zu umgehen.

Warum

Das liegt daran, dass im SMTP-Protokoll die Daten der Nachricht, die in der E-Mail gesendet werden sollen, von einem Benutzer (Angreifer) kontrolliert werden, der speziell gestaltete Daten senden könnte, die Unterschiede in den Parsern ausnutzen, die zusätzliche E-Mails im Empfänger schmuggeln. Schauen Sie sich dieses illustrierte Beispiel aus dem ursprünglichen Beitrag an:

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

Wie

Um diese Schwachstelle auszunutzen, muss ein Angreifer einige Daten senden, die der Outbound SMTP-Server für nur 1 E-Mail hält, während der Inbound SMTP-Server denkt, dass es mehrere E-Mails gibt.

Die Forscher entdeckten, dass verschiedene Inbound-Server unterschiedliche Zeichen als das Ende der Daten der E-Mail-Nachricht betrachten, die Outbound-Server nicht berücksichtigen.
Zum Beispiel ist ein reguläres Ende der Daten \r\n.\r. Wenn der Inbound SMTP-Server jedoch auch \n. unterstützt, könnte ein Angreifer einfach diese Daten in seiner E-Mail hinzufügen und beginnen, die SMTP-Befehle neuer E-Mails anzugeben, um sie wie im vorherigen Bild zu schmuggeln.

Natürlich könnte dies nur funktionieren, wenn der Outbound SMTP-Server diese Daten nicht ebenfalls als das Ende der Nachrichtendaten behandelt, denn in diesem Fall würde er 2 E-Mails anstelle von nur 1 sehen, sodass dies letztendlich die Desynchronisation ist, die in dieser Schwachstelle ausgenutzt wird.

Potenzielle Desynchronisationsdaten:

  • \n.
  • \n.\r

Beachten Sie auch, dass SPF umgangen wird, da, wenn Sie eine E-Mail von admin@outlook.com von einer E-Mail von user@outlook.com schmuggeln, der Absender immer noch outlook.com ist.

Referenzen

tip

Lernen & üben Sie AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Lernen & üben Sie GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)

Unterstützen Sie HackTricks