Der Strato-Irrsinn

Leider werden mir besonders dieses Jahr immer wieder gehackte Websites zur Bereinigung übergeben. Eine schon auffällige Vielzahl von diesen, wird bei Strato gehostet. Ein Grund war mir bereits bewusst – heute stieß ich auf eine Strato-Aktion, die dem ganzen die Krone aufsetzt.

Strato verhindert, dass WordPress-Core-Sicherheitsupdates automatisch installiert werden und verteilt gleichzeitig ein Must-Use-Plugin, welches gegen eine bekannte Lücke in WordPress schützt.

Aber von vorne

Strato ist ein Unternehmen mit Sitz in Berlin, welches Dienstleistungen rund um Websites anbietet. In den Angeboten findet man u.a.

=> Hosting für WordPress ab 1 €

Die Marketingabteilung ist schon sehr hinterher, um auch weiterhin durch günstige Angebote und große Reichweite neue Kunden zu erhalten. Nicht selten kommt es vor, dass bei unseren WordPress Meetups in Leipzig Teilnehmer mit Strato-Websites aufschlagen. Die Einrichtung nach der super-günstigen Buchung einer Website bei Strato ist so simpel, dass man nicht mal einem menschlichen Ansprechpartner vor Ort braucht und in 5 Minuten fertig ist (bzw. zu sein scheint).

Sicherheitslücken

Am 17. Juli 2026 wurde mit CVE-2026-60137 und CVE-2026-63030 eine Sicherheitslücke in WordPress bekannt, die schnell den Namen „wp2shell“ erhielt. Sogar das Bundesministerium für Sicherheit nahm sich des Themas an und empfahl zeitnah Aktualisierungen von WordPress vorzunehmen. WordPress veröffentlichte noch am gleichen Tag WordPress in Version 7.0.2.

Am 22. September 2026 wurde mit CVE-2026-87902 eine Lücke in der Verarbeitung von Templates in WordPress veröffentlicht. Diese wurde noch am gleichen Tag mit einer aktualisierten Version von WordPress 7.1.2 (sowie allen anderen betroffenen älteren Hauptversionen) geschlossen.

Das sind nur 2 von vielen Sicherheitslücken, die dieses Jahr im WordPress Core geschlossen wurden. Die schnelle Abfolge wird durch KI-gestützte Analysen von Software besonders ermöglicht. Anwender, die eine WordPress-Website betreiben, sollten daher Aktualisierungen zeitnah einspielen, da potentielle Angreifer ebenfalls mit KI schnell über Sicherheitslücken in Software eindringen können. WordPress bringt seit 2013 die Möglichkeit mit solche Aktualisierungen automatisch einspielen zu lassen. Damit sind WordPress-basierte Website theoretisch zeitnah auf dem aktuellsten Stand und sicher hinsichtlich des WordPress Cores ohne, dass jemand Zeit dafür aufbringen müsste.

Aber weit gefehlt, wenn man seine WordPress-Website bei Strato hosted. Dort werden solche grundsätzlichen und selbstverständlichen Ablaufe durch den Hoster abgeschaltet – und das auf eine Art und Weise, dass ein normaler Anwender nicht mal etwas dagegen tun kann, selbst wenn er es mitbekommt.

Einfache Installation führt zu großen Problemen

Der einfache und schnelle Weg um eine WordPress-Website einzurichten, wird bei Strato mit Hilfe des Tools von Installatron realisiert. Mit diesem kann man automatisiert Web-Anwendungen installieren (und ist damit einer von vielen Wegen, die dafür genutzt werden könnten). Aber irgendwas haben sie bei Strato daran falsch konfiguriert.

Installatron legt, durch Strato-Dienste ausgeführt, bei jeder Neuinstallation im Verzeichnis /wp-content/mu-plugins/ eine Datei namens automation-by-installatron.php an. Diese Datei besteht, abgesehen vom Plugin-Header, aus den folgenden Zeilen:

// This plugin was added because Automatic Updates, Automatic Backups, and
// other features are managed externally by Installatron.

// To block this plugin, create an empty file in the same directory named:
//     block-automation-by-installatron.php

// Turn off WordPress automatic updates since these are managed externally.
// If you remove this to re-enable WordPress's automatic updates then it's 
// advised to disable auto-updating in Installatron.
add_filter( 'auto_update_core', '__return_false' );
add_filter( 'allow_dev_auto_core_updates', '__return_false' );
add_filter( 'allow_minor_auto_core_updates', '__return_false' );
add_filter( 'allow_major_auto_core_updates', '__return_false' );
add_filter( 'auto_update_translation', '__return_false' );

// Disable WordPress site health test for Automatic Updates since these are
// managed externally by Installatron.
function installatron_filter_site_status_tests($tests) {
	unset($tests['async']['background_updates']);
	return $tests;
}
add_filter('site_status_tests', 'installatron_filter_site_status_tests');

