#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:
Для дальнейшей работы нам понадобится BurpSuite. Запускаем его в терминале:
Переходим на вкладку Proxy, далее Intercept, далее Options, и настраиваем локальный ip в виде: 127.0.0.1 и порт: 8080:
Переходим в браузер Mozilla Firefox, и настраиваем Proxy. Это делается в несколько кликов. Переходим в правый верхний угол «бургер», далее в меню выбираем Preferences:
В настройках прокси выбираем радиокнопку «Manual proxy configuration», и прописываем ip: 127.0.0.1 и порт: 8080:
Переходим в Burp Suite на вкладку Proxy, далее Intercept и включаем Intercept is on:
Переходим в браузер на сайт, и в поле first name для примера я пропишу слово «Mikhail», а в поле last name: «Timcore». После этого жмем кнопку Go:
Переходим в BurpSuite на вкладку Proxy, далее Intercept. В поле Raw мы видим исчерпывающие данные, которые перехватил Burp. Это и Юзерагент, и Куки, и контент тайп и много еще чего интересного. В данном случае нас интересуют данные, которые расположены в самом низу отчета. Они имеют вид: 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
Жмем кнопку Forward и переходим в браузер:
В итоге мы успешно проэксплуатировали данную уязвимость и вывели кликабельную ссылку, с использованием тега «a», и масштабирования текста, тега «h1» и «h2».
#2 bWAPP (Bee-Box) — первоначальная настройка.
#3 Уязвимость HTMl Injection — Reflected (GET) уровень (Medium).