Обнаружение уязвимостей регулируемых кластеров AKS для PCI-DSS 3.2.1 (часть 5 из 9)

Служба Azure Kubernetes (AKS)
Шлюз приложений Azure
Microsoft Defender для облака

В этой статье описываются рекомендации по кластеру Служба Azure Kubernetes (AKS), настроенного в соответствии со стандартом безопасности данных индустрии оплаты карт (PCI-DSS 3.2.1).

Этот материал входит в цикл статей. Ознакомьтесь с введением.

Как и любое облачное решение, рабочая нагрузка PCI подвержена угрозам сети, удостоверениям и данным. Распространенные примеры источников, которые используют преимущества рабочих нагрузок и уязвимостей системы, являются вирусами или обновлениями программного обеспечения, которые приводят к нежелательным результатам. Своевременное обнаружение угроз и реагирование на них с помощью устранения рисков. Создайте критические оповещения для действий рабочей нагрузки и расширьте их до основных системных процессов. Средства мониторинга целостности антивирусной программы или файлов (FIM) должны всегда выполняться. У вас есть план ответа с учетом и команда, которая изучает оповещения и принимает меры.

Важно!

Руководство и сопровождающая реализация создаются на основе базовой архитектуры AKS. Эта архитектура основана на топологии концентратора и периферийных серверов. Виртуальная сеть концентратора содержит брандмауэр для управления исходящим трафиком, трафиком шлюза из локальных сетей и третьей сетью для обслуживания. Периферийная виртуальная сеть содержит кластер AKS, который предоставляет среду данных карта заполнителей (CDE) и размещает рабочую нагрузку PCI DSS.

GitHub logoGitHub: базовый кластер Служба Azure Kubernetes (AKS) для регулируемых рабочих нагрузок демонстрирует регламентированную инфраструктуру. Реализация иллюстрирует настройку средств безопасности на различных этапах жизненного цикла архитектуры и разработки. Это включает в себя примеры собственных агентов безопасности в кластере и средств безопасности, предоставляемых Azure, например Microsoft Defender для облака.

Обслуживание программы управления уязвимостями

Требование 5. Защита всех систем от вредоносных программ и регулярное обновление антивирусного программного обеспечения или программ

Поддержка функций AKS

AKS не работает как традиционный узел приложения. Виртуальные машины узла в кластере AKS имеют ограниченный доступ и предназначены для прямого доступа. Так как виртуальные машины узлов не соответствуют традиционным виртуальным машинам, вы не можете использовать общие средства виртуальной машины. Поэтому рекомендации в этом разделе применяются с помощью собственных конструкций Kubernetes. Применение этих требований непосредственно на уровне виртуальной машины может привести к тому, что кластер не поддерживается.

Вам потребуется развернуть программное обеспечение защиты от вредоносных программ в DaemonSets, которое будет выполняться в pod на каждом узле.

Ваши обязанности

Убедитесь, что программное обеспечение специализировано в Kubernetes и контейнерах. Существует несколько сторонних вариантов программного обеспечения. Популярные варианты включают Prisma Cloud и Aquasec. Существуют также варианты с открытым кодом, такие как Фалько. Это ваша ответственность, чтобы убедиться, что существуют процессы, чтобы убедиться, что стороннее программное обеспечение актуально. Кроме того, мониторинг и оповещение решений являются вашей ответственностью.

Требование Обязанности
Требование 5.1 Развертывание антивирусного программного обеспечения на всех системах, которые обычно затрагивают вредоносные программы (особенно личные компьютеры и серверы).
Требование 5.2 Убедитесь, что все механизмы защиты от вирусов поддерживаются следующим образом:
Требование 5.3 Убедитесь, что механизмы антивирусной защиты активно работают и не могут быть отключены или изменены пользователями, если только не авторизовано управлением по регистру в течение ограниченного периода времени.
Требование 5.4 Убедитесь, что политики безопасности и операционные процедуры защиты систем от вредоносных программ документируются, используются и известны всем пострадавшим сторонам.

Требование 6. Разработка и обслуживание безопасных систем и приложений

Поддержка функций AKS

