# Web-Basic-3(Основные атаки и паттерны)
## Статистика выполненных работ.







## SQL-injection уязвимости.
### Lab: SQL injection vulnerability allowing login bypass.
1. Перед отправкой формы включаем **intercept**, к имени добавляем `–`. 


### Lab: SQL injection vulnerability in WHERE clause allowing retrieval of hidden data.
1. Включаем **intercept** и меняем у любой категории параметр `category` на `'+OR+1=1--`. 
2. Отправляем и видим скрытые объекты. 

### Lab: SQL injection UNION attack, retrieving data from other tables.
1. Включаем **intercept** и переходим в категорию. 
2. К категории добавляем `'+UNION+SELECT+username,+password+FROM+users--` 
3. Видим что столбца минимум два. 
4. Меняем форму чтобы сайт возвращал имена и пароли пользователей. 

5. Проверим. 


### Lab: SQL injection attack, querying the database type and version on MySQL and Microsoft.
1. Включаем **intercept** и переходим в категорию. 
2. Узнаем сколько столбцов. 

3. Узнаем версию базы данных. 


## XSS уязвимости.
### Lab: Stored XSS into HTML context with nothing encoded.
1. Оставляем комментарий. 
2. Скрипт сработал. 

### Lab: DOM XSS in document.write sink using source location.search.
1. Делаем поиск. 
2. Запрос записался в script src. 
3. Снова делаем поиск со вставкой alert-box и видим что скрипт отработал 

### Lab: Reflected XSS into a JavaScript string with angle brackets HTML encoded.
1. Пишем запрос. 
2. Включаем **intercept** и результат отправляем в **repeater**. 
3. Отсылаем и видим результат в ответах, пишем в поиске `'-alert(1)-'`. 
4. Скрипт отработал.
### Lab: Reflected DOM XSS.
1. Делаем запрос и видим его в истории. 
2. Откроем *searchResult.js* и видим использование *eval()* в ответе. 
3. Введём `\"-alert(1)}//` 

## CSRF.
### Lab: CSRF vulnerability with no defenses.
1. Входим в предложенный аккаунт. 
2. Перейдём в `http-history` и найдём смену **email**. Скопируем **url**. 
3. Переходим в `go to exploit server` и вставим скрипт. 

### Lab: CSRF where token validation depends on request method.
1. Входим в аккаунт. 
2. Перехватываем почту. 
4. Меняем **POST** на **GET**. 
5. Вставляем скрипт. 

## SSRF.
### Lab: Basic SSRF against the local server.
1. Перед нажатием на кнопку включим **intercept**, видим **stockApi**. 
2. Меняем для отображения интерфейса администратора. 
3. Отправляем форму. 
4. Удалим пользователя **carlos**. 

### Lab: SSRF with filter bypass via open redirection vulnerability.
1. Меняем **stockApi** на `http://192.168.0.12:8080/admin`. 
2. Получаем ошибку. 
4. Переходим на другую страницу. 
5. Меняем **stockApi**. 
6. Меняем **stockApi**. 

## RCE.
### Lab: OS command injection, simple case.
1. Включаем **intercept**, замечаем **storeID**. 
2. Заменяем параметр **storeID** так, чтобы получить имя текущего пользователя, отправляем запрос. 


## Path traversal.
### Lab: File path traversal, simple case.
1. Откроем картинку в новой вкладке и зметим `filename`. 
2. Заменим и отправим. 
3. Перейдём в `http-history`. 
4. На сайте теперь пустое изображение. 
### Lab: File path traversal, traversal sequences blocked with absolute path bypass.
1. Откроем картинку в новой вкладке. 
2. Меянем **filename** 
3. Зайдём в `http-history` 
4. На сайте пустое изображение. 
