Web API Pentesting
Використовуйте Trickest для легкої побудови та автоматизації робочих процесів за допомогою найбільш продвинутих інструментів спільноти у світі. Отримайте доступ сьогодні:
Стислий огляд методології тестування веб-API
Тестування API включає структурований підхід до виявлення вразливостей. Цей посібник узагальнює всебічну методологію, наголошуючи на практичних техніках та інструментах.
Розуміння типів API
SOAP/XML веб-сервіси: Використовуйте формат WSDL для документації, який зазвичай знаходиться за шляхами
?wsdl
. Інструменти, такі як SOAPUI та WSDLer (розширення Burp Suite), є важливими для розбору та генерації запитів. Приклад документації доступний на DNE Online.REST API (JSON): Документація часто надходить у файлах WADL, але інструменти, такі як Swagger UI, надають більш дружній інтерфейс для взаємодії. Postman є цінним інструментом для створення та управління прикладними запитами.
GraphQL: Мова запитів для API, що пропонує повний та зрозумілий опис даних у вашому API.
Практичні лабораторії
VAmPI: Спеціально вразливий API для практичних занять, який охоплює верхні 10 вразливостей API OWASP.
Ефективні прийоми для тестування веб-API
Вразливості SOAP/XML: Досліджуйте вразливості XXE, хоча оголошення DTD часто обмежені. Теги CDATA можуть дозволити вставку навантаження, якщо XML залишається дійсним.
Підвищення привілеїв: Тестуйте кінцеві точки з різними рівнями привілеїв, щоб виявити можливості несанкціонованого доступу.
Неправильна конфігурація CORS: Досліджуйте налаштування CORS для можливості експлуатації через атаки CSRF з аутентифікованих сеансів.
Виявлення кінцевих точок: Використовуйте шаблони API для виявлення прихованих кінцевих точок. Інструменти, такі як фазери, можуть автоматизувати цей процес.
Втручання в параметри: Експериментуйте з додаванням або заміною параметрів у запитах для доступу до несанкціонованих даних або функціоналів.
Тестування методів HTTP: Змінюйте методи запитів (GET, POST, PUT, DELETE, PATCH), щоб виявити неочікувану поведінку або розкриття інформації.
Маніпулювання типом вмісту: Перемикайтеся між різними типами вмісту (x-www-form-urlencoded, application/xml, application/json), щоб перевірити проблеми розбору або вразливості.
Розширені техніки параметрів: Тестуйте з неочікуваними типами даних у навантаженнях JSON або грайте з даними XML для впровадження XXE. Також спробуйте забруднення параметрів та символи-джокери для ширшого тестування.
Тестування версій: Старі версії API можуть бути більш вразливими до атак. Завжди перевіряйте та тестуйте проти кількох версій API.
Інструменти та ресурси для тестування веб-API
kiterunner: Відмінно підходить для виявлення кінцевих точок API. Використовуйте його для сканування та грубої сили шляхів та параметрів проти цільових API.
Додаткові інструменти, такі як automatic-api-attack-tool, Astra та restler-fuzzer, пропонують індивідуальні функціональні можливості для тестування безпеки API, від симуляції атак до фаззінгу та пошуку вразливостей.
Ресурси для навчання та практики
OWASP API Security Top 10: Обов'язкове чтиво для розуміння поширених вразливостей API (OWASP Top 10).
API Security Checklist: Комплексний перелік для захисту API (Посилання на GitHub).
Фільтри Logger++: Для пошуку вразливостей API, Logger++ пропонує корисні фільтри (Посилання на GitHub).
Список кінцевих точок API: Упорядкований список потенційних кінцевих точок API для тестування (GitHub gist).
Посилання
Використовуйте Trickest, щоб легко створювати та автоматизувати робочі процеси за допомогою найбільш продвинутих інструментів спільноти у світі. Отримайте доступ сьогодні:
Last updated