Codeausführung per E-Mail möglich

Kritische Lücke in Roundcube Webmail

| Autor / Redakteur: Moritz Jäger / Peter Schmitz

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)

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.

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.

Kommentare werden geladen....

Kommentar zu diesem Artikel

Der Kommentar wird durch einen Redakteur geprüft und in Kürze freigeschaltet.

Anonym mitdiskutieren oder einloggen Anmelden

Avatar
Zur Wahrung unserer Interessen speichern wir zusätzlich zu den o.g. Informationen die IP-Adresse. Dies dient ausschließlich dem Zweck, dass Sie als Urheber des Kommentars identifiziert werden können. Rechtliche Grundlage ist die Wahrung berechtigter Interessen gem. Art 6 Abs 1 lit. f) DSGVO.
  1. Avatar
    Avatar
    Bearbeitet von am
    Bearbeitet von am
    1. Avatar
      Avatar
      Bearbeitet von am
      Bearbeitet von am

Kommentare werden geladen....

Kommentar melden

Melden Sie diesen Kommentar, wenn dieser nicht den Richtlinien entspricht.

Kommentar Freigeben

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

Freigabe entfernen

Der untenstehende Text wird an den Kommentator gesendet, falls dieser eine Email-hinterlegt hat.

copyright

Dieser Beitrag ist urheberrechtlich geschützt. Sie wollen ihn für Ihre Zwecke verwenden? Infos finden Sie unter www.mycontentfactory.de (ID: 44417522 / Sicherheitslücken)