Websicherheit: PHPMailer bringt eine böse Weihnachtsüberraschung
In der PHP-Bibliothek PHPMailer wurde eine schwerwiegende Remote-Code-Execution-Lücke gefunden. Bislang gibt es nur spärliche Details. PHPMailer wird von vielen Webapplikationen wie Joomla genutzt.

Mitten während der Weihnachtsfeiertage könnten einige Webseitenbetreiber eine böse Überraschung erleben. In der Bibliothek PHPMailer wurde eine Remote-Code-Execution-Lücke entdeckt.
Unzählige Webanwendungen nutzen PHPMailer
Der Name dürfte vielen nichts sagen, allerdings ist PHPMailer häufig im Einsatz. Die Bibliothek wird in vielen populären Webanwendungen genutzt, um E-Mails zu verschicken. Sie ist beispielsweise Teil des Content-Management-Systems Joomla und des Bugtrackers Mantis. Auch Wordpress enthält den verwundbaren Code, die entsprechenden Dateien wurden jedoch umbenannt. Wer nach PHPMailer sucht, übersieht daher möglicherweise die Kopie in Wordpress.
Auch Nutzer anderer populärer Content-Management-Systeme wie Drupal können betroffen sein. PHPMailer ist hier zwar nicht direkt enthalten, das Programm wird aber in zahlreichen Plugins und Themes mitgeliefert.
Dawid Golunski, Entdecker der Lücke und Teil der Gruppe Legal Hackers, hat bislang nur wenige Details bekanntgegeben. Demnach könnte die Lücke über Kontaktformulare, Registrierungsformulare oder Passwort-Reset-Felder ausgenutzt werden. Ein Proof of Concept für eine populäre Webapplikation, die auf mehr als einer Million Webservern installiert ist, will Golunski in Kürze veröffentlichen.
Schaut man sich die Codeänderung an, braucht es nicht viel Phantasie, um zumindest ungefähr zu verstehen, wie die Lücke funktioniert. Demnach wird wohl die Absenderadresse nicht validiert und ungeprüft an Sendmail weitergegeben. Dabei könnte es dann zu einer Shell-Injection-Lücke kommen.
Ungeplante Veröffentlichung
Dass Informationen über die Lücke während der Weihnachtsfeiertage veröffentlicht wurden, war offenbar nicht geplant. In einer E-Mail an die Mailingliste oss-security entschuldigte sich Golunski dafür und schreibt, dass einer der Hersteller, die vorab informiert wurden, versehentlich umfangreiche Informationen über diese Lücke preisgegeben hatte.
Die Sicherheitslücke hat die Kennziffer CVE-2016-10033 erhalten. Behoben ist sie in PHPMailer Version 5.2.18. Kurz nach der Veröffentlichung wurde gleich eine weitere Version 5.2.19 veröffentlicht, die aber offenbar nur kleinere Bugs behebt. Alle Webseitenbetreiber, die PHPMailer einsetzen, sollten schnellstmöglich dieses Update installieren. Nutzer von Webapplikationen, die PHPMailer mitliefern, können die Bibliothek manuell aktualisieren oder auf ein Update der jeweiligen Anwendung warten. Bislang gibt es für Joomla, Wordpress und Mantis keine Updates, die dürften aber in Kürze erscheinen.
Nachtrag vom 26. Dezember 2016, 15:26 Uhr
Wir hatten ursprünglich geschrieben, dass Wordpress nicht direkt betroffen ist. Das war nicht korrekt, wir haben den Text korrigiert.
Nachtrag vom 27. Dezember 2016, 11:04 Uhr
Inzwischen existiert ein Proof-of-Concept-Exploit, der jedoch nur mit PHP-Versionen älter als 5.2.0 ausnutzbar ist. Außerdem muss PHP ohne PCRE-Unterstützung kompiliert sein. Es ist aber vermutlich möglich, die Sicherheitslücke auch unter anderen Bedingungen auszunutzen, dafür muss jedoch mehr Aufwand betrieben werden.
Die Entwickler von Joomla haben ein Advisory herausgegeben, in dem sie erklären, dass die Lücke in der Core-Funktionalität von Joomla nicht ausnutzbar ist, da die Eingabedaten durch andere Funktionen validiert werden. Daher sei kein unmittelbares Update notwendig. Drupal hat ebenfalls ein Advisory herausgegeben, allerdings nutzt Drupal PHPMailer sowieso nicht, lediglich Plugins sind betroffen. Wordpress hat sich bisher nicht dazu geäußert.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
Naja, doch. Ein string sql = "SELECT * FROM tblExample WHERE ExampleColumn...
computer sind automaten und und lochkarten eine form des datenträgers, z.b. auch um eine...
Imho hat da auch ein Empfänger nichts verloren. Per dropdown und Parameter wird ein...
Eigentlich ist es heutzutage eher absolut üblich 3rd Party Code klar vom eigenen Code zu...