Suchen

Codeausführung per E-Mail möglich Kritische Lücke in Roundcube Webmail

Autor / Redakteur: Moritz Jäger / Peter Schmitz

Der populäre Webmailer Roundcube enthielt bis Version 1.2.2 eine schwerwiegende Sicherheitslücke. Angreifer konnten per E-Mail Dateien im Web-Root anlegen und sich so Zugriff auf die Webserver verschaffen.

Firma zum Thema

Das weit verbreitete Webmailsystem Roundcube enthält eine kritische Sicherheitslücke, über die sich Angreifer Zugang zu den Servern verschaffen können.
Das weit verbreitete Webmailsystem Roundcube enthält eine kritische Sicherheitslücke, über die sich Angreifer Zugang zu den Servern verschaffen können.
(Bild: Roundcube)

Roundcube ist ein Webmail-System, das vor allem dank seiner geringen Anforderungen – PHP, MySQL und IMAP reichen – auf zahlreichen Servern zum Einsatz kommt. Sicherheitsforscher von RIPStech haben nun allerdings eine hoch kritische Lücke dokumentiert, die vor Version 1.2.3 auftritt. Angreifer mit Roundcube-Zugang können diese nutzen, um nahezu beliebigen Code auf dem darunterliegenden Server auszuführen.

Für einen erfolgreichen Angriff müssen diese Vorgaben erfüllt sein:

  • Roundcube muss die mail()-Funktion von PHP nutzen (das ist Standard, falls kein SMTP eingerichtet wurde);
  • Die mail()-Funktion wiederum muss sendmail zum Absetzen der Nachrichten verwenden (auch das ist standardmäßig der Fall);
  • Der safe_mode von PHP ist deaktiviert;
  • Der Angreifer muss den absoluten Pfad des Webroots kennen oder erraten;
  • Der Angreifer muss E-Mails über Roundcoube versenden können.

Diese ersten vier Anforderungen sind nicht besonders schwierig, die Einstellungen sind Standard auf vielen Systemen. Der Zugriff auf Roundcube ist etwas schwieriger, über schlechte Passwörter, Brute-Force-Attacken oder Standard-Accounts können Angreifer aber auch diese Hürde umgehen.

Codeeinspeisung per Parameter

Im Kern dieser Attacke steckt ein Problem bei der Bereinigung von Nutzereingaben. E-Mails lassen sich so manipulieren, dass die mail()-Funktion einen fünften Parameter erhält. mail() wiederum ruft beim Versenden einer Nachricht sendmail auf, der fünfte Parameter wird dabei an sendmail übergeben. Über den -X-Parameter lässt sich der Mail-Verkehr in einer Datei loggen. Genau diese Kette an Funktion kann der Angreifer nutzen, um im Webroot-Verzeichnis eine PHP-Datei, etwa eine Shell, einzuschleusen.

Update schließt Lücke

Die Sicherheitslücke wurde Ende November an die Entwickler gemeldet, am 28.11 wurde die Schwachstelle im Update 1.2.3 behoben. Wer Roundcube verwendet sollte möglichst schnell auf diese Version aktualisieren. Zudem sollte man das Webroot überwachen und bei der Erstellung neuer Dateien sofort Alarm schlagen lassen. Da die mail()-Funktion bereits länger als unsicher gilt sollte man den E-Mail-Versand idealerweise über SMTP abwickeln, ein entsprechender Server lässt sich leicht einrichten.

(ID:44417522)

Über den Autor

 Moritz Jäger

Moritz Jäger

IT Journalist