
Пошаговый анализ и лабораторная работа по эксплуатации уязвимости удалённого выполнения кода Drupal CVE-2018-7600, включая отладку, код эксплоита и обзор патча для смягчения уязвимости.
В данной лабораторной работе я использую:






$ref запрещает ссылки на $array.
Первый цикл: $ref ссылается на $array['a'].
Второй цикл: $ref ссылается на $array['a']['b'].
Третий цикл: $ref ссылается на $array['a']['b']['c'].
В итоге $ref будет ссылаться на значение 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
** Функция stripDangerousValues проверяет все входные параметры один за другим, первые элементы входного массива имеют значение, начинающееся с “#”, а значения, не входящие в белый список, удаляются.