💉 Astra — автоматизированное тестирование безопасности для REST API — Information Security Squad
💉 Astra — автоматизированное тестирование безопасности для REST API

Astra — это основанный на Python инструмент для автоматического тестирования безопасности API, тестирование на проникновение API REST является сложным из-за постоянных изменений в существующих API и вновь появляющихся API.

Astra может использоваться инженерами или разработчиками в области безопасности как неотъемлемую часть процесса, поэтому они могут обнаруживать и исправлять уязвимости на ранних этапах цикла разработки.

Astra может автоматически обнаруживать и проверять вход и выход из системы (API аутентификации), поэтому любой может легко интегрировать это в конвейер CI/CD.

Astra может принимать коллекцию API в качестве входных данных, поэтому ее также можно использовать для тестирования API в автономном режиме, она ищет следующие проблемы:

  • SQL-инъекция
  • Межсайтовый скриптинг
  • Утечка информации
  • Аутентификация и управление сессиями
  • CSRF (включая слепой CSRF)
  • Ограничение скорости
  • Неправильная настройка CORS (включая методы обхода CORS)
  • Атака JWT
  • Обнаружение CRLF
  • Слепая инъекция XXE

Использование Astra для автоматического тестирования безопасности API

$ python astra.py --help
 
                      _
        /\       | |
       /  \   ___| |_ _ __ __ _
      / /\ \ / __| __| '__/ _` |
     / ____ \__ \ |_| | | (_| |
    /_/    \_\___/\__|_|  \__,_|
 
 
 
usage: astra.py [-h] [-c {Postman,Swagger}] [-n COLLECTION_NAME] [-u URL]
                [-headers HEADERS] [-method {GET,POST}] [-b BODY]
                [-l LOGINURL] [-H LOGINHEADERS] [-d LOGINDATA]
 
REST API Security testing Framework
 
optional arguments:
  -h, --help            show this help message and exit
  -c {Postman,Swagger}, --collection_type {Postman,Swagger}
                        Type of API collection
  -n COLLECTION_NAME, --collection_name COLLECTION_NAME
                        Type of API collection
  -u URL, --url URL     URL of target API
  -headers HEADERS, --headers HEADERS
                        Custom headers.Example: {"token" : "123"}
  -method {GET,POST}, --method {GET,POST}
                        HTTP request method
  -b BODY, --body BODY  Request body of API
  -l LOGINURL, --loginurl LOGINURL
                        URL of login API
  -H LOGINHEADERS, --loginheaders LOGINHEADERS
                        Headers should be in a dictionary format. Example:
                        {"accesstoken" : "axzvbqdadf"}
  -d LOGINDATA, --logindata LOGINDATA
                        login data of API 

 

Вы можете скачать Astra здесь:

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

5e7fa976b0640d40