#34 Уязвимость DVWA. Content Security Policy (Bypass) — Уровень (Low).
Здравствуйте, дорогие друзья.
Продолжаем рассматривать уязвимости DVWA, и сегодня остановимся на Content Security Policy на низком уровне настроек безопасности.
(CSP) или политика защиты контента представляет собой механизм, который встроен в браузеры, и позволяющий защититься от XSS-атак.
Если говорить об использовании данной политики, то основная задача будет заключаться в том, что она будет сводить к минимуму успешную эксплуатацию XSS, и блокировку не доверенных скриптов JavaScript.
Механизм также дает описание браузеру источники загрузки ресурсов, что безопасно. Источники могут быть в виде JS, стилей, изображений, фреймов.
С теорией все, и для начала выставим настройки на «Low»:
Открываем страницу «CSP Bypass», и видим поле для ввода данных, а также описание, что нужно делать с данным полем. Запись имеет перевод: «Вы можете включить скрипты из внешних источников, изучить Политику безопасности контента и ввести URL-адрес, который нужно включить сюда»:
Начнем тестировать, и попробуем ввести стандартный скрипт, с выводом всплывающего окна и сообщения: «<script>alert(‘CSP_Bypass’)</script>»:
Жмем кнопку «Include», и ничего не происходит. Страница работает корректно и фильтрует наш скрипт, у которого нет шансов на выполнение. Давайте рассмотрим исходный код данной страницы. Это кнопка «View Source» внизу справа:
В появившемся окне видим скрипты на языке программирования PHP:
Обратите внимание на ссылку во втором комментарии. Можно перейти по ней, предварительно скопировав. После чего в адресной строке URL вставляем скопированный адрес, и видим вывод:
Думаю, Вы догадались, что происходит. Если нет, то суть в том, что данный сайт преобразует исходный код (в данном случае на JavaScript), в кликабельную ссылку, которую можно внедрить на уязвимой странице. Предлагаю создать собственную. Для этого переходим по адресу: «https://pastebin.com/», и вводим код. У меня он выглядит как: «alert(“CSP- Bypass_Low”);»:
Нужно нажать на кнопку «raw» и мы генерируем новую ссылку для вставки на страницу:
Отлично. Теперь осталось ввести данную ссылку в поле для ввода на уязвимой странице, и мы получим вывод всплывающего окна.
На этом все. Всем хорошего дня!
#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).
#16 Уязвимость DVWA — Brute Force (Уровень High).
#17 Уязвимость DVWA. SQL-Injection (Уровень High).
#18 Уязвимость DVWA. CSRF (Уровень High).
#19 Уязвимость DVWA. JavaScript — Уровень «Low».
#20 Уязвимость DVWA. JavaScript — уровень «Medium».
#21 DVWA — reCAPTCHA (API key missing).
#22 Уязвимость DVWA. Insecure Captcha (уровень Low).
#23 Уязвимость DVWA. Insecure Captcha (уровень Medium).
#24 Уязвимость DVWA. Insecure Captcha (уровень «High»).
#25 Уязвимость DVWA. XSS DOM (Уровень Low).
#26 Уязвимость DVWA. XSS DOM (уровень Medium).
#27 Уязвимость DVWA. XSS DOM — (уровень High).
#28 Уязвимость DVWA. XSS (Reflected) — (уровень Low).
#29 Уязвимость DVWA. XSS (Reflected) — (уровень Medium).
#30 Уязвимость DVWA. XSS (Reflected) — уровень (High).
#31 Уязвимость DVWA. XSS (Stored) — уровень (Low).