Es ist eine Lücke in aktuellen WordPress-Versionen bekannt geworden, die bereits vor sechs Monaten entdeckt worden ist. Damit können unter Umständen Fremde Dateien in einer Installation löschen, auch kritische Dateien wie zum Beispiel .htaccess, index.php oder auch die wichtige wp-config.php. Im letzteren Fall führt WordPress praktisch eine Neuinstallation aus, die dann manipuliert werden kann. Für das Problem gibt es keine Lösung von WordPress, nur einen Hotfix einer Sicherheitsfirma.
Entdeckt wurde das Sicherheitsproblem von Slavco Mihajloski und Karim El Ouerghemmi, die den Angriffsvektor in ihrem Blog beschreiben. Beide arbeiten für Rips Tech, ein Unternehmen, das Securitychecktools für PHP-Anwendungen anbietet.
Es handelt sich wohl um eine Privilege Escalation: Grundsätzlich muss ein potentieller Angreifer das Recht haben, Bilder oder andere Mediendateien hochzuladen, zu verändern oder zu löschen. Dies ist in der Rolle des Autors meist möglich. Einen solchen Zugriff müsste sich der Angreifer zunächst beschaffen.
Dann aber ist es möglich eine Eigenart der WordPress-Anwendung zu missbrauchen, mit der Vorschaubilder hochgeladener Dateien entfernt werden, wenn diese Datei gelöscht wird. Eine entsprechende Funktion schreibt den Namen der zu entfernenden Datei in die WordPress-Datenbank. So kann der Dateiname auf einen anderen Eintrag verändert werden.
Im erwähnten Blogbeitrag beschreiben die Autoren auch wie das Problem in der functions.php Datei mit neun Zeilen Code gefixt werden könnte. Es wird ein weiterer Filter definiert, der prüft, ob der Pfad noch übereinstimmt. So können keine kritischen Dateien gelöscht werden. Allerdings könne dies, so die Autoren, nur ein Hotfix sein. Möglicherweise gäbe es Inkompatibilitäten zu älteren Versionen als 4.9 oder zu Plugins.
In diesem Beitrag schreiben die Autoren auch, dass sie bereits im November 2017 von diesem Problem berichtet haben, indem sie das WordPress WordPress Security Team auf Hackerone informierten. Außer einer Bestätigung, dass man das Problem erkenne und der Aussage, dass man womöglich sechs Monate brauche, um es zu fixen, hat WordPress auch auf mehrmalige Anfragen angeblich nicht reagiert, auch nicht nach dem Hinweis, dass Rips Tech damit an die Öffentlichkeit gehen möchte.