Как и другие службы Azure, AKS следует процессам Microsoft SDL (жизненный цикл разработки безопасности) для обеспечения безопасности на этапах процесса разработки. Различные компоненты сканируются, начиная с ранних этапов разработки и безопасности, рассматриваются как можно раньше.

Образы AKS следуют подходу об уровне обслуживания FedRAMP, который требует уязвимостей в образах для исправления в течение 30 дней. Чтобы применить это требование, все образы удаляются в конвейере DevSecOps.

Еженедельно AKS предоставляет новые образы для пулов узлов. Вы несете ответственность за их применение, чтобы обеспечить исправление и обновление Масштабируемые наборы виртуальных машин рабочих узлов. Дополнительные сведения см. в статье об обновлении образа узла Служба Azure Kubernetes (AKS).

Для плоскости управления AKS AKS устанавливает или обновляет исправления безопасности. Они обновляются каждые 24 часа.

Плоскость управления AKS и рабочие узлы защищены от Центра безопасности Интернета (CIS). В частности AKS CIS, Ubuntu CIS и Windows CIS.

AKS интегрирован с Реестр контейнеров Azure (ACR). Используйте ACR с функциями непрерывного сканирования в Microsoft Defender для облака для выявления уязвимых образов и приложений на различных уровнях риска. Сведения о сканировании изображений и управлении рисками см. в Microsoft Defender для контейнеров.

Ваши обязанности

Требование Обязанности
Требование 6.1 Создайте процесс выявления уязвимостей безопасности, используя надежные внешние источники для информации об уязвимостях безопасности и назначьте рейтинг рисков (например, "высокий", "средний" или "низкий") вновь обнаруженным уязвимостям безопасности.
Требование 6.2 Убедитесь, что все системные компоненты и программное обеспечение защищены от известных уязвимостей путем установки применимых исправлений безопасности, предоставляемых поставщиком. Установите критически важные исправления безопасности в течение одного месяца с момента выпуска.
Требование 6.3 Безопасно разрабатывать внутренние и внешние приложения программного обеспечения (включая веб-административный доступ к приложениям).
Требование 6.4 Следуйте процессам и процедурам управления изменениями для всех изменений системных компонентов.
Требование 6.5 Устранение распространенных уязвимостей программирования в процессах разработки программного обеспечения.
Требование 6.6 Для общедоступных веб-приложений устраняйте новые угрозы и уязвимости на постоянной основе и обеспечьте защиту этих приложений от известных атак.
Требование 6.7 Убедитесь, что политики безопасности и операционные процедуры для разработки и поддержания безопасных систем и приложений документируются, используются и известны всем пострадавшим сторонам.

Требование 5.1

Развертывание антивирусного программного обеспечения на всех системах, часто затронутых вредоносным программным обеспечением, в частности персональных компьютеров и серверов.

Ваши обязанности

Вы несете ответственность за защиту рабочей нагрузки, инфраструктуры и конвейеров развертывания, выбрав соответствующее программное обеспечение защиты от вредоносных программ.

Так как доступ к виртуальным машинам узлов AKS ограничен, защитите систему на уровнях, которые могут внедрять вредоносные программы на виртуальные машины узла. Включите обнаружение и предотвращение на узлах кластера, образах контейнеров и взаимодействии среды выполнения с сервером API Kubernetes. Помимо кластера, обеспечьте защиту этих компонентов, взаимодействующих с кластером и имеющих антивирусное программное обеспечение, установленное традиционным способом:

  • Инсталляционные сервера
  • Агенты сборки

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

Требование 5.1.1

Сделайте, что антивирусные программы способны обнаруживать, удалять и защищать от всех известных типов вредоносного программного обеспечения.

Ваши обязанности

