---
tags: WEB Basic
---
# Занятие 3. Основные атаки и паттерны
## Практическая работа
### SQL-injection уязвимости
#### 1. SQL injection vulnerability allowing login bypass
* Запустили перехват в Intercept

* Перехватили введённые данные на сайте

* Изменили поле username и нажали forward

* Авторизаци прошла, ЛР успешно выполнена

#### 2. Lab: SQL injection vulnerability in WHERE clause allowing retrieval of hidden data
* Выбрали категорию Gifts

* Перехватили запрос

* Изменили поле Category и отправили запрос

* Увидели все категории товаров. ЛР успешно выполнена

#### 3. SQL injection UNION attack, retrieving data from other tables
* Выбрали категорию Toys&Games и перехватили запрос

* Изменили поле category

* Вывели 2 столбца

* Снова отредактировали поле category

* Обнаружили имя и пароль

* Прошли аутентификацию

* ЛР успешно выполнена

#### 4. SQL injection attack, querying the database type and version on MySQL and Microsoft
* Аналогично вывели 2 столбца


* Создали запрос для определения версии

* Обнаружили версию MySQL. ЛР успешно выполнена


### XSS уязвимости
#### 1. Stored XSS into HTML context with nothing encoded
* В комментариях ввели скрипт alert(135)

* Скрипт выполнился

* ЛР успешно выполнена

#### 2. DOM XSS in document.write sink using source location.search
* Ввели в поиске строку "XSS Scripting!!!"

* Обнаружили её в коде страницы

* Ввели в поиске строку svg onload=alert(1). Функция alert вызвана

* ЛР успешно выполнена

#### 3. Reflected XSS into a JavaScript string with angle brackets HTML encoded
* Ввели запрос в строке поиска

* Запрос отправили в Repeater

* Во вкладке Response обнаружили строки XSS Scripting!!!

* Изменили поле search

* Функция alert сработала. ЛР успешно выполнена

#### 4. Reflected DOM XSS
* Ввели строку в поиске

* В истории обнаружили запрос

* Перешли во вкладку Target, открыли searchResults.js

* В ответе обнаружили функцию eval

* Выполнили вызов функции alert

* Функция сработала

* ЛР успешно выполнена

### CSRF
#### 1. CSRF vulnerability with no defenses
* Прошли аутентификацию

* Изменили email

* Обнаружили этот запрос в burpsuite

* Перешли в меню генерации CSTF PoC

* Включили авто-отправку скрипта и нажали кнопку "Regenerate"

* Вставили получившийся HTML-код и доставили жертве

* Email изменился. ЛР успешно выполнена

#### 2. CSRF where token validation depends on request method
* Изменили email и обнаружили токен csrf

* Изменили токен, запрос прошел неудачно

* Изменили тип запроса на GET. Он успешно прошел

* Аналогично ЛР 1 CSRF настроили скрипт

* Доставили жертве

* Почта изменилась. ЛР успешно выполнена

### SSRF
#### 1. Basic SSRF against the local server
* Проверили количество товара

* Перехватили запрос и изменили поле stockApi

* Зашли под администратором, обнаружили пользователей

* Ввели URL-адрес для удаления пользователя

* ЛР успешно выполнена

#### 2. SSRF with filter bypass via open redirection vulnerability
* Перехватили запрос. Изменили URL-адрес, но получить доступ не удалось

* Выбрали "Следующий продукт" на исходном сайте. Обнаружили путь

* Снова изменили поле stockApi

* Зашли под интерфейсом администратора

* Изменили поле stockApi для удаления пользователя carlos

* Пользователь удален. ЛР успешно выполнена


### RCE
#### 1. OS command injection, simple case
* В POST методе добавли команду |whoami

* Отправили и в ответе обнаружили имя пользователя. ЛР успешно выполнена


### Path traversal
#### 1. File path traversal, simple case
* В GET-запросе изменили поле filename для просмотра файла passwd

* В HTTP history обнаружили содержимое файла

* ЛР успешно выполнена

#### 2. File path traversal, traversal sequences blocked with absolute path bypass
* Аналогично указали абсолютный путь filename=/etc/passwd

* В ответе обнаружили содержимое файла passwd

* ЛР успешно выполнена

### Статистика


SQL



XSS



CSRF

SSRF


RCE (OS Command)

Directory traversal
