PayPal Umstellung auf TLS 1.2 und HTTP/1.1

Ab Juli 2018 stellt der Zahlungsanbieter PayPal die Unterstützung der mittlerweile veralteten TLS-Versionen 1.0 und 1.1 ein. Weiterhin setzt PayPal dann zwingend das HTTP-Protokoll ab Version 1.1 voraus, ältere Versionen wie 1.0 werden nicht mehr unterstützt.

Webshops, die PayPal als Zahlungsmethode anbieten, und dabei direkt auf eine PayPal-Schnittstelle zugreifen (z.B. Instant Payment Notification), müssen bis dahin auf die aktuelle TLS-Version 1.2 sowie HTTP/1.1 umgestellt werden. Die meisten Webshops greifen auf die PayPal-Schnittstellen mittels libcurl zu, dabei wird auf unseren Webservern standardmäßig HTTP/1.1 und TLS 1.2 genutzt. Manche Webshops nutzen jedoch nicht die Standardeinstellungen von libcurl, sondern setzen ausdrücklich eine ältere TLS Version wie 1.0. Dies wird zukünftig zu Problemen führen.

PayPal informiert betroffene Kunden aktuell per E-Mail, diese müssen bis zum Juli 2018 ein Update der Webshop-Software bzw. des PayPal Zahlungsmoduls vornehmen.

Falls Sie noch einen älteren WebShop betreiben, und keine Updates für das PayPal-Zahlungsmodul bereitstehen, müssen Sie ggf. den PHP-Quellcode anpassen. Suchen Sie dazu nach allen PHP-Dateien, in denen die Zeichenfolgen “curl_setopt” und “TLSv1” vorkommen, und kommentieren diese in einem Text-Editor mittels vorangestelltem // aus. Sie können die betroffenen Dateien mit den entsprechenden Stellen im Quellcode über folgenden SSH-Befehl ermitteln:

find . -name "*.php" -exec grep "curl_setopt(.*TLSv1" {} \; -print

Informationen zu den Sicherheitslücken Meltdown und Spectre

Seit einigen Tagen wird in den Medien verstärkt über schwere Sicherheitslücken in häufig genutzten CPUs für PCs, Smartphones und Tablets berichtet.

Die Meltdown genannte Sicherheitslücke ermöglicht das Auslesen des gesamten Arbeitsspeichers, die Spectre genannte Sicherheitslücke ermöglicht das Auslesen des Arbeitsspeichers eines Prozesses. Beide Sicherheitslücken erfordern die Ausführung von speziellem Schadcode, Angreifer könnten so Zugriff auf vertrauliche Daten wie Passwörter oder E-Mails erhalten.

Auswirkungen auf unsere Dienste

Da ein Angreifer zur Ausnutzung dieser Sicherheitslücken eigenen Schadcode ausführen muss, lassen sich beide Sicherheitslücken theoretisch auf unseren Webservern ausnutzen, andere Dienste wie E-Mail oder MySQL sind jedoch nicht betroffen.

Meltdown

Die Meltdown-Sicherheitslücke kann auf unseren Webservern nicht ausgenutzt werden, da sie nur Intel-CPUs betrifft, die wir gegenwärtig nicht für Webserver einsetzen.

Spectre

Die Spectre-Sicherheitslücke kann zumindest in einer Variante auf unseren Webservern ausgenutzt werden (bounds check bypass, CVE-2017-5753), es können dadurch aber nur eigene Benutzerprozesse angegriffen werden, jedoch keine Systemdienste oder Prozesse von anderen Webserver-Benutzern. Die Ausnutzung dieser Sicherheitslücke durch einen Angreifer setzt voraus, dass dieser über eine anderweitige Sicherheitslücke in einer Web-Anwendung (z.B.  veraltete Installationen eines Content-Management-Systems) oder ausgespähte Zugangsdaten eigenen Code auf dem Webserver ausführen kann. In diesem Fall hat ein Angreifer jedoch ohnehin Zugriff auf sämtliche Daten eines Webserver-Benutzers, daher tritt durch Spectre keine zusätzliche Verschlimmerung ein.

