FixVibe
Covered by FixVibemedium

API Контрольный список безопасности: 12 вещей, которые следует проверить перед запуском в эксплуатацию

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

CWE-285CWE-799CWE-942

Влияние

Скомпрометированные API позволяют злоумышленникам обходить пользовательские интерфейсы и напрямую взаимодействовать с серверными базами данных и службами [S1]. Это может привести к несанкционированной утечке данных, захвату учетных записей методом перебора или недоступности сервиса из-за исчерпания ресурсов [S3][S5].

Основная причина

Основная причина — раскрытие внутренней логики через конечные точки, которым не хватает достаточной проверки и защиты [S1]. Разработчики часто предполагают, что если функция не отображается в пользовательском интерфейсе, она безопасна, что приводит к нарушению контроля доступа [S2] и разрешительным политикам CORS, которые доверяют слишком многим источникам [S4].

Essential API Контрольный список безопасности

  • Применять строгий контроль доступа: каждая конечная точка должна убедиться, что запрашивающая сторона имеет соответствующие разрешения для конкретного ресурса, к которому осуществляется доступ [S2].
  • Внедрение ограничения скорости: защита от автоматического злоупотребления и DoS-атак путем ограничения количества запросов, которые клиент может сделать в течение определенного периода времени. [S3].
  • Правильно настройте CORS: избегайте использования подстановочных знаков (*) для аутентифицированных конечных точек. Явно определите разрешенные источники, чтобы предотвратить утечку данных между сайтами [S4].
  • Аудит видимости конечных точек: регулярно сканируйте «скрытые» или недокументированные конечные точки, которые могут предоставлять конфиденциальные функции [S1].

Как FixVibe проверяет это

FixVibe теперь охватывает этот контрольный список посредством нескольких проверок в реальном времени. Зонды с активным шлюзом проверяют ограничение скорости конечной точки аутентификации, CORS, CSRF, SQL-инъекцию, недостатки потока аутентификации и другие проблемы, с которыми сталкивается API, только после проверки. Пассивные проверки проверяют заголовки безопасности, общедоступную документацию API и раскрытие OpenAPI, а также секреты в клиентских пакетах. Сканирование репозитория добавляет проверку рисков на уровне кода на предмет небезопасного CORS, необработанной интерполяции SQL, слабых секретов JWT, использования JWT только для декодирования, пробелов в подписи веб-перехватчика и проблем с зависимостями.