Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2018-7600 | Kitploit
Tools/GitHubGitHub/raytran54/cve-2018-7600
SchwachstellenanalyseCode-AnalyseExploitationWebanwendungs-ExploitationLernen & BildungLabs & Praxis
GitHubraytran54/cve-2018-7600

CVE-2018-7600

Repository anzeigen
vor 2 JahrenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

TRAN CONG DANH - SVTT - Mentor: LUU VAN LAN - CVE-2018-7600 - Startdatum: 26/06/2024.

Inhaltsverzeichnis:

  1. CVE-Zusammenfassung
  2. Voraussetzungen
  3. CVE-Analyse
  4. Gegenmaßnahmen

CVE-Zusammenfassung

  • Ein Angreifer könnte eine Drupal-Form-API-Ajax-Anfrage aufrufen, die die Funktion call_user_func auto do enthält
  • 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

Voraussetzungen

  • In diesem Labor verwende ich:

    • Ubuntu 20.04( PHP 7.2, MariaDB )
    • Die Drupal-Version, die ich in diesem Labor verwende, ist 8.3.8
    • Visual Studio Code zum Debuggen
    • Kali 23.4 zum Ausführen des Drupal-Exploits

CVE-Analyse

  • Wir finden, dass die Schlüssel, die call_user_func verwenden, #pre_render, #post_render, #access_callback, #submit, #lazy_builder, #validate sind image
  • Die Aufgabe besteht nun darin, herauszufinden, welcher vom Benutzer übermittelte Parameter ein Rendering enthält, den Schlüssel ändern kann und den #post_render-Schlüssel empfängt, um ihn aufzurufen. image
  • Beim Ändern der Bildgröße ruft der Server die Drupal-API auf image
  • Die hier enthaltene Funktion &$array ist das Array der Standardelemente, das beim Senden übergeben wird; versuchen wir, ohne Code zu debuggen: image image
  • Angenommen, Sie ändern den Wert von mail beim Hochladen: image image

image

  • Beim Aufruf der Methode getValue($array, $parents) läuft der Prozess wie folgt ab:

$ref verhindert Referenzen auf $array.

Erste Schleife: $ref verweist auf $array['a'].

Zweite Schleife: $ref verweist auf $array['a']['b'].

Dritte Schleife: $ref verweist auf $array['a']['b']['c'].

Das Endergebnis: $ref verweist auf den Wert 42.

root@kitploit:~
$array = [
    'a' => [
        'b' => [
            'c' => 42
        ]
    ]
];
$parents = ['a', 'b', 'c'];
  • Nachdem der $form-Wert von der Funktion getValue empfangen wurde, wird $form zu einem Argument für die Render-Funktion

image image image

  • Die Definition von call_user_func

image

  • Das Ergebnis, wenn ich die Exploit-Datei verwende:

image

Gegenmaßnahmen

  • Patch ** Die Drupal-Entwickler haben einen Patch veröffentlicht, der eine RequestSanitizer-Klasse mit einer stripDangerousValues-Methode hinzufügt, um alle Eingabeelemente des Arrays zu entfernen, deren Schlüssel mit “#” beginnen. Diese Methode bereinigt die Eingaben in $_GET, $_POST und $_COOKIES.

** Drupal 8.6.5 /core/lib/Drupal/Core/DrupalKernel.php image /core/lib/Drupal/Core/Security/RequestSanitizer.php image image ** Die Funktion stripDangerousValues überprüft alle Eingabeparameter einzeln. Die ersten Elemente des Eingabearrays, die einen mit “#” beginnenden Wert haben und nicht auf der Whitelist stehen, werden entfernt.

Tool herunterladen