Eine zumindest theoretisch möglicher Angriff betrifft Kunden, die PHP-FPM nutzen. Dort könnte unter Umständen auf den im Arbeitsspeicher hinterlegten OpCode-Cache von PHP-FPM, der von mehreren Webserver-Benutzern geteilt wird, zugegriffen werden. Ein solcher Angriff wäre jedoch – sofern überhaupt möglich – sehr komplex, da der betroffene Speicherbereich nicht direkt ausgelesen wird, sondern durch einen sogenannten Seitenkanal Rückschlüsse auf den Speicherinhalt gezogen werden. Auf einem Webserver, wo ständig viele gleichzeitige Prozesse laufen, ist dieser Angriff sehr fehleranfällig, so dass wir momentan von einem relativ geringen Risiko ausgehen.

Die Spectre-Sicherheitslücke lässt sich jedoch auch über JavaScript-Schadcode im Web-Browser ausnutzen, daher sollten Sie die von Ihnen genutzten Web-Browser aktualisieren und die aktuellen Systemupdates für Ihre Smartphones und Tablets installieren.

Update (12.1.)

Es ist momentan noch immer unklar, inwiefern Spectre eine relevantes Sicherheitsrisiko für unsere Webserver darstellt. Die bisher bekannten erfolgreichen Angriffe mittels Spectre stellen auf unseren Systemen keine Gefahr da, es könnten jedoch zukünftig neue Angriffe entwickelt werden, die dann auch unsere Webserver betreffen.

Um die Spectre-Sicherheitslücke zu schließen, sind Microcode-Updates für die CPUs sowie Kernel-Updates für das Betriebssystem erforderlich. Diese Updates sind momentan noch nicht für alle von uns genutzten CPU-Typen verfügbar, sie werden voraussichtlich gegen Ende Januar bereitstehen.

PHP 7.2 verfügbar

Auf unseren Webservern steht ab sofort die neue PHP-Version 7.2 zur Verfügung.
PHP

Änderungen zur Vorgängerversion PHP 7.1

Grundsätzlich fallen die Änderungen an bestehenden Funktionen im Vergleich zur Vorgängerversion PHP 7.1 eher geringfügig aus, so dass die meisten aktuellen PHP-Anwendungen (z.B. WordPress, Joomla) auch unter PHP 7.2 lauffähig sind. Eine Übersicht über alle Änderungen finden Sie hier.

Neue Funktionen in PHP 7.2

Eine wichtige Neuerung in PHP 7.2 ist die Unterstützung der modernen Kryptographie-Bibliothek Libsodium, dafür wurde die veraltete Kryptographie-Extension Mcrypt entfernt. Die neue Sodium-Extension wird beispielsweise von WordPress bereits unterstützt. Außerdem kann die aktuelle Passwort-Hashing-Funktion Argon2 genutzt werden. Weiterhin unterstützt die ZIP-Extension nun auch AES-Verschlüsselung.

Verbesserungen in PHP 7.2

Wir konnten in unseren bisherigen Tests einen geringfügigen Geschwindigkeitsvorteil von bis zu 10% gegenüber der Vorgängerversion PHP 7.1 feststellen. Der Geschwindigkeitsvorteil  beim Wechsel von PHP 7.0 auf 7.2 beträgt etwa 20%, und beim Wechsel von PHP 5.6 sogar bis zu 300%.

PHP 7.2 aktivieren

Aktivierung von PHP 7.2 im KundenmenüSie können PHP 7.2 für Ihre Webseiten wie üblich über unser Kundenmenü oder per .htaccess-Datei mittels folgender Direktive aktivieren:

AddHandler application/x-httpd-php72 .php

Kunden, die PHP-FPM nutzen, können eine Umstellung auf PHP 7.2 formlos per E-Mail beauftragen.

Hinweise zu den unterstützten PHP-Versionen

