Kürzlich wurde eine schwerwiegende Sicherheitslücke in WordPress-Cache-Plugins entdeckt, einschließlich des berühmten WP Super Cache (anfällige Version 1.2 und niedriger) und W3 Total Cache (anfällige Version 0.9.2.8 und niedriger).
Wenn Sie diesen Artikel lesen und eine anfällige Version der WordPress-Cache-Plugins haben, aktualisieren Sie ihn sofort!
Wie funktioniert die Sicherheitsanfälligkeit in WordPress-Cache-Plugins?
Zunächst müssen wir darauf hinweisen, dass es sich um eine Sicherheitsanfälligkeit vom Typ “Sicherheitsanfälligkeit bei Remotecodeausführung ” handelt, die Codeausführung auf unserem Server ermöglicht und Hackern den Zugriff auf unseren Server und das Stehlen von Informationen ermöglicht Oder etwas Zerstörung anrichten.
Der Fehler wird generiert, weil die Cache-Plug-ins es ermöglichen, Teile des Codes als dynamisch festzulegen, damit sie nicht zwischengespeichert werden. In allen mfunc
Funktion mfunc
verwendet, die es ermöglicht, PHP-Code mfunc
dieser nicht zwischengespeichert, sondern ausgeführt, wird der PHP-Code eingegeben ein Kommentar und dies wird ausgeführt, zum Beispiel:
<!–mfunc echo PHP_VERSION; –><!–/mfunc–>
In WP Super Cache gab es auch zwei andere Funktionen, um den Inhalt als dynamisch zu kennzeichnen und Code auszuführen, der dynamic-cached-content
und mclude
ist.
<!--dynamic-cached-content--><?php include_once( ABSPATH . '/scripts/adverts.php' ); print_sidebar_ad(); do_more_stuff(); ?><!-- include_once( ABSPATH . '/scripts/adverts.php' ); print_sidebar_ad(); do_more_stuff(); --><!--/dynamic-cached-content-->
Dieser Code enthält die Datei adverts.php und führt die Funktionen print_sidebar_ad()
und do_more_stuff()
.
<!--mclude file.php--> <?php include_once( ABSPATH . 'file.php' ); ?> <!--/mclude-->
Dieser Code enthält die Datei file.php
.
Wie können Sie sich vor Sicherheitslücken in WordPress-Cache-Plugins schützen?
Das erste ist, das Cache-Plugin sofort auf die neueste Version zu aktualisieren. Die aktualisierten Versionen bringen die anfälligen Funktionen, mit denen die Code-Injection vollständig deaktiviert werden kann, mit, sodass dieser Schritt ausreichen sollte.
Um zu überprüfen, ob unser Blog anfällig ist, können wir einen Kommentar eingeben:
<!–mfunc echo PHP_VERSION; –><!–/mfunc–>
Wenn wir nach dem Posten des Kommentars feststellen, dass die PHP-Version angezeigt wird, ist unser Blog anfällig.
Kurz gesagt, halten Sie die Plugins auf dem neuesten Stand und Sie werden keine Probleme haben .