Величайшим и самым мощным оружием Империи была Звезда Смерти, также известная как Орбитальная боевая станция DS-1. Он был размером с небольшую луну и наводил ужас на всю галактику, поскольку был разрушителем планет благодаря установленному на нем большому суперлазеру с питанием от кайбер-кристалла.

В этой статье будет обсуждаться важность обеспечения безопасности на ранних этапах конвейеров непрерывной интеграции и непрерывной доставки (CI/CD) для предотвращения появления неправильных конфигураций облачных ресурсов. История об уничтожении Звезды Смерти будет использована, чтобы показать плохие методы облачной безопасности, используемые Империей. Внедрив сканирование инфраструктуры, Империя могла легко победить Альянс повстанцев.

Слава богу, в этом случае у Империи были ужасные методы обеспечения безопасности. Осторожно, спойлеры!


Проектирование Звезды Смерти

Теперь это ужасающее чудовище боевой станции началось так же, как и любой облачный проект. Сформировалась идея или потребность. Затем была делегирована команда, чтобы превратить это видение в осязаемый проект, который нужно построить, развернуть и, к несчастью для Альдераана, использовать.

Гален Эрсо был инженером, которому было поручено разработать ключевые ресурсы для использования на Звезде Смерти. Согласно преданиям «Звездных войн», конфигурация «Звезды Смерти» изначально была неправильной. В чертежах сборки фатальная слабость находится внутри Звезды Смерти в виде теплового выпускного отверстия, ведущего непосредственно к реактору. Эта критическая неправильная конфигурация не была ясно видна Империи.

Думайте об архитектурном плане «Звезды Смерти» как о шаблоне «Инфраструктура как код» (IaC) с использованием таких инструментов, как AWS (Amazon Web Services) CloudFormation или Terraform, для создания облачного проекта «Звезды Смерти».

  • Звезда Смерти будет представлять сервер AWS EC2.
  • Reactor будет представлять работающее критически важное для бизнеса приложение.
  • Порты теплового выхлопа будут прикрепленными группами безопасности.


Что такое инфраструктура как код (IaC)?

Для новичков или незнакомых: IaC — это процесс предоставления облачных ресурсов и управления ими с помощью кода. Чтобы использовать IaC, необходимо определить файл шаблона конфигурации (схемы), который содержит инструкции для конкретных ресурсов и спецификаций для создания и развертывания проектов. При создании этих шаблонов IaC можно получить множество преимуществ, таких как улучшенная согласованность, контроль версий и более быстрое развертывание.


Что такое неверные настройки?

При использовании поставщика облачных услуг (CSP), такого как AWS, предлагается множество различных услуг на выбор для создания инфраструктуры, отвечающей потребностям. Каждая из этих услуг уникальна и создает ресурсы, настроенные клиентом. Представьте себе создание корзины S3 для хранения частной информации. Однако при создании этого сегмента он случайно становится общедоступным. Это неправильная конфигурация. Это оставляет ресурс подверженным риску.

Вейдер


Порты теплового выхлопа и реактор.

Как упоминалось ранее, у Звезды Смерти были недостатки конструкции. Пример ниже — это шаблон AWS CloudFormation. В коде шаблона определен сервер EC2 с именем «Звезда смерти» с прикрепленной группой безопасности под названием «Порты теплового выхлопа».

МАК

Пример шаблона CloudFormation, отображающий возможную неправильную конфигурацию, связанную с ресурсом EC2.

С точки зрения функциональности этот шаблон будет успешно развернут, поэтому Империя решает приступить к созданию и развертыванию этого чудовища. Однако это отсутствие безопасности и видимости в конвейере CI/CD Империи позже вернется, чтобы преследовать их, когда Люк Скайуокер воспользуется этой неправильной конфигурацией, выпустив две протонные торпеды в выпускные отверстия (Группы безопасности), которые ведут прямо к реактору (Запуск приложения). ). Таким образом, уничтожая некогда ужасающую Звезду Смерти.


Что именно не так?

Империя еще не внедрила какие-либо функции безопасности в свой конвейер CI/CD, чтобы предотвратить развертывание таких неправильных конфигураций ресурсов. В приведенном выше примере следующие неверные настройки остались незамеченными:

  • Группа безопасности ThermalExhaustPorts разрешает неограниченный доступ к необычным портам.

При сборке важно проверить группы безопасности EC2 на наличие входящих правил, разрешающих неограниченный доступ (например, 0.0.0.0/0 или ::/0) к любым необычным портам TCP и UDP. Кроме того, ограничьте доступ только теми IP-адресами, которые необходимы для реализации принципа наименьших привилегий и снижения вероятности взлома.

  • Группа безопасности ThermalExhaustPorts открывает диапазон портов

Обеспечение того, чтобы группы безопасности не открывали широкий диапазон портов для входящего трафика в инстансах EC2, может быть лучше защищено от атак, таких как атаки типа «отказ в обслуживании» (DoS) или атаки грубой силы. В зависимости от требований вашего приложения рекомендуется открывать только определенные порты в ваших группах безопасности.