Die PHP-Versionen 5.2, 5.3 und 5.5 sind seit längerer Zeit veraltet und sollten nicht mehr genutzt werden. Für die PHP-Versionen 5.6 und 7.0 werden von den Entwicklern noch bis Ende 2018 Updates für kritische Sicherheitsprobleme bereitgestellt, eine reguläre Weiterentwicklung dieser Versionen findet jedoch nicht mehr statt. Sie sollten daher nach Möglichkeit die aktuellen PHP-Versionen 7.1 oder 7.2 verwenden. Ein Wechsel von PHP 5.6 oder älter auf PHP 7.2 lohnt sich nicht zuletzt wegen der um bis zu 300% gestiegenen Ausführungsgeschwindigkeit.

SMTP-Server bei UCEProtect geblacklistet

Die IP-Adressen unseres primären SMTP-Postausgangsservers smtp.variomedia.de (bzw. smtp.securehost.de) wurden am 8.11. aus für uns nicht nachvollziehbaren Gründen auf die berüchtigte UCEProtect-Blackliste gesetzt. Die betroffenen IP-Adressen werden erst am 15.11. aus dieser Blackliste entfernt, bis dahin kann es vereinzelt zu Problemen bei der Zustellung von E-Mails kommen.

Leider nutzen einige Mailserver-Betreiber noch immer gerne solche kostenlosen DNS-Blacklisten als Kriterium zur Klassifizierung unerwünschter E-Mails, obwohl dabei viele legitime E-Mails fälschlicherweise als Spam klassifiziert werden (False Positives). Der Hauptgrund dafür ist, dass leistungsfähigere inhaltsbasierte Spam-Filter aufwändiger zu konfigurieren sind, viel Rechenleistung benötigen oder – wie die von uns genutzte Spam-Filter-Software Expurgate – kostenpflichtig sind.

Bitte nutzen Sie im Falle von Problemen bei der E-Mail-Zustellung unseren alternativen Postausgangsserver smtp2.variomedia.de (bzw. smtp2.securehost.de) oder unser Webmail.

Update

Wir haben den betroffenen SMTP-Server nun bis zum Auslaufen des Blacklistings am 15.11. auf andere IP-Adressen umgestellt.

PHP 7.2 RC1 verfügbar

Ab sofort steht auf unseren Webservern der erste Release Candidate der neuen PHP-Version 7.2 zu Testzwecken zur Verfügung. Bitte beachten Sie, dass es sich dabei um eine Vorabversion handelt, die noch einige Fehler enthalten kann, sie sollte daher nicht für den Produktiveinsatz genutzt werden. Die endgültige und für den Produktiveinsatz freigegebene Version von PHP 7.2 erscheint voraussichtlich gegen Ende November dieses Jahres.

Änderungen zur Vorgängerversion 7.1

Grundsätzlich fallen die Änderungen an bestehenden Funktionen im Vergleich zur Vorgängerversion PHP 7.1 geringfügig aus, so dass die meisten aktuellen PHP-Anwendungen auch unter PHP 7.2 lauffähig sind. Eine Übersicht über alle Änderungen finden Sie hier.

Wir konnten in ersten Tests einen kleinen Geschwindigkeitsvorteil von bis zu 10% zugunsten der neuen PHP-Version feststellen.

Eine wichtige Änderung ist die Entfernung der veralteten Verschlüsselungs-Extension Mcrypt, statt dessen sollte die neu hinzugefügte Extension Sodium genutzt werden.

PHP 7.2 aktivieren

Sie können PHP 7.2 wie üblich per .htaccess-Datei mittels folgender Direktive aktivieren:
AddHandler application/x-httpd-php72 .php
Die Aktivierung über das Kundenmenü wird erst möglich sein, sobald die finale Version von PHP 7.2 offiziell veröffentlicht wird.

Probleme bei der Installation von Joomla

Aufgrund eines Programmierfehlers im Installer der aktuellen Joomla-Version 3.7.4 lässt sich diese nicht auf unseren Webservern installieren. Die Fortschrittsanzeige bei der Installation bleibt bei etwa 10% stehen, dann passiert nichts mehr.

Der Fehler ist den Joomla-Entwicklern bekannt und wird in der nächsten Joomla-Version behoben. Bitte nutzen Sie für eine Neuinstallation von Joomla bis dahin die Vorgängerversion 3.7.3 und nehmen dann ein Update auf die aktuelle Joomla-Version vor.

Update

Der Fehler wurde in der neuen Joomla Version 3.7.5 behoben.

