Реализация сквозной безопасности API в стеке Microsoft

Безопасность API быстро становится обязательной частью ваших передовых методов кибербезопасности для борьбы с новой и растущей угрозой: API-интерфейсы распространяются (по данным Akamai, 83 процента всего веб-трафика в настоящее время составляют трафик API) из-за широкого внедрения мобильных приложений, богатых веб-приложения, интеллектуальные устройства и архитектуры микросервисов.
Благодаря современной архитектуре микросервисов отдельные компоненты приложений также используют API для связи. В сочетании с использованием облачных сервисов это радикально расширяет поверхность атаки по сравнению с традиционными пользовательскими интерфейсами веб-приложений.
По оценкам Gartner, к 2021 году открытые API-интерфейсы будут формировать большую поверхность атаки, чем пользовательские интерфейсы, для 90% веб-приложений. Эта траектория заставила Gartner предсказать, что к 2022 году API станут основным вектором атаки.
В современном мире компаний, предоставляющих сотни (если не тысячи) API-интерфейсов в системах, которые они создают и обслуживают, как убедиться, что все API-интерфейсы, которые вы разрабатываете и используете, соответствуют современным передовым методам обеспечения безопасности?
Если вы являетесь магазином Microsoft, у нас есть для вас хорошие новости.
Мало того, что Microsoft является одним из ключевых участников инициативы Linux Foundation OpenAPI, которая поддерживает стандартный для отрасли формат контракта REST API, спецификацию OpenAPI, Microsoft теперь имеет партнерские расширения от специалиста по безопасности API 42Crunch для своих ключевых платформ разработки и выполнения.
Три шага к безопасности API
Давайте посмотрим, как они работают в трех основных компонентах стека облачных исследований и разработок Microsoft:
- Код Visual Studio для разработки API
- Конвейеры Azure DevOps для обнаружения и тестирования API
- Служба Azure Kubernetes для защиты API
Шаг 1 — VS Code: проектирование и разработка API
Microsoft Visual Studio Code (обычно называемый VS Code) — это среда разработки (IDE) с открытым исходным кодом (!) от Microsoft. Выпущенная всего в 2015 году, она быстро стала IDE №1 для современной разработки программного обеспечения.
Часть популярности VS Code связана с его процветающим рынком расширений. Благодаря тысячам подключаемых модулей для различных языков программирования и технологий он может удовлетворить любые потребности в исследованиях и разработках.
Популярное расширение OpenAPI (Swagger) Editor предоставляет первоклассные возможности создания и редактирования API для IDE с помощью шаблонов, навигации по контрактам, IntelliSense и фрагментов кода:
Кроме того, аудит безопасности API выполняется одним щелчком мыши. Нажмите кнопку 42C в правом верхнем углу и получите более 200 различных проверок передовых практик безопасности, выполняемых в соответствии с определением API, включая аутентификацию, авторизацию, транспорт и проверку данных.
По каждой проблеме вы получаете подробную информацию о возможном сценарии эксплойта и рекомендуемом способе устранения проблемы безопасности.
Шаг 2 — Azure DevOps: тестирование и DevSecOps
Хотя VS Code — отличный инструмент для личной продуктивности разработчиков, конвейеры Azure DevOps могут вывести ваши процессы на новый уровень. Это реализация Microsoft технологии непрерывной интеграции/непрерывного развертывания (CI/CD).
Конвейер берет ваш полный репозиторий кода, выполняет тесты, которые вы добавляете к нему, и, в случае успеха, отправляет изменения в вашу среду выполнения.
Шаги в конвейере можно настраивать, и одним из расширений является статическое тестирование безопасности 42Crunch REST API.
Добавьте его в конвейер, укажите критерии успеха (например, общий порог оценки безопасности или набор более детальных требований) и получите уверенность в безопасности API в вашей компании.
Расширение автоматически находит любые определения REST API в вашем репозитории, запускает для них проверки безопасности и в результате выдает подробные отчеты. Это означает, что никакие новые API или изменения API не могут быть развернуты в ваших системах без автоматизированной проверки безопасности.
Шаг 3 — Служба Azure Kubernetes: защита во время выполнения
Наконец, когда ваша реализация API будет готова к работе в прайм-тайм, вы ее развернете — и есть вероятность, что ваш API станет микрослужбой, работающей в службах Azure Kubernetes (AKS).
Поскольку ваш контракт API уже проверен и заблокирован на предыдущих шагах, теперь вы можете использовать его в качестве политики списка разрешений, предотвращающей любые вызовы, которые не соответствуют определению API, когда-либо попадали в ваш код API.
Для этого просто настройте AKS для защиты микросервиса с помощью 42Crunch API Firewall.
Брандмауэр развертывается в том же модуле, что и каждый микросервис, что обеспечивает защиту с нулевыми сетевыми издержками. Брандмауэр считывает контракт API и обеспечивает эффективную защиту в режиме реального времени для API, предоставляемого микрослужбой.
Безопасность API: стек Microsoft спешит на помощь
API-интерфейсы стали основной поверхностью атаки для современных облачных приложений. К счастью, хорошо определенные, хорошо протестированные и хорошо защищенные API-интерфейсы хорошо оснащены, чтобы противостоять атакам, и стек Microsoft поставляется с компонентами, обеспечивающими это.
Где узнать больше о безопасности API
Вы можете узнать больше об этих компонентах, перейдя по этим ссылкам:
- 42Crunch Редактор OpenAPI (Swagger) для VS Code
- 42Crunch REST API Расширение статического тестирования безопасности
- Контейнер брандмауэра API 42Crunch для Azure Pipelines
Не забудьте также посетить APIsecurity.io, чтобы узнать новости безопасности API и получить дополнительную информацию о текущих инструментах безопасности API, стандартах и передовых методах.