API — это набор способов и правил, по которым различные программы общаются между собой и обмениваются данными. Технически API означает программный интерфейс приложения. Интерфейс — это граница между двумя функциональными системами, на которой происходит их взаимодействие и обмен информацией. Но при этом процессы внутри каждой из систем скрыты друг от друга.
API даёт доступ к готовым инструментам, например, к функциям библиотеки для машинного обучения. API позволяет вынести в отдельное приложение функционал, который должен быть защищен. Снижается вероятность некорректного использования этих функций другими программами. С помощью API можно связывать разные системы, например, подключить к сайту платёжную систему или аутентификацию через социальные сети.
OWASP API Security Top 10
API используется повсеместно, а вместе с этим растет количество инцидентов, связанных с атаками на его функционал. Авторитетный проект OWASP, сосредоточенный на безопасности веб-приложений, выпустил OWASP API Security Top 10 2019 (PDF-версия) — перечень наиболее опасных и распространенных ошибок при разработке и использовании API:
- API1:2019 — Недостатки контроля доступа к объектам;
- API2:2019 — Недостатки аутентификации;
- API3:2019 — Разглашение конфиденциальных данных;
- API4:2019 — Отсутствие ограничений на ресурсы и запросы;
- API5:2019 — Недостатки контроля доступа на функциональном уровне;
- API6:2019 — Переназначение параметров;
- API7:2019 — Ошибки настроек безопасности;
- API8:2019 — Инъекции;
- API9:2019 — Некорректное управление ресурсами;
- API10:2019 — Недостаточное журналирование и мониторинг.
Читать далее Не теребите мой API: обзор OWASP API Security Top 10