Узнайте о наборе функций каждого предложения программного обеспечения и глубине сканирования, который он может сделать. Программное обеспечение должно блокировать распространенные угрозы и отслеживать новые угрозы. Убедитесь, что программное обеспечение регулярно обновляется, тестируется и заменяется, если он найден неподходящим. Рассмотрим программное обеспечение, разработанное авторитетными поставщиками.

  • Средства мониторинга, которые обнаруживают уязвимости кластера.

    В AKS нельзя запускать традиционные решения виртуальных машин на основе агента непосредственно на виртуальных машинах узлов. Необходимо развернуть антивредоносное программное обеспечение в DaemonSets, которое будет выполняться в модуле pod на каждом узле.

    Выберите программное обеспечение, которое специализируется на Kubernetes и контейнерах. Существует несколько сторонних вариантов программного обеспечения. Популярные варианты включают Prisma Cloud и Aquasec. Существуют также варианты с открытым кодом, такие как Фалько.

    При развертывании они выполняются как агенты в кластере, который сканирует все пулы пользовательских и системных узлов. Несмотря на то что AKS использует пулы системных узлов для двоичных файлов системы выполнения, базовые вычислительные ресурсы по-прежнему несут ответственность.

    Целью запуска агента является обнаружение необычных действий кластера. Например, приложение пытается вызвать сервер API? Некоторые решения создают журнал вызовов API между модулями pod, создают отчеты и создают оповещения. Проверьте эти журналы и выполните необходимые действия.

    Установите агенты безопасности сразу после загрузки кластера, чтобы свести к минимуму неуправляемые пробелы между кластером и развертыванием ресурсов AKS.

    Агенты безопасности выполняются с высокими привилегиями и сканируют все, что работает в кластере, а не только рабочую нагрузку. Они не должны стать источником кражи данных. Кроме того, атаки цепочки поставок распространены для контейнеров. Используйте стратегии глубинной защиты и убедитесь, что программное обеспечение и все зависимости являются доверенными.

    Также запустите антивирусное программное обеспечение на внешних ресурсах, участвующих в операциях кластера. К некоторым примерам относятся поля перехода, агенты сборки и образы контейнеров, взаимодействующие с кластером.

    Когда агент сканирует, он не должен блокировать или вмешиваться в критически важные операции кластера, такие как блокировка файлов. Неправильное настройка может привести к проблемам стабильности и может отрисовывать кластер вне поддержки.

    Важно!

    Эталонная реализация предоставляет развертывание заполнителя DaemonSet для запуска агента защиты от вредоносных программ. Агент будет работать на каждой виртуальной машине узла в кластере. Поместите в это развертывание выбранное программное обеспечение для защиты от вредоносных программ.

  • Поддержание безопасности контейнера. Запустите средства сканирования контейнеров в конвейере, чтобы обнаружить угрозы, которые могут возникнуть через образы контейнеров, такие как сканирование уязвимостей CI/CD в Microsoft Defender для контейнеров. Сторонние варианты включают Trivy и Clair. Когда вы создаете изображения, всегда стремитесь к дистрибутивным изображениям. Эти образы содержат только основные двоичные файлы в базовом образе Linux и сокращают область поверхности для атак. Используйте решение непрерывного сканирования, например оценку уязвимостей в Microsoft Defender для контейнеров для непрерывного сканирования образов, уже неактивных в репозиториях.

Требование 5.1.2

Для систем, не предназначенных или затронутых вредоносным программным обеспечением, выполните периодические оценки для выявления и оценки изменяющихся угроз вредоносных программ, чтобы убедиться, что они продолжают не требовать антивирусного программного обеспечения.

Ваши обязанности

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

Например, хранилище BLOB-объектов должно иметь проверку репутации вредоносных программ, чтобы обнаружить подозрительные отправки. Новая функция Microsoft Defender для служба хранилища включает проверку репутации вредоносных программ. Кроме того, рассмотрите, требуется ли антивирусное решение для такой службы.

Требование 5.2

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

  • Хранятся в текущий момент,
  • Выполнение периодических проверок
  • Создайте журналы аудита, которые сохраняются для каждого требования PCI DSS 10.7.

Ваши обязанности

  • Убедитесь, что кластер защищен от новых атак с помощью последней версии антивирусного программного обеспечения. Существует два типа обновлений, которые следует учитывать:
    • Антивирусное программное обеспечение должно поддерживать последние обновления компонентов. Одним из способов является планирование обновлений в рамках обновлений платформы.
    • Обновления аналитики безопасности должны применяться, как только они доступны для обнаружения и выявления последних угроз. Выберите автоматические обновления.
  • Убедитесь, что проверки уязвимостей выполняются по расписанию.
  • Сохраняйте журналы, созданные в результате сканирования, указывающие на работоспособность и неработоспособные компоненты. Рекомендуемый срок хранения указан в требовании 10.7, который составляет год.
  • Создайте процесс, который выполняется и устраняет обнаруженные проблемы.

