#19 Уязвимость DVWA. JavaScript — Уровень «Low».
Здравствуйте, дорогие друзья. Продолжаем рассматривать уязвимости DVWA, и сегодня остановимся на JavaScript уровня «Low».
Для начала выставим настройки безопасности на низкие:
![настройки безопасности dvwa low](https://timcore.ru/wp-content/uploads/2021/04/screenshot_1-42.png)
Переходим на вкладку «JavaScript», и видим страницу с полем для ввода данных:
![вкладка javascript](https://timcore.ru/wp-content/uploads/2021/04/screenshot_2-40.png)
Если мы нажмем на кнопку «Submit», то получим ошибку:
![submit и ошибка ввода фразы](https://timcore.ru/wp-content/uploads/2021/04/screenshot_3-40.png)
Попробуем ввести слово «success»:
![пробуем ввести слово success](https://timcore.ru/wp-content/uploads/2021/04/screenshot_4-39.png)
Получаем ошибку некорректного токена.
Пробуем ввести какие-либо другие данные поле для ввода:
![ввод других данных в поле для ввода](https://timcore.ru/wp-content/uploads/2021/04/screenshot_6-33.png)
Получаем некорректный ввод фразы, о чем нас уведомляют.
Стоит посмотреть на исходный код страницы.
Внизу справа кнопка «view source»:
![view source](https://timcore.ru/wp-content/uploads/2021/04/screenshot_5-34.png)
После осмотра кода, в самом низу существуют две функции. Это функция «rot13» и «generate_token». :
![обнаружение двух функций javascript](https://timcore.ru/wp-content/uploads/2021/04/screenshot_7-29-1024x603.png)
Первая функция относится к шифрованию rot13, а вторая относится к генерации токена (вспомните как мы вводили слово «success») и шифрованию md5.
Наша задача будет заключаться в том, чтобы декодировать входные данные.
Это не очень сложно сделать. Введем в терминале следующую команду: «echo ‘ChangeMe’ | tr ‘A-Za-z’ ‘N-ZA-Mn-za-m’»:
![echo ‘ChangeMe’ | tr ‘A-Za-z’ ‘N-ZA-Mn-za-m’](https://timcore.ru/wp-content/uploads/2021/04/screenshot_8-26.png)
Мы расшифровываем таким образом фразу «ChangeMe». Далее кодируем полученное слово, с помощью md5sum. Команда будет выглядеть как: «echo –n ‘PunatrZr’ | md5sum»:
![echo –n ‘PunatrZr’ | md5sum](https://timcore.ru/wp-content/uploads/2021/04/screenshot_9-25.png)
Коннектим инструмент BurpSuite c браузером с помощью «FoxyProxy»:
![foxyproxy](https://timcore.ru/wp-content/uploads/2021/04/screenshot_10-22.png)
В BurpSuite оставил настройки по-дефолту.
Жмем кнопку «Submit», и нас перебрасывает в Burp:
![burpsuite](https://timcore.ru/wp-content/uploads/2021/04/screenshot_11-21-1024x661.png)
Как видим токены совпадают. Отлично. Теперь можем проделать такие-же манипуляции со словом «success»:
![кодировка слова "success"](https://timcore.ru/wp-content/uploads/2021/04/screenshot_12-18.png)
Копируем полученную хеш-сумму в BurpSuite и прописываем фразу «success»:
![копирование полученной хеш-суммы в burpsuite и прописываем фразу success](https://timcore.ru/wp-content/uploads/2021/04/screenshot_13-13-1024x530.png)
Жмем кнопку «Forward» и переходим на страницу DVWA и видим вывод:
![вывод полученного значения в burpsuite](https://timcore.ru/wp-content/uploads/2021/04/screenshot_14-12.png)
#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).