Здравствуйте, дорогие друзья.
Продолжаем рассматривать уязвимости DVWA, и сегодня остановимся на XSS DOM высокого уровня настроек безопасности.
Для начала выставим уровень «High»:
Переходим на вкладку XSS (DOM), и видим стандартную страницу с выбором разных языков. Нажав на кнопку «Select», можно выбирать выбранный язык:
Просмотрим исходники данной страницы. Это кнопка «View Source», внизу справа:
Открываем исходники, и видим скрипт на языке программирования «PHP»:
Первая часть скрипта проверяет, есть ли ввод на странице. Данные передаются методом «GET». Есть условный оператор «if». Далее идет конструкция «switch - case», вложенная в условный оператор «if», которая заносит в белый список допустимые языки, в зависимости от выбора того или иного языка. По-дефолту стоит английский язык.
Переходим на нашу страницу, и нажмем кнопку «Select»:
Видим в адресной строке URL, что данные передаются методом «GET».
Попробуем внедрить вредоносный код в строку.
Предлагаю после слова «English» вставить символ решетки «#», и далее пробуем ввести код JavaScript, который мы использовали в предыдущих примерах. Код будет выглядеть так: «<script>alert(‘DOMXSS’)</script>»:
В итоге мы получаем вывод всплывающего окна. Отлично, мы проэксплуатировали данную уязвимость на высоких настройках безопасности.
На этом все. Всем хорошего дня!