Angriff via Mail

Eine Untersuchung zeigt, dass sich viele Mail-Server großer Firmen als Multiplikatoren für eine neue Art von Denial-of-Service-Angriff missbrauchen lassen.

In Pocket speichern vorlesen Druckansicht
Lesezeit: 10 Min.
Von
  • Stefan Frei
Inhaltsverzeichnis

Das Mail-Protokoll SMTP ist auf Robustheit ausgelegt, also darauf, dass keine Mails verloren gehen. Deshalb reglementieren die zugehörigen RFCs die Aufgaben und Zuständigkeitsbereiche der Mail-Server recht genau -- auch und gerade für den Fall, dass etwas schief läuft. Gerade diese Robustheit nutzt eine neue Art von Denial-of-Service-Angriffen, bei denen die Opfer mit tausenden von Benachrichtigungs-Mails bombardiert werden.

Kann ein Mail-Server eine Mail, für die er die Zuständigkeit übernommen hat, nicht zustellen, muss er den Absender über dieses Problem informieren (RFC-821, Seite 22). Dies geschieht normalerweise in Form einer so genannten Non-Delivery-Notification (NDN), die in etwa besagt: "Ihre Mail an NoName@irgendwo mit dem Betreff 'soundso' konnte nicht zugestellt werden." Je nach Mail-Server und dessen Konfiguration enthält diese NDN-Mail auch noch Teile des Originals.

Diese NDN geht an den Absender; konkret an die Mail-Adresse, die als "From" im Envelope der Mail angegeben wurde. Diese Adresse lässt sich beliebig fälschen, sodass der Mail-Server unter Umständen NDNs an unbeteiligte Dritte senden, die mit der Urspungs-Mail nichts zu tun haben. Nahezu jeder hatte solche Mails schon in seinem Postfach, wenn ein Virus sich mit seiner Absenderadresse an andere verschickte. Das ist schlimm genug -- richtig böse wird es jedoch, wenn Angreifer es schaffen, mit einer einzigen Mail tausende von NDNs auszulösen. Unsere Untersuchungen [1] haben gezeigt, dass genau das möglich ist.

Das SMTP-Protokoll sieht vor, eine E-Mail in einer SMTP-Sitzung gleichzeitig an mehrere Empfänger weiterzuleiten (CC, BCC). Dazu setzt ein Mail-Gateway in einer SMTP-Sitzung mehrere RCPT TO:-Befehle ab gefolgt von DATA und dem Inhalt der Mail. Das vermeidet die mehrfache Übertragung des gleichen Inhalts an denselben Mail-Server. Kann der Mail-Server die E-Mail nicht an alle Empfänger ausliefern, so muss er gemäss RFC-821 eine NDN generieren und an den Absender schicken.

Der einfache Ansatz, einem Server eine Mail mit 1000 ungültigen Adressen vorzuwerfen, scheitert in der Regel. Der Mail-Server wird für ihm unbekannte Benutzer einfach die Annahme verweigern ( 550 Unknown user ...). Er muss dann keine NDN erstellen, denn die Zuständigkeit bleibt beim Versender. Doch die meisten größeren Firmen betreiben mehrstufige Mail-Server, um schon in einer DMZ Spam und Viren auszufiltern. Dabei hat der vorgelagerte Server oft keine Informationen über die gültigen Mail-Adressen der Firma, sondern nimmt einfach alles an, was an die eigene Mail-Domain gerichtet ist. Stellt er dann beim Weiterleiten der Mails an die internen Server fest, dass eine Empfängeradresse ungültig ist, muss er laut RFC-821 den Absender benachrichtigen.

Leider definiert RFC-821 nicht genau, wie das zu geschehen hat, wenn eine E-Mail mehrere ungültige Empfänger hat. Somit bleibt es den Entwicklern der Server-Software überlassen, wie sie das implementieren. Unsere Untersuchung hat gezeigt, dass es leider viele Mail-Server gibt, die für jeden ungültigen Empfänger eine separate NDN erstellen. Das bedeutet, dass ein Angreifer durch eine einzige Mail mit einem gefälschten Absender tausende von NDN-Mails an sein Opfer schicken lassen kann. Außerdem enthalten die NDNs oft eine Kopie der ursprünglichen E-Mail inklusive allen Attachments und erzeugen damit auch beträchtlichen Datenverkehr.