Сведения о применении обновлений антивирусной программы Microsoft Defender см. в статье "Управление обновлениями антивирусной программы Microsoft Defender" и применение базовых показателей.

Требование 5.3

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

Ваши обязанности

Вы несете ответственность за настройку мониторинга и оповещения агента безопасности. Создавайте критически важные оповещения не только для рабочей нагрузки, но и основных системных процессов. Агент должен выполняться всегда. Отвечайте на оповещения, вызванные антивредоносным программным обеспечением.

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

Требование 5.4

Убедитесь, что политики безопасности и операционные процедуры защиты систем от вредоносных программ документируются, используются и передаются всем пострадавшим сторонам.

Ваши обязанности

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

Есть политики хранения для хранения журналов. Для обеспечения соответствия требованиям может потребоваться долгосрочное хранилище.

Документация по стандартным операционным процедурам для оценки и устранения проблем. Люди, которые работают в регулируемых средах, должны быть образованными, информированными и стимулируемыми для поддержки гарантий безопасности. Это важно для людей, которые являются частью процесса утверждения с точки зрения политики.

Требование 6.1

Создайте процесс выявления уязвимостей безопасности, используя надежные внешние источники для сведений об уязвимостях безопасности и назначьте рейтинг рисков (например, высокий, средний или низкий) вновь обнаруженным уязвимостям безопасности.

Ваши обязанности

Есть процессы, которые проверка обнаруженных уязвимостей и правильно ранжируются. Microsoft Defender для облака показаны рекомендации и оповещения, тип ресурса на основе и его серьезность, среда. Большинство оповещений имеют тактику MITRE ATT&CK®, которая поможет вам понять намерение цепочки убийств. Убедитесь, что у вас есть план исправления для изучения и устранения проблемы.

В AKS можно использовать Реестр контейнеров Azure в сочетании с непрерывным сканированием для выявления уязвимых изображений и приложений на различных уровнях риска. Результаты можно просмотреть в Microsoft Defender для облака.

Дополнительные сведения см. в реестре контейнеров.

Требование 6.2

Убедитесь, что все системные компоненты и программное обеспечение защищены от известных уязвимостей путем установки применимых исправлений безопасности, предоставляемых поставщиком. Установите критически важные исправления безопасности в течение одного месяца с момента выпуска.

Ваши обязанности

  • Чтобы предотвратить атаки цепочки поставок от сторонних поставщиков, убедитесь, что все зависимости являются доверенными. Важно, чтобы вы выбрали поставщика, который является надежным и доверенным.

  • Еженедельно AKS предоставляет новые образы для пулов узлов. Эти изображения не применяются автоматически. Примените их сразу после их доступности. Обновление образа узла можно обновлять вручную или автоматически с помощью обновления образа узла. Дополнительные сведения см. в разделе об обновлении образа узла Служба Azure Kubernetes (AKS)

    Для плоскости управления AKS AKS устанавливает или обновляет исправления безопасности.

  • Каждые 24 часа узлы AKS автоматически загружают и устанавливают исправления операционной системы и системы безопасности по отдельности. Брандмауэр не должен блокировать этот трафик, если вы хотите получать эти обновления.

    Рассмотрите возможность включения возможностей создания отчетов в агенте безопасности для получения сведений о примененных обновлениях. Для некоторых обновлений системы безопасности требуется перезапуск. Обязательно просмотрите оповещения и выполните действия, чтобы обеспечить минимальное или нулевое время простоя приложения с помощью этих перезапусков. Параметр с открытым исходным кодом для выполнения перезапусков в управляемом режиме — Kured (управляющая программа перезагрузки Kubernetes).

  • Расширьте процесс исправления до ресурсов за пределами подготовленного кластера, таких как ящики перемычки и агенты сборки.

  • Оставайтесь в курсе поддерживаемых версий AKS. Если проект использует версию, которая достигла конца срока жизни, обновите ее до текущей версии. Дополнительные сведения см. в статье "Поддерживаемые версии AKS".

