Академический Документы
Профессиональный Документы
Культура Документы
ОТСУТСТВИЕ ОГРАНИЧЕНИЙ НА
ОТПРАВКУ ЗАПРОСОВ
РАСКРЫТИЕ ВНУТРЕННЕЙ
ИНФОРМАЦИИ СЕРВЕРА
big-list-of-naughty-strings.txt
Трюк #2 - Postman --> Burp Suite
Если у вас есть коллекция запросов в Postman, то это ускорит
процесс поиска аномалий
Настраиваем в Postman прокси Burp Suite
Создаем Live задачу с аудитом в Burp Suite
Запускаем Collection Runner
Анализируем историю запросов
Кейс #1
Кейс #1.1 - Open Redirect
Кейс #1.1 - Open Redirect
Кейс #2
Кейс #3
Кейс #4
Как защититься?
Отключать подробный вывод об ошибках
Фильтровать выдаваемую сервером
информацию
Массовое присвоение
ВОЗМОЖНОСТЬ ОБНОВЛЕНИЯ
ПЕРЕМЕННЫХ НА СТОРОНЕ СЕРВЕРА
Повышение привилегий
Обновление переменных учетной записи
Трюк #1 - Присвоение переменных
Обновляя информацию - анализируйте ответ веб-сервера
Пробуйте использовать переменные и менять их значение
Анализируйте переменные с разных учетных записей
Сравните создание учетных записей
низкопривилегированного пользователя и администратора
1 2 3
POST /api/create/user POST /api/admin/create/user POST /create/user
Token: User Token: Admin Token: User
{ {
{
"username": "admin", "username": "user",
"username": "user", "pass": "admin", "pass": "user123",
"pass"= "user123" "admin": true "admin": true
} } }
Кейс #1
PATCH /api/v1/users HTTP/2
Трюк #2 - Перебор переменных
Разработчики могут использовать названия общепринятых
переменных
Пример:
"admin": true, Словарь Arjun
"admin":1,
"isadmin": true,
"role":"admin",
"role":"administrator",
"user_priv": "admin"
1. arjun -u http://example.ru - Запуск инструмента для перебора
2. arjun -u http://example.ru -o arjun.json - Вывод в json
3. arjun -u http://example.ru -o arjun.json --stable - Ограничение запросов
во избежание блокировок
4. arjun --headers "Content-Type: application/json" -u http://example.ru -m
JSON - Перебор JSON параметров
Инструмент Arjun
Как защититься?
Фильтровать вводимые пользователем данные
Использовать белый список, чтобы разрешать только для
определенных свойств или переменных
Требовать дополнительное подтверждение
Полезные ресурсы
Словарь эндпоинтов
Перебирайте в любом случае - не важно имеется ли
документация
Словарь Assetnote
Инструмент Kiterunner
Инструмент от разработчиков Assetnote
Уязвимые машины
1. Сompletely ridiculous API (crAPI)
2. OWASP DevSlop's Pixi
3. Damn Vulnerable GraphQL Application (DVGA)
4. VAmPI
5. DVWS-node
6. DamnVulnerable MicroServices
7. Node-API-goat
8. Vulnerable GraphQL API
9. Generic-University
10. vulnapi
Tryhackme lab
1. Bookstore
2. Carpe Diem 1
3. ZTH: Obscure Web Vulns
4. ZTH: Web2
5. GraphQL
6. OWASP API Security Top 10 - 1
7. OWASP API Security Top 10 - 2
Hackthebox lab
1. Craft
2. Postman
3. Smasher2
4. JSON
5. Node
6. Help
7. PlayerTwo
8. Luke
9. Playing with Dirty Socks
Бонус
Скачать книгу
Спасибо за внимание!