#18 Уязвимость DVWA. CSRF (Уровень High).
Здравствуйте, дорогие друзья. Продолжаем рассматривать уязвимости DVWA, и сегодня остановимся на CSRF высокого уровня безопасности.
На самом деле она очень проста в реализации. Не буду останавливаться на том, что такое CSRF (смотрите про данную уязвимость на уровне Low), а перейдем непосредственно к решению. Начнем с того, что установим уровень сложности на high:

Переходим на вкладку «CSRF», и видим два поля для изменения пароля:

Смысл данной страницы состоит в том, чтобы менять пароли в учетной записи «admin».
Просмотрев исходный код странички, мы можем увидим параметр name=”user_token” и value c кодом токена, который меняет свое значение сессии при каждой перезагрузке приложения.
Для того, чтобы проэксплуатировать эту уязвимость, нам нужно сохранить код с открывающим и закрывающим тегом «form»:

В данный код нужно внести правки, которые помогут нам при реализации нашей задачи.
Создадим файл, который называется «csrf.html» и вставим в него код формы:

Во-первых, в параметр action вставим ссылку на уязвимую страницу:

Во-вторых, в двух полях автозаполнения (AUTOCOMPLETE) ставим значение «on»:

В-третьих, прописываем новый параметр «value». Он означает изменение пароля. Я поставил цифровое обозначение нового пароля: «123»

Сохраняем данный файл с расширением .html, и запускаем его двойным щелчком мыши:

Нас перебрасывает в браузер. Мы видим автозаполненную форму паролей:

Жмем кнопку «Change» и переходим на уязвимую страничку CSRF:

Можно протестировать пароль. Для этого выйдем из приложения и повторно авторизуемся по дефолтному паролю:

А если ввести измененный пароль, то он корректно сработает:

#1 Уязвимость DVWA. SQL-Injection (уровень Low).
#2 Уязвимость DVWA. Brute Force (Уровень Low).
#3 Уязвимость DVWA — File Upload (Уровень Low).
#4 Уязвимость DVWA. File Upload (Уровень Medium).
#5 Уязвимость DVWA File Upload (Уровень High).
#6 Уязвимость DVWA. Brute Force (Уровень Medium).
#7 Уязвимость DVWA. Command Execution (Уровень Low).
#8 Уязвимость DVWA. Command Execution (Уровень Medium).
#9 Уязвимость DVWA. CSRF (Уровень Low).
#10 Уязвимость DVWA. CSRF (Уровень Medium).
#11. Уязвимость DVWA — (Local File Inclusion). Уровень Low.
#12 Уязвимость DVWA. LFI (Local File Inclution) — Уровень Medium.
#13 Уязвимость DVWA LFI — Local File Inclusion (Уровень High).
#14 Уязвимость DVWA. Command Execution (Уровень High).
#15 Уязвимость DVWA. SQL-Injection (Уровень Medium).