Schauen wir uns das mal genauer an. Die Filter-Hooks schalten in WordPress jegliche automatische Aktualisierungen von WordPress Core und allen Übersetzungsdateien aus. Hier ist eine der Zeilen bei WordPress selbst dokumentiert: https://developer.wordpress.org/reference/hooks/allow_minor_auto_core_updates/ – sie schalten somit jegliche Sicherheitsupdates, die WordPress verteilt, ab. Dadurch ist jede frisch installierte WordPress-Website schon nach Veröffentlichung der nächsten Sicherheitsupdates potentiell angreifbar.

Die Kommentierung direkt darüber behauptet, dass die Aktualisierungen „extern verwaltet“ werden. Ich habe nun schon einige gehackte WordPress-Projekte bei Strato gesehen, wo genau das nicht passiert ist. Auch nach mehreren Monaten oder gar Jahren nicht. Es gibt dafür auch in der Strato-Oberfläche keine Option (so etwas kennt man z.B. von anderen Dienstleistern wie WP Engine oder Kinsta). Der heute Fall lief z.B. mit einem WordPress in Version 7.0, die am 20. Mai 2026 veröffentlicht wurde. Diese enthält Stand heute 22 Sicherheitslücken. Und eine davon, nämlich die oben schon erwähnte „wp2shell“ war es, die einen Hacker in das Projekt eindringen ließ.

Zwischenstand

Wir haben nun also erkannt, dass bei Strato gehostete WordPress mit Installatron installiert werden, wodurch deren Autoupdates komplett deaktiviert werden. Nicht schön für Anwender, die einfach nur eine WordPress-basierte Website haben wollen und nicht wissen, worauf sie achten sollten. Sie verlassen sich auf den Hoster, der ihnen ein günstiges Angebot gemacht hat.

Strato hat dieses Problem offenbar auch nach mehreren Jahren noch nicht erkannt, da mir genau diese Datei schon sehr lange auffällt. Immer wenn ich ein bei Strato gehostetes Projekt in die Hand bekomme, lösche ich meist als allererstes die Datei /wp-content/mu-plugins/automation-by-installatron.php per FTP – anders geht es ja nicht. Auch etwas was ein normaler Anwender ohne entsprechendem Wissen nicht immer kann.

Laufen die Updates wirklich?

In den allermeisten Fällen, in denen ich bei Strato auf o.g. Datei gestoßen bin, reichte das Löschen von dieser nicht aus. Oft, aber nicht immer, stand auch in der WordPress-eigenen Konfigurationsdatei wp-config.php ganz am Ende diese Zeile:

define( 'WP_AUTO_UPDATE_CORE', false );

Diese sorgte ebenso dafür, dass die automatischen Updates gar nicht aktiviert waren. Das Entfernen von dieser Zeile in der Datei reichte aus, um das Problem endgültig zu lösen. Und btw. sollte man dort gar nichts eintragen, dafür gibt es einen Abschnitt weiter oben in der wp-config.php.

Den Erfolg sieht man dann im WordPress-Backend unter „Aktualisieren“:

Optimale Einstellung zur automatischen Einspielung von Core Aktualisierungen für WordPress

Die Krone des Ganzen

Seit einigen Wochen fällt mir nun eine weitere Datei im mu-plugins-Verzeichnis bei Strato-gehosteten Projekten auf. Diese Datei heißt 000-ionos-wp-template-guard.php und ist leider zu lang um sie hier vernünftig zeigen zu können. Entscheidend ist diesmal jedoch der Plugin-Kopf:

/**
 * Plugin Name: IONOS WordPress Template Guard
 * Description: Temporary mitigation for CVE-2026-87902. Remove after updating WordPress and verifying the upstream fix.
 * Version: 1.0.1
 * Requires at least: 4.7
 * Requires PHP: 5.6
 * License: GPL-2.0-or-later
 *
 * Install this file directly in wp-content/mu-plugins/.
 * Uses PHP's already parsed fields; never reads php://input or uploaded files.
 * This is not a replacement for the WordPress core update and cannot intercept
 * arbitrary PHP include/require calls made directly by another plugin/theme.
 */

Diese Datei schließt also die Sicherheitslücke vom September 2026, die als CVE-2026-87902 bekannt geworden ist. Sie schließt sie durch eine Unmenge an Hooks und Funktionen, die jegliche eingehende Anfragen vorfiltern. Z.B. gibt es diesen Hook:

// Also inspect pagename derived from permalink rewrites or query filters.
add_filter('request', array(__CLASS__, 'check_query_vars'), PHP_INT_MAX);

Der wird bei sprichwörtlich jedem Request auf die Website ausgeführt. Und warum? Er prüft, ob die Anfrage auf die Sicherheitslücke zielt.