Требование 6.3

Безопасно разрабатывать внутренние и внешние приложения программного обеспечения (включая веб-административный доступ к приложениям) следующим образом:

  • в соответствии со стандартом PCI DSS (например, безопасная проверка подлинности и ведение журнала);
  • Основываясь на отраслевых стандартах и /или рекомендациях.
  • Включение информационной безопасности на протяжении жизненного цикла разработки программного обеспечения, которое применяется ко всем программному обеспечению, разработанному внутри страны, в том числе к пользовательскому программному обеспечению, разработанному сторонним поставщиком.

Ваши обязанности

Интеграция и приоритеты вариантов безопасности в рамках жизненного цикла рабочей нагрузки и операций.

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

Microsoft SDL (жизненный цикл разработки безопасности) предоставляет рекомендации, инструменты и процессы для обеспечения безопасности на этапах процесса разработки. Для всех служб Azure, включая AKS, применяются методики Microsoft SDL. Мы также следуйте платформе OSA для операционных облачных служб. Убедитесь, что у вас есть аналогичный процесс. Эти методики публикуются для защиты приложений.

Требование 6.3.1

Удалите учетные записи разработки, тестирования и/или пользовательские учетные записи приложений, идентификаторы пользователей и пароли до того, как приложения становятся активными или освобождаются клиентами.

Ваши обязанности

В рамках создания кластера по умолчанию создаются несколько локальных пользователей Kubernetes. Эти пользователи не могут быть проверены, так как они не представляют уникальное удостоверение. Некоторые из них имеют высокие привилегии. Отключите этих пользователей с помощью функции "Отключить локальные учетные записи" AKS.

Дополнительные сведения см. в руководстве по официальному стандарту PCI-DSS 3.2.1.

Требование 6.3.2

Просмотрите пользовательский код до выпуска в рабочую среду или клиенты, чтобы определить любую потенциальную уязвимость кодирования (с помощью ручных или автоматизированных процессов), чтобы включить следующие компоненты:

  • изменения кода проверяются пользователями, которые не являются авторами исходного кода, а также лицами, хорошо осведомленными о методах проверки кода и безопасных методах кодирования;
  • проверка кода гарантирует, что код разработан в соответствии с рекомендациями по безопасным методам кодирования;
  • Соответствующие исправления реализуются до выпуска.
  • Результаты проверки кода проверяются и утверждаются руководством до выпуска.
Ваши обязанности

Все программное обеспечение, установленное в кластере, создается из реестра контейнеров. Как и в коде приложения, процессы и люди проверяют образы Azure и сторонних производителей (DockerFile и OCI). См. также:

  • Начните сканирование образов контейнеров с начальных этапов при создании кластера. Сделайте процесс сканирования частью конвейеров непрерывной интеграции и непрерывного развертывания.

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

  • Уменьшите размер изображения. Как правило, изображения содержат больше двоичных файлов, чем требуется. Уменьшение размера изображения не только имеет преимущества производительности, но и ограничивает область атаки. Например, использование дистрибутива позволяет свести к минимуму базовые образы Linux.

  • Используйте статические средства анализа, которые проверяют целостность Файла Dockerfile и манифестов. Сторонние варианты включают Dockle и Trivy.

  • Используйте только подписанные изображения.

  • Изучите (и примите) базовый образ, предоставляемый Azure, и как он соответствует требованиям CIS Benchmarks. Дополнительные сведения см. в разделе "Центр по интернет-безопасности (CIS) Benchmarks.

Реестр контейнеров Azure с непрерывным сканированием в Microsoft Defender для облака поможет выявить уязвимые изображения и различные риски, которые могут представлять собой рабочую нагрузку. Дополнительные сведения о проверке изображений и управлении рисками см. в разделе "Безопасность контейнеров".

Требование 6.4

Следуйте процессам и процедурам управления изменениями для всех изменений системных компонентов.

Ваши обязанности

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

