# Занятие 3. Основные атаки и паттерны
## Итоговая статистика пройденных атак

## SQL-injection уязвимости:
1. Уязвимость SQL-инъекции, позволяющая обойти вход в систему
Используем Burp Suite для перехвата и изменения запроса на вход.


2. Уязвимость SQL-инъекций в предложении WHERE, позволяющая извлекать скрытые данные
Используйте Burp Suite для перехвата и изменения запроса, который устанавливает фильтр категории продукта.


3. SQL-инъекция UNION-атака, получение данных из других таблиц
Получаем содержимое таблицы пользователей


4. Атака с внедрением SQL, запрос типа и версии базы данных на MySQL и Microsoft
Получаем версию базы данных


## XSS уязвимости:
1. Сохраненный XSS в контексте HTML без каких-либо кодировок
Используем сохраненный межсайтовый скриптинг


2. DOM XSS в приемнике document.write с использованием источника location.search
Вводим строку и выясняем, что она помещается в атрибут img src

Используем функцию вызова оповещения

3. Отраженный XSS в строку JavaScript с угловыми скобками, закодированный в HTML
Вводим строку и обнаруживаем ее в JavaScript

Используем функцию вызова оповещения

4. Отраженный DOM XSS
Выполняем запрос

Видим функцию eval()

Выполняем атаку

## CSRF:
1. Уязвимость CSRF без защиты
Обновляем email

Генерируем CSRF PoC, меняем email и добавлем скрипт

Проверяем работоспособность эксплойта

2. CSRF, где проверка токена зависит от метода запроса
Если изменить значение параметра csrf, запрос будет отклонен.

Генерируем CSRF PoC, меняем email и добавлем скрипт

Проверяем работоспособность эксплойта

## SSRF:
1. Базовый SSRF против локального сервера
Пытаемся зайти за админа

Меняем параметр stockApi

Через stockApi удаляем carlos

2. SSRF с обходом фильтра через открытую уязвимость перенаправления
Через stockApi удаляем carlos


## RCE:
1. Внедрение команды ОС, простой случай
Модифицируем запрос

Получаем имя юзера


## Path traversal:
1. Обход пути к файлу, простой случай
Модифицируем запрос

Видим /etc/passwd


2. Обход пути к файлу, последовательности обхода заблокированы с обходом абсолютного пути
Модифицируем запрос

Видим /etc/passwd