Неправильно настроенные термальные выхлопные порты (группы безопасности) позволили Люку Скайуокеру запустить протонные торпеды (эксплуатация) по реактору Звезды Смерти (Критическое применение), что сделало Звезду Смерти бесполезной.


Как это можно было предотвратить?

Империя могла бы использовать решение для управления Cloud Security Posture, чтобы охватить весь процесс разработки в три этапа. Код, сборка и развертывание.

трубопровод

Пример архитектурной схемы, реализующей решение Cloud Security Posture Management по всему конвейеру CI/CD


1. Код — интегрированная среда разработки (IDE)

Большинство разработчиков для начала пишут код на своем локальном компьютере. Интегрируя подключаемый модуль безопасности в IDE разработчика, разработчики IaC могут получить немедленную обратную связь, которую они смогут использовать. Эта обратная связь может быть использована для исправления выявленных неверных конфигураций из отсканированного шаблона. Сканирование шаблонов IaC в среде IDE максимально смещает безопасность влево и помогает разработчикам создавать более безопасные ресурсы с самого начала. После локальной проверки шаблон можно отправить в репозиторий кода для дальнейших рабочих процессов.

IDE

Инфраструктура как пример результата сканирования шаблона кода плагина сканирования VS Code IDE IaC.

Гален Эрсо был разработчиком этих неправильно настроенных ресурсов. Хотя он намеренно подбросил эти неправильные конфигурации в надежде, что у повстанцев будет хоть какой-то шанс уничтожить Звезду Смерти. Путем интеграции подключаемого модуля безопасности IaC в его IDE. Эрсо, без сомнения, смог бы определить неправильные конфигурации.


2. Сборка — сканирование шаблонов в конвейере CI/CD

После того как разработчик отправил шаблон IaC в репозиторий кода, такой как GitHub или AWS Code Commit. Впоследствии можно запустить рабочий процесс для автоматического создания и развертывания определенных ресурсов. Интегрируя сканирование шаблона IaC, предоставляемое инструментом управления состоянием облачной безопасности, конвейеры CI/CD можно улучшить с точки зрения безопасности. Использование API-интерфейсов CSPM (интерфейс прикладного программирования) может гарантировать, что каждый шаблон IaC, представленный в конвейере, сканируется, чтобы соответствовать передовым практикам хорошо спроектированной платформы или какому-либо другому стандарту соответствия. Если это не так, то сборка останавливается. Результаты сканирования могут быть отправлены, чтобы уведомить как разработчиков, так и эксплуатационные группы о любых возможных неправильных конфигурациях безопасности.

У Империи должен был быть конвейер CI/CD. Эрсо должен был завершить проектирование сборки «Звезды Смерти» и отправить шаблон в репозиторий. Конвейер сборки Empire должен был быть оснащен возможностями сканирования шаблонов CSPM, чтобы предотвратить появление неправильно настроенных ресурсов. Конвейер был бы запущен после отправки шаблона. На этом этапе дизайн Эрсо должен был быть отсканирован. Термические выпускные порты были бы идентифицированы как неправильная конфигурация. Сборка будет остановлена. Наконец, уведомление будет отправлено командам разработчиков и эксплуатации Empire для дальнейших действий.


3. Развертывание — управление состоянием облачной безопасности (CSPM)

CSPM — это инструмент безопасности, который постоянно отслеживает облачные учетные записи на предмет последних изменений и обнаруживает существующие неправильные настройки у нескольких поставщиков облачных услуг. С помощью CSPM группы разработки и эксплуатации могут решать проблемы безопасности, такие как видимость текущей неправильной конфигурации, помогать в соблюдении нормативных требований, проводить запланированные оценки облачных рисков и аудиты, а также ускорять работу групп реагирования на инциденты.

CSPM

Пример консоли CSPM, отображающий текущее состояние облачной инфраструктуры.

У Империи был бы последний шанс получить представление о Звезде Смерти, если бы они интегрировали инструмент CSPM. CSPM также мог бы периодически сканировать Звезду Смерти, чтобы выявить любые неправильно сконфигурированные ресурсы, которые могут уже существовать. Кроме того, представьте, если бы Звезда Смерти изначально была построена без каких-либо неправильных конфигураций и развернута. Если бы Гален Эрсо или кто-либо другой внес какие-либо изменения в состояние конфигурации «Звезды Смерти», CSPM с возможностями мониторинга в реальном времени сразу бы это определила. Затем оперативная группа будет немедленно уведомлена для дальнейших действий.


Вывод

Использование инфраструктуры как кода, независимо от того, Terraform или CloudFormation имеет много преимуществ, когда речь идет об управлении облачными ресурсами. Однако для клиента CSP важно обеспечить правильную конфигурацию каждого развернутого ресурса. Если бы Империя интегрировала безопасность на любой из двух последних этапов, упомянутых в этой статье — CI/CD (сборка) или постоянный мониторинг развернутых ресурсов (развертывание), Альянс повстанцев был бы легко разгромлен. В приведенных выше примерах Империя игнорировала простые методы обеспечения безопасности, которые позже использовал Люк Скайуокер. Не уподобляйтесь Империи, интегрируйте безопасность как можно дальше и по всему конвейеру разработки. Да прибудет с тобой сила.

Следуй за мной на средних