Und hier bin ich wieder bei meinem Satz ganz am Anfang von diesem Beitrag:

Strato verhindert, dass WordPress-Core-Sicherheitsupdates automatisch installiert werden und verteilt gleichzeitig ein Must-Use-Plugin, welches gegen eine bekannte Lücke in WordPress schützt.

Das Ganze kann man auch in einem Bild zusammenfassen:

Must-use-Plugins von Strato verhindern automatische Updates und schließen selbst Sicherheitslücken

Warum?

Es ist mir absolut schleierhaft, wieso Strato diesen Weg geht. Ich kann verstehen, dass man Tools einsetzen muss um im Massenmarkt mit möglichst wenig personellem Einsatz günstige Hostings anzubieten. In dem Zuge aber die Sicherheit der Websites zu untergraben, kann doch kein Ziel gewesen sein.

Auch kann ich verstehen, dass man es dem Kunden überlässt, seine Website selbst zu warten. Bei so einem günstigen Hosting kann man nicht noch Mitarbeiter dafür einstellen. Allerdings ist das günstige Hosting eben auch trügerisch: das wird von Menschen gebucht, die einfach nur eine Website haben wollen – für ihr Hobby, für ihre Familie oder ihr Unternehmen, was sie gerade aufbauen wollen. Und dann ist den meisten nicht mal bewusst, dass sie sich a) selbst um Aktualisierungen kümmern müssen und b) vom Hoster behindert werden sich die Arbeit zu vereinfachen.

Anfragen dazu an der Hotline (und ich hab es im Laufe der Zeit schon mehrfach versucht), werden durch die Support-Mitarbeiter generell mit „Wenden Sie sich an den WordPress-Support“ beantwortet. Nur gibt es den nicht. WordPress ist eine Community-Software um die sich weltweit tausende Menschen kümmern. Es gibt keinen allgemeinen Support für die Software. Anwender helfen sich gegenseitig. Und so ist man als Strato-Kunde ganz besonders auf die Community angewiesen, wenn man niemanden zur Hand hat, der die bei Strato so günstig gehostete Website technisch betreuen kann (was aber wieder Geld kostet, was man eigentlich einsparen wollte).

Und bevor jemand fragt: ja, die manuelle Installation eines ausstehenden WordPress-Updates ist jederzeit möglich. Man muss dafür nur auf einen Button klicken. Bei einer Hobby-Website, wo nur saisonal mal ein oder 2 Beiträge ergänzt werden, wird das aber schnell übersehen, da man das Backend nicht regelmäßig aufruft. Die wenigsten folgen zudem Newslettern, wo über neueste WordPress-Updates informiert wird. Genau deswegen hat man 2013 die Auto-Updates eingeführt, deren Ausführung Strato jedoch untergräbt.

Möglichkeiten

Welche Möglichkeiten man überhaupt hat, um seine Website bei Strato insbesondere sicher zu betreiben? Einiges:

Aktualisierungen sicherstellen

Schau dir unbedingt an, ob in deinem WordPress automatische Aktualisierungen, mindestens für die Sicherheit, wirklich aktiv sind. Gehe dazu auf „Aktualisieren“ und schau dir an, was WordPress dazu schreibt. Ideal wären folgende Sätze:

 Diese Website wird mit jeder neuen WordPress-Version automatisch auf dem neuesten Stand gehalten.
 Diese Website wird ausschließlich mit reinen Wartungs- und Sicherheitsversionen von WordPress automatisch auf dem neuesten Stand gehalten.

Alles andere kann und wird deine Website gefährden.

Vergiss in dem Zusammenhang deine Plugins und Themes nicht. Diese solltest du ebenfalls regelmäßig aktualisieren, wobei ich bei diesen vom Automatismus abraten würde.

Umzug

Buche dein Hosting nicht bei Strato und wenn du dort bist, zieh weg. Es gibt genügend Hoster, die dich nicht in der Form bevormunden und dein Projekt sprichwörtlich gefährden. Sie kümmern sich sogar um dich und deine Website.

Solltest du dabei Unterstützung benötigen, es gibt viele enthusiastische WordPress-Dienstleister, die dabei helfen können – und so lange dauert das i.d.R. auch nicht, dass man dafür gleich seine Niere verkaufen muss :) Ein Besuch bei einem WordPress Meetup kann bereits hilfreich für dein Projekt sein.

Fazit

Ich kann, wie schon seit Jahren, jedem nur davon abraten bei Strato eine WordPress-Website zu hosten. Zumindest nicht ohne aktive Betreuung durch jemanden, der sich technisch damit auskennt. Es ist mir ein Rätsel, wie ein Unternehmen derart mit seinen Kunden umgehen kann. Da dies nun schon seit Jahren anhält, hab ich leider wenig Hoffnung auf Besserung. Die nächste gehackte und bei Strato gehostete Website guckt schon um die Ecke.