HTTP/2 auf unseren Webservern verfügbar

Unsere Webserver unterstützen ab sofort HTTP/2. Dabei handelt es sich um eine verbesserte Version des HTTP-Protokolls, mit dem Webseiten von unseren Webservern zu Ihrem Browser übertragen werden. HTTP/2 basiert auf dem von Google entwickelten SPDY-Protokoll, dessen Weiterentwicklung zugunsten von HTTP/2 eingestellt wurde.

Vorteile von HTTP/2

Die wichtigste Neuerung in HTTP/2 ist, dass nun mehrere Elemente einer Webseite gleichzeitig über eine einzige Verbindung übertragen werden können (Multiplex). Zuvor war für jedes einzelne Element einer Webseite eine eigene Verbindung erforderlich, deren Aufbau durch Netzwerklatenzen immer einige Zeit in Anspruch nimmt. Bei Webseiten mit sehr vielen Elementen kann HTTP/2 daher zu einer Verbesserung der Ladezeit führen. Auch bei Mobilfunkverbindungen (z.B. EDGE, UMTS, LTE) kann HTTP/2 die Ladezeit reduzieren, da die Netzwerklatenzen hier besonders hoch ausfallen.

Voraussetzungen für HTTP/2

HTTP/2 wird von praktisch allen aktuellen Web-Browsern unterstützt, es sind keine Anpassungen an Ihren Webseiten erforderlich. Browser ohne HTTP/2-Unterstützung nutzen automatisch die vorigen Protokollversionen HTTP/1.1 bzw. HTTP/1.0, die von unseren Webservern auch weiterhin unterstützt werden.

HTTP/2 kann jedoch nur bei verschlüsselten HTTPS-Verbindungen genutzt werden, für die ein gültiges SSL-Zertifikat benötigt wird. Ein solches SSL-Zertifikat ist in vielen unserer Hosting-Pakete bereits inklusive, zur Einrichtung von SSL-Zertifikaten für Ihre Webseiten wenden Sie sich bitte an unsere Kundenbetreuung.

Browser mit HTTP/2-Unterstützung

  • Apple Safari ab Version 9
  • Google Chrome ab Version 40
  • Microsoft Edge
  • Microsoft Internet Explorer ab Version 11
  • Mozilla Firefox ab Version 36

Update: Probleme mit Node.js

Durch die Aktivierung von HTTP/2 wurden von der Webserver-Software Apache automatisch HTTP-Upgrade-Header generiert, die zu Problemen mit älteren Node.js-Versionen geführt haben. Diese Header wurden nur bei verschlüsselten HTTPS-Verbindungen mit der alten Protokollversion HTTP/1.1 gesendet, und sollen die Unterstützung für HTTP/2 durch den Webserver bekanntgeben. Die Upgrade-Header sind jedoch nicht erforderlich, da wir HTTP/2 nur für verschlüsselte HTTPS-Verbindungen nutzen, und die Unterstützung für HTTP/2 in diesem Fall bereits bei der Aushandlung der Verschlüsselung mitgeteilt wird (ALPN).  Wir haben diese problematischen HTTP-Header daher nun entfernt.

PHP-Version im Kundenmenü einstellbar

Ab sofort können Sie die für Ihre Webseiten genutzte PHP-Version mit zwei Klicks über unser Kundenmenü einstellen. Sie finden die neue Option im Menüpunkt “PHP”, der sich unter den Einstellungen Ihres Hosting-Pakets befindet. Die Einstellung gilt für alle Domains in Ihrem Hosting-Paket, eine Auswahl unterschiedlicher PHP-Versionen für einzelne Domains eines Pakets ist momentan noch nicht möglich.

Die Auswahl der PHP-Version ist jetzt im Kundenmenü möglich.

Sie können die PHP-Version auch wie gehabt per .htaccess-Konfigurationsdatei auf dem Webserver festlegen, diese Einstellung überschreibt dabei die im Kundenmenü gewählte PHP-Version. Auf diese Weise können Sie weiterhin für verschiedene Domains/Verzeichnisse unterschiedliche PHP-Versionen nutzen.

