CVE-2016-10033
PHPMailer Command Injection Vulnerability
Beschreibung
CVE-2016-10033 ist eine Argument-Injection-Schwachstelle in PHPMailer, einer der am weitesten verbreiteten PHP-Bibliotheken fuer den E-Mail-Versand. Die Schwachstelle in der mailSend-Funktion des isMail-Transports ermoeglicht es einem unauthentifizierten Angreifer, durch eine manipulierte Sender-Eigenschaft zusaetzliche Parameter an den mail-Befehl zu uebergeben und dadurch beliebigen Code auf dem Server auszufuehren. Mit einem CVSS-Score von 9.8 (CRITICAL) und der Aufnahme in den CISA KEV-Katalog ist CVE-2016-10033 eine der gefaehrlichsten Schwachstellen in der PHP-Welt.
Der EPSS-Score von 94,47 % (100,0. Perzentil) zeigt eine nahezu sichere Ausnutzungsaktivitaet. PHPMailer wird von Millionen von Webanwendungen eingesetzt, darunter WordPress und Joomla, was die Reichweite dieser Schwachstelle erheblich vergroessert.
KEV-Informationen
CVSS-Score
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HIm Rechner öffnenCWEs
Betroffene Produkte
| Hersteller | Produkt | Version |
|---|---|---|
| phpmailer project | phpmailer | < 5.2.18 |
| wordpress | wordpress | <= 4.7 |
| joomla | joomla\! | >= 1.5.0, <= 3.6.5 |
Mehrere CVSS-Bewertungen
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Referenzen
- http://packetstormsecurity.com/files/140291/PHPMailer-Remote-Code-Execution.html(Exploit, Third Party Advisory, VDB Entry)
- http://packetstormsecurity.com/files/140350/PHPMailer-Sendmail-Argument-Injection.html(Exploit, Third Party Advisory, VDB Entry)
- http://seclists.org/fulldisclosure/2016/Dec/78(Mailing List, Patch, Third Party Advisory)
- http://www.rapid7.com/db/modules/exploit/multi/http/phpmailer_arg_injection(Exploit, Third Party Advisory)
- http://www.securityfocus.com/archive/1/539963/100/0/threaded(Broken Link, Third Party Advisory, VDB Entry)
- http://www.securityfocus.com/bid/95108(Broken Link, Exploit, Third Party Advisory, VDB Entry)
- http://www.securitytracker.com/id/1037533(Broken Link, Third Party Advisory, VDB Entry)
- https://developer.joomla.org/security-centre/668-20161205-phpmailer-security-advisory.html(Third Party Advisory)
- https://github.com/PHPMailer/PHPMailer/releases/tag/v5.2.18(Patch, Vendor Advisory)
- https://github.com/PHPMailer/PHPMailer/wiki/About-the-CVE-2016-10033-and-CVE-2016-10045-vulnerabilities(Patch, Vendor Advisory)
- https://legalhackers.com/advisories/PHPMailer-Exploit-Remote-Code-Exec-CVE-2016-10033-Vuln.html(Exploit, Patch, Third Party Advisory)
- https://www.drupal.org/psa-2016-004(Third Party Advisory)
- https://www.exploit-db.com/exploits/40968/(Exploit, Patch, Third Party Advisory, VDB Entry)
- https://www.exploit-db.com/exploits/40969/(Exploit, Third Party Advisory, VDB Entry)
- https://www.exploit-db.com/exploits/40970/(Exploit, Patch, Third Party Advisory, VDB Entry)
- https://www.exploit-db.com/exploits/40974/(Exploit, Third Party Advisory, VDB Entry)
- https://www.exploit-db.com/exploits/40986/(Exploit, Third Party Advisory, VDB Entry)
- https://www.exploit-db.com/exploits/41962/(Exploit, Third Party Advisory, VDB Entry)
- https://www.exploit-db.com/exploits/41996/(Exploit, Third Party Advisory, VDB Entry)
- https://www.exploit-db.com/exploits/42024/(Exploit, Third Party Advisory, VDB Entry)
- https://www.exploit-db.com/exploits/42221/(Exploit, Third Party Advisory, VDB Entry)
- https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2016-10033(US Government Resource)
Schwachstellentyp
CWE-88: Argument Injection
CVE-2016-10033 basiert auf CWE-88 (Unsachgemaesse Neutralisierung von Argumenttrennzeichen in einem Befehl). Die mailSend-Funktion von PHPMailer konstruiert einen Aufruf an den systemseitigen mail-Befehl unter Verwendung der Sender-Eigenschaft, neutralisiert dabei jedoch Sonderzeichen nicht ausreichend. Ein Angreifer kann durch ein Backslash-Anfuehrungszeichen (") in der Sender-Adresse zusaetzliche Argumente an sendmail einschleusen, insbesondere den -X-Parameter, der das Schreiben in beliebige Dateien ermoeglicht.
Weitere Informationen: CWE-88 -- Argument Injection
Auswirkungsanalyse
Die Auswirkungen von CVE-2016-10033 sind aufgrund der extremen Verbreitung von PHPMailer katastrophal. Der CVSS-Vektor CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H zeigt, dass die Schwachstelle remote ohne Authentifizierung und ohne Benutzerinteraktion ausgenutzt werden kann, mit maximalen Auswirkungen auf Vertraulichkeit, Integritaet und Verfuegbarkeit. Vertraulichkeit (Hoch): Durch die Ausfuehrung beliebigen Codes kann ein Angreifer auf saemtliche Daten des Servers zugreifen. Integritaet (Hoch): Der Angreifer kann Dateien modifizieren, Webshells installieren und die Anwendung vollstaendig kompromittieren. Verfuegbarkeit (Hoch): Das System kann vollstaendig ausser Betrieb gesetzt werden. PHPMailer wird von WordPress (bis Version 4.7), Joomla (1.5.0 bis 3.6.5) und unzaehligen weiteren PHP-Anwendungen eingesetzt, was Millionen von Websites potentiell verwundbar macht.
Exploit-Reifegrad
CVE-2016-10033 weist eine kritisch hohe Exploit-Reife auf. Zahlreiche oeffentliche Exploit-Codes sind verfuegbar, darunter auf Packet Storm Security, Exploit-DB (mit mehreren Varianten) sowie ein Rapid7 Metasploit-Modul. Die CISA hat die aktive Ausnutzung bestaetigt und CVE-2016-10033 in den KEV-Katalog aufgenommen. Der EPSS-Score von 94,47 % (100,0. Perzentil) ist einer der hoechsten ueberhaupt und zeigt nahezu sichere Ausnutzungsaktivitaet an. Die breite Verfuegbarkeit von Exploit-Code und die einfache Ausnutzbarkeit machen diese Schwachstelle zu einem bevorzugten Ziel fuer automatisierte Angriffe.
Behebung
-
PHPMailer umgehend aktualisieren: Aktualisieren Sie auf PHPMailer 5.2.18 oder hoeher. Das offizielle GitHub-Release behebt die Schwachstelle. Konsultieren Sie auch die PHPMailer-Dokumentation zu CVE-2016-10033.
-
CMS-Systeme aktualisieren: Wenn Sie WordPress (bis 4.7) oder Joomla (1.5.0 bis 3.6.5) einsetzen, aktualisieren Sie diese umgehend. Beide CMS verwenden PHPMailer intern und haben Sicherheitsupdates veroeffentlicht.
-
isMail-Transport vermeiden: Als temporaere Massnahme koennen Sie den Mail-Transport auf SMTP umstellen (isSMTP()), da nur der isMail-Transport ueber den lokalen sendmail-Befehl betroffen ist.
-
Eingabevalidierung fuer Absenderadressen: Stellen Sie sicher, dass E-Mail-Absenderadressen serverseitig strikt validiert werden und keine Sonderzeichen wie Backslash-Anfuehrungszeichen enthalten.
-
Web Application Firewall einsetzen: Konfigurieren Sie WAF-Regeln, um verdaechtige E-Mail-Adressen mit Shell-Metazeichen in Formulareingaben zu erkennen und zu blockieren.
Technische Details
CVE-2016-10033 betrifft die mailSend-Funktion im isMail-Transport von PHPMailer vor Version 5.2.18. Der CVSS-Vektor CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H zeigt eine remote ausnutzbare kritische Schwachstelle. Die Funktion konstruiert einen Aufruf an den systemseitigen mail()-Befehl von PHP, der intern sendmail aufruft, und verwendet dabei die Sender-Eigenschaft als Parameter. Durch das Einfuegen eines Backslash-Anfuehrungszeichens (") in die Sender-Eigenschaft kann ein Angreifer die Argument-Verarbeitung manipulieren und zusaetzliche sendmail-Parameter einschleusen. Besonders gefaehrlich ist der -X-Parameter, der das Protokollieren in eine beliebige Datei ermoeglicht. Ein Angreifer kann so eine PHP-Webshell auf dem Server ablegen und anschliessend beliebigen Code ausfuehren. Die Schwachstelle betrifft neben PHPMailer direkt auch abhaengige Systeme: WordPress bis Version 4.7 und Joomla von Version 1.5.0 bis 3.6.5 verwenden verwundbare PHPMailer-Versionen.
Häufig gestellte Fragen
Wird CVE-2016-10033 aktiv ausgenutzt?
Ja, die CISA hat CVE-2016-10033 in den KEV-Katalog aufgenommen. Der EPSS-Score von 94,47 % (100,0. Perzentil) ist einer der hoechsten ueberhaupt und zeigt nahezu sichere Ausnutzungsaktivitaet. Zahlreiche Exploit-Codes und Metasploit-Module sind frei verfuegbar.
Welche Produkte sind von CVE-2016-10033 betroffen?
Direkt betroffen ist PHPMailer vor Version 5.2.18. Darueber hinaus sind alle Anwendungen betroffen, die verwundbare PHPMailer-Versionen einsetzen, darunter WordPress bis Version 4.7 und Joomla von Version 1.5.0 bis 3.6.5. Die tatsaechliche Anzahl betroffener Websites wird auf Millionen geschaetzt.
Wie behebe ich CVE-2016-10033?
Aktualisieren Sie PHPMailer auf Version 5.2.18 oder hoeher. Wenn Sie WordPress oder Joomla einsetzen, installieren Sie die neuesten Sicherheitsupdates. Als temporaere Massnahme koennen Sie den E-Mail-Transport von isMail auf isSMTP umstellen.
Wie schwerwiegend ist CVE-2016-10033?
CVE-2016-10033 hat einen CVSS-Score von 9.8 (CRITICAL) und ermoeglicht Remote Code Execution ohne Authentifizierung. Die extreme Verbreitung von PHPMailer in Millionen von Webanwendungen und die Verfuegbarkeit zahlreicher Exploits machen dies zu einer der gefaehrlichsten PHP-Schwachstellen ueberhaupt.
Hilfe beim Schwachstellenmanagement?
Unsere Sicherheitsexperten helfen Ihnen bei der Priorisierung und Behebung von Schwachstellen.