Требование 6.4.1, 6.4.2

  • Отделяйте среды разработки и тестирования от рабочих сред и применяйте разделение с помощью элементов управления доступом.
  • Разделение обязанностей между средами разработки и тестирования и рабочей среды.
Ваши обязанности

Обслуживание отдельных рабочих и предварительных сред и ролей, работающих в этих средах.

  • Не используйте рабочий кластер для целей разработки и тестирования. Например, не устанавливайте мост в Kubernetes в рабочих кластерах. Используйте выделенные кластеры для непроизводственных рабочих нагрузок.

  • Убедитесь, что рабочие среды не разрешают сетевой доступ к предварительным средам и наоборот.

  • Не используйте системные удостоверения в предварительной и рабочей средах.

    Используйте группы Microsoft Entra для таких групп, как администраторы кластера или субъекты конвейера. Не используйте обобщенные или общие группы в качестве элементов управления доступом. Не используйте эти группы между предварительной и рабочей кластерами. Одним из способов является использование имени кластера (или другого непрозрачного идентификатора) в имени группы, чтобы быть явным для членства.

    Используйте роли управления доступом на основе ролей Azure (RBAC) соответствующим образом между средами. Как правило, больше ролей и прав назначаются перед рабочей средой.

    Удостоверения в предварительной среде (предоставленные конвейерам или командам разработчиков программного обеспечения) не должны предоставляться в рабочей среде. И наоборот, любые удостоверения только для рабочей среды (например, конвейеры) не должны предоставляться в предварительно созданных кластерах.

    Не используйте одно и то же управляемое пользователем удостоверение для любого ресурса в предварительной среде и в рабочей среде. Эта рекомендация применяется ко всем ресурсам, которые поддерживают управляемое пользователем удостоверение, а не только ресурс, развернутый в кластере. Как правило, ресурсы Azure, требующие удостоверений, должны иметь собственное удостоверение, а не совместно использовать их с другими ресурсами.

  • Используйте JIT-доступ для доступа с высоким уровнем привилегий, в том числе в предварительно созданных кластерах, если это возможно. Используйте политики условного доступа как в предварительной среде, так и в рабочих кластерах.

Требование 6.4.3

Рабочие данные (динамические PAN) не используются для тестирования или разработки.

Ваши обязанности

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

Требование 6.4.4

Удаление тестовых данных и учетных записей из системных компонентов до того, как система станет активной / переходит в рабочую среду.

Ваши обязанности

Удалите данные конфигурации по умолчанию, примеры данных и известные тестовые данные в системе перед развертыванием в рабочей среде. Не используйте данные карта заполнителя для тестирования.

Требование 6.4.5

Процедуры управления изменениями для реализации исправлений безопасности и изменений программного обеспечения должны содержать следующие компоненты:

  • 6.4.5.1 Документация по влиянию.
  • 6.4.5.2 Документировано утверждение изменений авторизованными сторонами.
  • Тестирование функций 6.4.5.3, чтобы убедиться, что изменение не негативно влияет на безопасность системы.
  • Процедуры резервного копирования 6.4.5.4.
Ваши обязанности

Эти рекомендации соответствуют приведенным выше требованиям:

  • Задокументируйте изменения инфраструктуры, ожидаемые в результате исправлений безопасности и изменений программного обеспечения. Этот процесс упрощается с помощью подхода "инфраструктура как код" (IaC). Например, с помощью шаблона Azure Resource Manager (шаблона ARM) для развертывания можно просмотреть изменения с помощью операции what-if. Дополнительные сведения см. в статье о развертывании шаблона ARM с изменением инфраструктуры.

  • Реализуйте шлюзы в конвейерах развертывания, которые проверяют утверждение изменений для регулярных развертываний. Задокументируйте обоснование для чрезвычайных развертываний, в которых могут быть обходить шлюзы.

    Определите уровни и глубину изменений. Убедитесь, что команда согласна с определением значительных изменений, а не незначительными изменениями. Если это практически, автоматизируйте обнаружение некоторых из этих изменений. Рецензенты рабочей нагрузки, инфраструктуры и конвейера должны иметь четкое представление о уровнях и проверить их соответствие этим критериям.

  • Проверьте доступность безопасности. Убедитесь, что искусственные транзакции тестируют проблемы безопасности (разрешают и запрещают). Кроме того, убедитесь, что эти искусственные тесты выполняются в предварительно рабочих средах.

  • Создайте обратный процесс, если исправление безопасности имеет непредвиденные результаты. Общая стратегия заключается в развертывании предыдущего состояния с помощью сине-зеленых развертываний. Для рабочих нагрузок, включая базы данных, есть стратегия, которая работает для конкретной топологии и область единиц развертывания.

