### Отчет Никита Кузенков ## Занятие 3. Основные атаки и паттерны ### Задача к практической работе: SQL-injection уязвимости: дописать к юзернейму '-- чтобы закомментировать последущее условие ![](https://i.imgur.com/nB8mho2.png) в строке адресса категорию приравниваем '+or+1=1-- делая логическое условие верным и отсекаем условие released. ' в начале закрывает строчку для категории в скл запросе ![](https://i.imgur.com/AYTrwUs.png) в строке адресса категорию приравниваем ' UNION SELECT username, password FROM users-- делаем так чтобы вместо товаров нам вернулся юнион из учеток и паролей ![](https://i.imgur.com/hgDQoAE.png) можно заметить что каждая строка в таблице имеет 2 колонки с текстом надо убедиться что колонок больше нет ![](https://i.imgur.com/Ag3Vt08.png) как мы видим по 3 колонке отсортировать не можем значит их 2 ' UNION SELECT @@version,NULL-- (не забываем в конце пробел) узнаем версию и зануляем вторую колонку ![](https://i.imgur.com/pjN05Iy.png) XSS уязвимости: ![](https://i.imgur.com/TrXWTYS.png) в этом заднии код который мы будем передавать в форму будет выполняться тк он никак не экранируется и будет в хтмл шаблоне ![](https://i.imgur.com/TQZyOT4.png) можно увидеть что наш поисковой запрос был вставлен в хтмл код следовательно этим можно воспользоваться ![](https://i.imgur.com/vIYTlr5.png) "><script>alert(1)</script> закрываем тег картинки и вставляем наш скрипт ![](https://i.imgur.com/FcELzCs.png) можно заметить что наш запрос вставляется в тег скрипта ![](https://i.imgur.com/Gu0WYYo.png) ';alert(1);' пишем в поисковой строке кавычка с точкой запятой зыкрывают переменную searchTerms далее идет наш код, далее закрываем кавычкой последущую кавычку ![](https://i.imgur.com/vms6q6E.png) можем заметить джейсон с нашим запросом ![](https://i.imgur.com/yt6soUC.png) далее найдем где этот джейсон используется и воспользуемся уязвимостью ![](https://i.imgur.com/t8uTMEd.png) \"-alert(1)}// \ - пораждает еще 1 \ в джейсоне " - закрывает кавычки } - закрываеть джейсон // - комментарий всего остального ![](https://i.imgur.com/7Z53Qv4.png) CSRF: изменим эмейл чтоб увидеть таргет ссылку ![](https://i.imgur.com/UVZ4OKs.png) напишем эксплойт (шаблон взят с самого сайта) ![](https://i.imgur.com/ocnXi2J.png) заливаем на сервер ![](https://i.imgur.com/dV9YeF3.png) ![](https://i.imgur.com/d8SXqnB.png) в данном случае пост метод передает csrf токен, чтобы от него избавить надо убрать метод пост (то есть форма отправится через метод гет) в эксплойте предыдущего задания ![](https://i.imgur.com/afMZa3g.png) ![](https://i.imgur.com/XwP1SoB.png) ![](https://i.imgur.com/b7BlVVx.png) SSRF: видим обращение к какмоу то апи ![](https://i.imgur.com/hZ9lOor.png) заменим дату в форме на локалхост/админ получим доступ ![](https://i.imgur.com/itgpNfy.png) просто нажатие кнопки не работает смотрим редирект ![](https://i.imgur.com/QRi5rWb.png) делаем тоже самое что и в предыдущем шаге ![](https://i.imgur.com/Rudt8sJ.png) тк теперь мы обращаемся к апи на неудаленный хост предыдущий метод нам не подойдет, но мы найдем какой нибудь другой редирект например по ссылке next product ![](https://i.imgur.com/S1EcfMr.png) изменим path и воспользуемся методом из предыдущего задания с апи ![](https://i.imgur.com/unt5Tpx.png) далее все аналогично предыдущему заданию ![](https://i.imgur.com/dW8DVjd.png) RCE: изменяем пост запрос ![](https://i.imgur.com/MYr9B2c.png) ![](https://i.imgur.com/xzEJFp8.png) Path traversal: меняем файлнейм на ../../../../etc/passwd ![](https://i.imgur.com/3vg8lkC.png) ![](https://i.imgur.com/PHks5hx.png) меняем файлнейм на /etc/passwd ![](https://i.imgur.com/IbrebuA.png) Всего 15 лаб ![](https://i.imgur.com/H6fcJvV.png)