Sicherheitslücke im Newsletter-System MailOut
Abgreifen von E-Mail-Adressen leicht gemacht – wieder ein mal können Suchmaschinen dazu missbraucht werden, an vertrauliche Informationen zu gelangen: Das Newsletter-System MailOut gibt in der Standard-Konfiguration die E-Mail-Adressen der noch nicht die in Hauptdatenbank übernommenen Interessenten preis. Sie stehen in einer einfachen Textdatei, die für jedermann zugänglich auf dem Webserver liegt.
Die Funktionsweise von MailOut und das Problem
Was die Verwaltung der E-Mail-Adressen der Interessenten angeht, wurden bei Entwicklung MailOut offensichtlich sämtliche Sicherheitsvorkehrungen außer Acht gelassen. Die Hauptkomponente von MailOut ist ein Windows-Programm und läuft auf dem Rechner des Betreibers. Um die Abwicklung von Ein- und Austragungen über die Website kümmert sich ein kleines PHP-Script. Dieses Script trägt die E-Mail-Adressen in die Dateien „email_list_in.txt“ bzw. „email_list_out.txt“ auf dem Webserver ein. Mit Hilfe des Windows-Programm holt der Betreiber dann vor dem Versand des nächsten Newsletters die Neueintragungen bzw. Abmeldungen über eine ungesicherte HTTP-Verbindung ab. Die Textdateien auf dem Webserver enthalten also immer die noch nicht abgeholten Ein- bzw. Austragungen.
Eine Google-Suche nach „powered by MailOut Enterprise“ fördert diverse Bestell-/Abstellseiten von MailOut zu Tage. Ruft man eine solche Seite auf und ersetzt den Dateinamen in der URL (z.B. „unsubscribe.html“) durch „email_list_in.txt“ oder „email_list_out.txt“, findet man in den meisten Fällen eine Auflistung von mit hoher Wahrscheinlichkeit gültigen E-Mail-Adressen.
Ein Angreifer könnte sich also einen Cronjob einrichten, der die E-Mail-Adressen in regelmäßigen Abständen abholt und seine Datenbank einpflegt – ohne dass der Betreiber davon etwas mitbekommt. (Es sei denn natürlich, er analysiert regelmäßig seine Logs. Aber wer das tut, dem sollte diese Sicherheitslücke schon längst aufgefallen sein.)
Abhilfe für den Betreiber
Wer dieses System auf seiner Website einsetzt, sollte die Dateien, die vertrauliche Informationen enthalten, unbedingt vor öffentlichem Zugriff schützen. Dies kann auf Apache-Webservern mit der folgenden .htaccess-Datei erreicht werden:
<FilesMatch "^(email_list_(.*)|hashes\.csv)$">
Order deny,allow
Deny from all
</FilesMatch>
Die Dateien
- email_list_in.txt
- email_list_out.txt
- hashes.csv
sind dann über HTTP nicht länger zugänglich. Das hat allerdings zur Konsequenz, dass die Adressen auch von der MailOut-Software nicht mehr ausgelesen werden können. Abhilfe schafft eine IP-basierte Ausnahmeregelung (einzufügen nach der Deny-Regel):
Allow from 0.0.0.0
Wer allerdings eine dynamische IP-Adresse besitzt oder das Newsletter-System von unterschiedlichen Internetzugängen aus verwalten möchte, muss vor jeder Aktualisierung der Datenbank seine aktuelle IP-Adresse eintragen.
Abhilfe für Interessenten
Wer bei der Bestellung eines Newsletter unter dem Formular die Zeile „…powered by MailOut Enterprise!“ entdeckt, sollte gewarnt sein. Entweder sieht man von der Bestellung des Newsletter gänzlich ab oder man verwendet eine Wegwerf-Adresse, die bei einer möglichen Spamflut einfach wieder gelöscht werden kann.
Am 14. Juli 2008 um 10:48 Uhr
Hallo!
Vielen Dank für Deinem Hinweis, ich benutze das Programm auch seit einiger Zeit (bin übrigends sehr zufrieden damit), allerdings fehlt in Deinem Beitrag ein GANZ EINTSCHEIDENDER Hinweis und zwar es sind nur die Daten online verfügbar die noch nicht mit dem Programm abgeholt wurden. Man sollte also tunlichst regelmässig seine Newsletterbestellungen abholen (naja das sollte man sowieso machen) dann ist die Gefahr realtiv gering. Ich habe aber als registrierter Kunde mich mit dem Hersteller in Verbindung gesetzt und mir wurde gesagt, dass diese Lücke mit dem nächsten Update geschlossen wird (nur der Vollständigkeit halber!).
Grüße
Am 14. Juli 2008 um 12:41 Uhr
Hallo Thomas,
ich finde, dass aus meiner Problembeschreibung ersichtlich ist, dass es sich nur um die noch nicht abgeholten Adressen handelt. Um Missverständnisse zu vermeiden, werde ich aber nach einer besseren Formulierung suchen. Danke für den Hinweis!
Danke auch für die Ergänzung bzgl. des Updates. Hast Du Informationen dazu, wie diese Lücke geschlossen werden soll? Sinnvoll wäre es wohl, das MailOut-Programm dahingehend zu ergänzen, dass die Zugangsdaten für eine HTTP-Verbindung mit angegeben werden können oder per FTP zugegriffen wird. Die entsprechende htaccess-Datei sollte dann auch mitgeliefert werden.
Gruß
Aaron
Am 30. Juli 2008 um 15:08 Uhr
Hallo!
So nachdem ich als registrierter Kunde in den letzten zwei Wochen am MailOUT-Betatest teilgenommen habe, der die Onlinedateien schon verschlüsselte, habe ich heute von IN MEDIA KG die Nachricht bekommen, das die Version 10.1.0 offiziell draussen ist und diese Verschlüsselung bietet.
Selbstverständlich hab ich mir das gleich angeschaut und das ganze wird mit einem im Programm vergebenen Passwort, mit denen dann nur der Zugriff möglich ist. Ich habe auch mal kurz nach Deinem Posting mit dem Hersteller telefoniert und die meinten das eine .htaccess oder FTP basierte Lösung leider einige Kunden überfordern würde, deswegen wurde die Sache mit dem Passwort genommen. Meiner Meinung nach auch keine ganz schlechte Lösung, da die meisten Leute ja eine dynamische IP haben und zudem ständig Ihre FTP-Passwörter ändern
Ich hatte in meiner Beta-Version keine Probleme und ein Zugriff auf die Dateien ist jetzt auch ohne extra Rechtevergabe komplett ausgeschlossen.
Grüße vom Niederhein…
Thomas