Требование 6.5

Устранение распространенных уязвимостей в коде в процессах разработки программного обеспечения следующим образом:

  • Проводите обучение разработчиков современным методам кодирования как минимум раз в год, включая и то, как избежать распространенных уязвимостей кода.
  • Разрабатывайте приложения на основе руководств по безопасному кодированию.

Ваши обязанности

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

Требование 6.6

Для общедоступных веб-приложений устраняйте новые угрозы и уязвимости на постоянной основе. Убедитесь, что эти приложения защищены от известных атак с помощью любого из следующих методов:

  • Просмотрите общедоступные веб-приложения с помощью средств или методов оценки уязвимостей приложений вручную или автоматизированных средств оценки уязвимостей приложений. Выполните оценку уязвимостей по крайней мере ежегодно и после любых изменений.

    Примечание.

    Эта оценка не совпадает с проверкой уязвимостей, выполняемой в рамках требования 11.2.

  • Установите автоматизированное решение, которое обнаруживает и предотвращает атаки на веб-основе. Например, брандмауэр веб-приложения. Разверните перед общедоступными веб-приложениями и активно оцените весь трафик.

Ваши обязанности

Наличие проверка для обнаружения трафика из общедоступного Интернета с помощью брандмауэра веб-приложения (WAF). В этой архитектуре Шлюз приложений Azure проверка все входящие трафик с помощью встроенного WAF. WAF основан на наборе основных правил (CRS) из проекта Open Web Application Security (OWASP). Если технические элементы управления не установлены, есть компенсирующие элементы управления. Одним из способов является проверка кода вручную.

Убедитесь, что вы используете последние версии набора правил и применяете правила, относящиеся к рабочей нагрузке. Правила должны выполняться в режиме предотвращения . Это требование можно применить, добавив экземпляр Политика Azure, который проверка, если WAF включен и работает в этом режиме.

Сохраняйте журналы, созданные Шлюз приложений WAF, чтобы получить сведения об обнаруженных угрозах. При необходимости настройте правила.

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

Требование 6.7

Убедитесь, что политики безопасности и операционные процедуры для разработки и поддержания безопасных систем и приложений документируются, используются и известны всем пострадавшим сторонам.

Ваши обязанности

Важно обеспечить тщательную документацию по процессам и политикам. Команды должны быть обучены, чтобы определить приоритеты вариантов безопасности в рамках жизненного цикла рабочей нагрузки и операций.

Microsoft SDL предоставляет рекомендации, инструменты и процессы для обеспечения безопасности на этапах процесса разработки. Методы Microsoft SDL следуют строго внутренне в том, как мы создадим программное обеспечение в Корпорации Майкрософт. Мы также следуйте платформе OSA для операционных облачных служб. Эти методики публикуются для защиты приложений.

Оставить подробную документацию по тестированию на проникновение, описывающую область тестов, процессов триажа и стратегии исправления обнаруженных проблем. Если происходит инцидент, включите оценку требования 6 в рамках анализа первопричин. Если обнаружены пробелы (например, обнаружено нарушение правила OWASP), закройте эти пробелы.

В документации содержатся четкие рекомендации по ожидаемому состоянию защиты WAF.

Люди, которые работают в регулируемых средах, должны быть образованными, информированными и стимулируемыми для поддержки гарантий безопасности. Важно для людей, которые являются частью процесса утверждения с точки зрения политики.

Следующие шаги

Ограничение доступа к карта хозяйным данным по бизнесу. Определение и проверка подлинности доступа к системным компонентам. Ограничение физического доступа к данным карта заполнителя.