
Schritt-für-Schritt-Analyse- und Exploitation-Labor für die Drupal CVE-2018-7600 Remote-Code-Execution-Schwachstelle, einschließlich Debugging, Exploit-Code und Überprüfung des Abhilfe-Patches.
In diesem Labor verwende ich:






$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.
$array = [
'a' => [
'b' => [
'c' => 42
]
]
];
$parents = ['a', 'b', 'c'];



** Drupal 8.6.5
/core/lib/Drupal/Core/DrupalKernel.php
/core/lib/Drupal/Core/Security/RequestSanitizer.php
** 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.