Bee-Box, bWAPP (buggy web application), HTML Injection - Reflected, Уязвимости

#4 Уязвимость HTML Injection — Reflected (POST) уровень (Low).

Рассмотрим уязвимость под названием HTML Injection — Reflected (POST) на уровне low в веб-приложении bWAPP. В нем существуют многие уязвимости, и на каждую уязвимость реализованы три уровня безопасности: low, medium, high.

В рамках данного урока мы рассмотрим минимальный уровень защищенности (уровень low).

В отличии от HTML Injection — Reflected (GET), разновидность HTML-инъекции POST немного сложнее. Это происходит при отправке вредоносного HTML-кода, вместо правильных параметров метода POST.

Метод запроса POST предназначен для запроса, при котором веб-сервер принимает данные, заключённые в тело сообщения, для хранения.

Мы не можем просто так увидеть эти данные (в отличие от метода GET), но существует возможность воспользоваться специализированным программным обеспечением, к примеру BurpSuite.

Переходим в Kali Linux и открываем наше веб-приложение bWAPP.

Выбираем уязвимость HTML Injection — Reflected (POST), далее выбираем уровень low и жмем кнопку Hack:

Выбираем уязвимость HTML Injection — Reflected (POST)

Для дальнейшей работы нам понадобится BurpSuite. Запускаем его в терминале:

запуск burp suite в терминале

Переходим на вкладку Proxy, далее Intercept, далее Options, и настраиваем локальный ip в виде: 127.0.0.1 и порт: 8080:

Переходим на вкладку Proxy, далее Intercept, далее Options, и настраиваем локальный ip в виде: 127.0.0.1 и порт: 8080

Переходим в браузер Mozilla Firefox, и настраиваем Proxy. Это делается в несколько кликов. Переходим в правый верхний угол «бургер», далее в меню выбираем Preferences:

Preferences
Далее выбираем меню Advanced, после этого Network и Settings

В настройках прокси выбираем радиокнопку «Manual proxy configuration», и прописываем ip: 127.0.0.1 и порт: 8080:

Manual proxy configuration

Переходим в Burp Suite на вкладку Proxy, далее Intercept и включаем Intercept is on:

Переходим в Burp Suite на вкладку Proxy, далее Intercept и включаем Intercept is on:

Переходим в браузер на сайт, и в поле first name для примера я пропишу слово «Mikhail», а в поле last name: «Timcore». После этого жмем кнопку Go:

примера я пропишу слово «Mikhail», а в поле last name: «Timcore». После этого жмем кнопку Go

Переходим в BurpSuite на вкладку Proxy, далее Intercept. В поле Raw мы видим исчерпывающие данные, которые перехватил Burp. Это и Юзерагент, и Куки, и контент тайп и много еще чего интересного. В данном случае нас интересуют данные, которые расположены в самом низу отчета. Они имеют вид: firstname=Mikhail&lastname=Timcore&form=submit:

firstname=Mikhail&lastname=Timcore&form=submit

Для эксплуатирования данной уязвимости нам нужно изменить эти данные, с применением языка гипертекстовой разметки HTML. Иными словами и в данном примере я использую открывающие и закрывающие теги для масштаба текста: h1 и h2, а также тег a, для ссылки. В итоге запись будет видоизменена на вид:

firstname=<h1><a href=»http://www.google.com«>Push me Mikhail</a></h1>&lastname=<h2>

Timcore</h2>&form=submit

firstname=<h1><a href="http://www.google.com">Push me Mikhail</a></h1>&lastname=<h2> Timcore</h2>&form=submit

Жмем кнопку Forward и переходим в браузер:

Жмем кнопку Forward и переходим в браузер

В итоге мы успешно проэксплуатировали данную уязвимость и вывели кликабельную ссылку, с использованием тега «a», и масштабирования текста, тега «h1» и «h2».

#1 bWAPP — buggy web application (глючное веб-приложение). Bee-Box. Установка на Virtualbox в Parrot Security OS.

#2 bWAPP (Bee-Box) — первоначальная настройка.

#3 Уязвимость HTMl Injection — Reflected (GET) уровень (Medium).