Die aktuell für Ihre Webseite konfigurierte PHP-Version können Sie über den PHP-Befehl phpinfo() ermitteln. Laden Sie dazu einfach unser vorgefertigtes PHP-Script herunter, das Sie dann per (S)FTP im gewünschten Webspace-Verzeichnis ablegen und dort über Ihren Web-Browser aufrufen (z.B. http://meine-domain.de/info.php).

SMTP-Server bei Proofpoint geblacklistet

Unser primärer SMTP-Postausgangsserver smtp.variomedia.de (bzw. smtp.securehost.de) wird seit gestern immer wieder für einige Stunden auf der Proofpoint Blacklist aufgeführt; dadurch können E-Mails an einige bekannte Anbieter wie z.B. Apple momentan nicht immer zugestellt werden. Sie erhalten dann von unserem Mail-Server eine Fehlermeldung wie:

554 Blocked - see https://ipcheck.proofpoint.com/?ip=81.28.224.28

Wir können momentan nicht sagen, was zu den Sperrungen führt, da es bisher keine brauchbaren Information von Proofpoint dazu gibt. Der betroffene SMTP-Server wird auf keiner anderen seriösen Blacklist aufgeführt, wir gehen daher von einem Fehler bei Proofpoint aus. Leider können wir nur abwarten, bis Proofpoint auf unsere Beschwerde reagiert.

Falls Sie von der Sperrung betroffen sind, können Sie alternativ unser Webmail oder unseren zweiten SMTP-Server smtp2.variomedia.de (bzw. smtp2.securehost.de) zum Versenden von E-Mails nutzen, bis der primäre SMTP-Server dauerhaft von dieser Blacklist entfernt wurde.

Update

Seit dem 14.02. ist kein erneutes Blacklisting durch Proofpoint mehr erfolgt. Wir haben die Konfiguration unserer SMTP-Server weiterhin so überarbeitet, dass mehrere unterschiedliche IP-Adressen zum Senden von E-Mails genutzt werden. Dadurch reduziert sich die Anzahl der gesendeten E-Mails pro IP-Adresse, wodurch ein Blacklisting bei Anbietern wie Proofpoint weniger wahrscheinlich ist.

SFTP für virtuelle FTP-Benutzer

Bisher konnten virtuelle FTP-Benutzer nur unverschlüsselte FTP-Verbindungen und kein verschlüsseltes SFTP nutzen, dies war nur für den FTP-Hauptbenutzer möglich. Da unverschlüsselte FTP-Verbindungen aus Sicherheitsgründen nicht mehr benutzt werden sollten, bieten wir ab sofort SFTP auch für virtuelle FTP-Benutzer über den TCP-Port 2222 an. Für weitere Informationen beachten Sie bitte den zugehörigen FAQ-Artikel.

Hintergründe

Der SFTP-Dienst wurde bisher nicht mittels des von uns für FTP-Verbindungen genutzten Dienstes ProFTPD realisiert, sondern über den SSH-Dienst OpenSSH, der im Gegensatz zu ProFTPD keine virtuellen Benutzer unterstützt. ProFTPD unterstützt zwar grundsätzlich auch SFTP-Verbindungen, allerdings kann OpenSSH nicht einfach durch ProFTPD ersetzt werden, da OpenSSH noch weitere Funktionen wie z.B. eine Login-Shell bereit stellt, auf die wir nicht verzichten können. Weiterhin war die SFTP-Unterstützung in ProFTPD in der Vergangenheit noch sehr fehlerbehaftet, es kam z.B. häufig zu Problemen beim Verbindungsaufbau. In der aktuellen ProFTPD-Version sind diese Fehler jedoch weitgehend behoben, so dass einem Produktiveinsatz nun nichts mehr im Wege steht.

Um SFTP für virtuelle FTP-Benutzer zu realisieren, nutzen wir den TCP-Port 2222, da der Standard-Port 22 bereits vom SSH-Dienst belegt ist. Sie können SFTP-Verbindungen sowohl für den FTP-Hauptbenutzer als auch für alle virtuellen Benutzer über diesen Port nutzen (der FTP-Hauptbenutzer kann jedoch auch weiter den Standard-Port 22 für SFTP nutzen).