Как найти Reflected XSS? Решение лаборатории с сайта Portswigger.
Здравствуйте, дорогие друзья.
В рамках данной статьи, я покажу Вам, как можно искать уязвимости Reflected XSS, на примере решения лабораторий с сайта Portswigger. Ссылка на лаборатории: https://portswigger.net/web-security/all-labs, где нам нужно найти вкладку XSS с задачками:
![Cross-site scripting](https://timcore.ru/wp-content/uploads/2023/03/screenshot_1-1024x785.png)
Откроем первую лабораторию, с Reflected (отраженный) XSS:
![Откроем первую лабораторию, с Reflected (отраженный) XSS](https://timcore.ru/wp-content/uploads/2023/03/screenshot_2-1024x708.png)
Жмем на зеленую кнопку «access the lab», и попадаем на сайт:
![Жмем на зеленую кнопку «access the lab», и попадаем на сайт:](https://timcore.ru/wp-content/uploads/2023/03/screenshot_3-1024x724.png)
Сразу обращаем внимание, что у нас появляется строка поиска, в блоге, которую можно использовать в качестве точки входа на веб-сайте.
Введем какие-либо текстовые данные. Например, слово «test», предварительно сконнектив инструмент BurpSuite, и наш браузер. Видим вот такой вывод:
![вывод в Burp Suite](https://timcore.ru/wp-content/uploads/2023/03/screenshot_4.png)
Отправляем наш запрос на вкладку «Repeater», с помощью горячих клавиш «Ctrl+R»:
![Отправляем наш запрос на вкладку «Repeater», с помощью горячих клавиш «Ctrl+R»](https://timcore.ru/wp-content/uploads/2023/03/screenshot_5.png)
Попутно отключаем перехватчик (intercept), и начинаем тестировать данную страницу, с помощью измененного запроса в строке поиска:
![Попутно отключаем перехватчик (intercept), и начинаем тестировать данную страницу, с помощью измененного запроса в строке поиска](https://timcore.ru/wp-content/uploads/2023/03/screenshot_6.png)
Жмем на кнопку «Send», в левом верхнем углу, и получаем вывод в правой части инструмента:
![Жмем на кнопку «Send», в левом верхнем углу, и получаем вывод в правой части инструмента](https://timcore.ru/wp-content/uploads/2023/03/screenshot_7.png)
Можно поискать точку входа в веб-приложение, с помощью окна поиска в правом нижнем углу, введя слово «test», которое мы прописывали на сайте:
![Можно поискать точку входа в веб-приложение, с помощью окна поиска в правом нижнем углу, введя слово «test», которое мы прописывали на сайте](https://timcore.ru/wp-content/uploads/2023/03/screenshot_8.png)
Мы можем добавлять какие-либо данные в первой строке запроса (левый верхний угол), и получать соответствующие ответы:
![Мы можем добавлять какие-либо данные в первой строке запроса (левый верхний угол), и получать соответствующие ответы](https://timcore.ru/wp-content/uploads/2023/03/screenshot_9-1024x588.png)
Таким образом, для поиска XSS уязвимостей, мы можем ставить в строку поиска теги <script>alert(1)</script>
, и посмотреть, что у нас получается:
![Таким образом, для поиска XSS уязвимостей, мы можем ставить в строку поиска теги <script>alert(1)</script>, и посмотреть, что у нас получается](https://timcore.ru/wp-content/uploads/2023/03/screenshot_10-1024x567.png)
Вывод есть, и на странице мы получили успешное прохождение нашей лаборатории:
![Вывод есть, и на странице мы получили успешное прохождение нашей лаборатории.](https://timcore.ru/wp-content/uploads/2023/03/screenshot_11-1024x561.png)
Теперь для наглядности покажу, как все работает на сайте. Пробуем по новой включать перехватчик, и на сайте прописывать данный скрипт:
![Теперь для наглядности покажу, как все работает на сайте.
Пробуем по новой включать перехватчик, и на сайте прописывать данный скрипт](https://timcore.ru/wp-content/uploads/2023/03/screenshot_12-1024x654.png)
И получаем вывод нашего всплывающего окна. Уязвимость есть.
Одна лаборатория решена.
![И получаем вывод нашего всплывающего окна. Уязвимость есть.
Одна лаборатория решена.](https://timcore.ru/wp-content/uploads/2023/03/screenshot_13.png)
На этом все. Всем хорошего дня!