NSA CI/CD Правила безопасности: защита цепочки поставок программного обеспечения

С 2019 по 2022 год среднегодовой прирост атак на цепочки поставок программного обеспечения превысил 700 %, и это растущая тенденция, экономический эффект которой, как ожидается, превысит 80 миллиардов долларов в 2026 году. Признавая серьезность этой проблемы, Агентство национальной безопасности (АНБ) и Агентство по кибербезопасности и безопасности инфраструктуры (CISA) освобожден важные руководящие принципы обезопасить CI/CD среды, устраняя растущую угрозу со стороны так называемых злонамеренных киберпреступников (MCA), эксплуатирующих уязвимости.

Эти руководящие принципы конкретно направлены на предотвращение раскрытия секретов внутри CI/CD pipelines и предложить конкретные идеи.

 

Каковы наиболее критические CI/CD угрозы безопасности?

Как указано в рекомендациях АНБ, обеспечение безопасности CI/CD окружающая среда требует распознавания и защиты от различных типов угроз безопасности, которые могут повлиять CI/CD операции. Вот некоторые общие риски, которые встречаются в CI/CD pipelines, наряду с OWASP Top 10 CI/CD Безопасность:

  • Недостаточные механизмы управления потоком: Этот риск связан с отсутствием надлежащего контроля для управления потоком данных и задачами в CI/CD pipeline. Без этих средств контроля в систему могут быть внесены несанкционированные изменения. pipeline, что приводит к потенциальным уязвимостям безопасности.
  • Неадекватное управление идентификацией и доступом: Этот риск связан с ненадлежащим управлением тем, кто имеет доступ к CI/CD pipeline и что они могут сделать. Без надлежащего управления идентификацией и доступом неавторизованные лица могут получить доступ к pipeline и внести вредоносные изменения.
  • Злоупотребление цепочкой зависимостей: Этот риск относится к возможности использования злоумышленниками уязвимостей в зависимостях, используемых вашим программным обеспечением. Если эти зависимости не управляются и не защищаются должным образом, они могут стать отправной точкой для атаки.
  • Отравленные Pipeline Типы: Этот риск связан с возможностью злоумышленников внедрить вредоносный код в CI/CD pipeline. Это может привести к выполнению вредоносного кода в производственной среде.
  • Недостаточный PBAC (Pipeline-На основе контроля доступа): Этот риск относится к отсутствию надлежащего контроля доступа на основе pipeline. Без этих средств контроля неавторизованные лица могли бы получить доступ к конфиденциальным частям pipeline.
  • Недостаточная гигиена учетных данных: Этот риск связан с ненадлежащим управлением и защитой учетных данных, используемых в CI/CD pipeline. Если эти учетные данные будут скомпрометированы, это может предоставить злоумышленнику доступ к pipeline.
  • Небезопасная конфигурация системы: Этот риск относится к потенциальным уязвимостям безопасности из-за
    неправильно настроенные системы в CI/CD pipeline. Злоумышленники могут воспользоваться этими уязвимостями.
  • Неконтролируемое использование сторонних сервисов: Этот риск предполагает использование сторонних сервисов без надлежащего надзора и контроля. Эти службы могут создать уязвимости в системе безопасности, если ими неправильно управлять и защищать.
  • Неправильная проверка целостности артефакта: Этот риск связан с отсутствием надлежащей проверки артефактов, созданных CI/CD pipeline. Без надлежащей проверки вредоносные или скомпрометированные артефакты могут быть внедрены в производственную среду.
  • Недостаточная регистрация и видимость: Этот риск связан с недостаточным журналированием и видимостью
    деятельность в CI/CD pipeline. Может быть сложно обнаружить инциденты безопасности и отреагировать на них без надлежащего ведения журналов и обеспечения видимости.

 

Сценарии наихудших угроз и способы их устранения

Злоумышленники получают учетные данные разработчика для доступа к репозиторию Git:

  1. Сведите к минимуму использование долгосрочных учетных данных.
  2. Используйте правила двух человек (2PR) для всех обновлений кода.
  3. Защитите учетные записи пользователей и внедрите политику минимальных привилегий.
  4. Реализуйте сегментацию сети и фильтрацию трафика.
  • SSCS инструменты, такие как Ксигени автоматически выявлять неправильные настройки в этих областях и обеспечивать соблюдение безопасных корпоративных политик..

Компрометация цепочки поставок библиотеки приложений, инструмента или образа контейнера в CI/CD pipeline:

  1. Ограничьте ненадежные библиотеки и инструменты и проанализируйте commitТед инструменты.
  2. Внедрить инструменты EDR и аудит.
  3. Сохранить CI/CD инструменты, программное обеспечение и операционные системы обновлены.
  • Ксигени платформа автоматически обновляет свои возможности сканирования при каждом сканировании для обнаружения новейших вредоносных компонентов, которые могут повлиять на выпуск вашего программного обеспечения.

Компромисс CI/CD среда, которая изменяет конфигурации или внедряет вредоносные зависимости:

  1. Анализировать commitTED-код и интегрируйте сканирование безопасности в CI/CD.
  2. Осуществлять SBOM и SCA и внедрить инструменты EDR.
  3. Добавить подписи к CI/CD config и проверьте его.
  • Ксигени возможности в анализ полного набора активов, задействованных в разработке программного обеспечения, сборка и доставка позволяют обнаружить любую угрозу во время CI/CD обрабатывать и генерировать SBOM в качестве доказательства для вашего аудита и клиентов.

На следующем рисунке показаны различные векторы атак на примере CI/CD pipeline. Эти векторы атак очень похожи на те, которые используются в других CI/CD атаки.

 Изображение: Пример различных векторов атак в AWS CI/CD pipeline
 

 

Включение подлинного подхода с нулевым доверием:

Стратегии активного усиления АНБ

 

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

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

Используя эти уязвимости, злоумышленники могут обойти CI/CD pipeline и поставить под угрозу цепочку поставок программного обеспечения. Чтобы снизить эти риски, АНБ и CISРекомендовать внедрение и настройку надежных криптографических алгоритмов, таких как те, которые указаны Национальным институтом Standardи технологий (NIST) при настройке облачных приложений и сервисов.

Сведите к минимуму долгосрочное использование учетных данных

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

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

Детекторы таких инструментов, как Xygeni, поддерживают обнаружение любых типов учетных данных и секретов в десятках форматов по всей цепочке поставок программного обеспечения: код, pipelines, IaC конфигурации и т.д.

Добавить подписи к CI/CD конфигурации и всегда проверяйте их

На протяжении CI/CD В ходе процесса, независимо от стадии разработки, крайне важно обеспечить единообразие и правильность подписи кода, а также проверку подписи.

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

Снижение рисков, связанных с паролями, с помощью многофакторной аутентификации (MFA)

Его также можно дополнить контролем доступа на основе ролей (RBAC). В настоящее время MFA широко используется во всех видах услуг. Это помогает обеспечить безопасность и применяется как для внутренних, так и для внешних пользователей. 

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

Корпоративные политики должны учитывать это сегодняшние обязательные конфигурации. Автоматизированные возможности соответствия и аудита SSCS инструменты обеспечивают их реализацию во всей инфраструктуре DevOps.

Реализуйте политику наименьших привилегий для CI/CD О компании

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

Реализация разделения обязанностей имеет решающее значение, поскольку разработчикам, ответственным за проверку исходного кода, не требуются права на обновление среды сборки. Аналогично, инженерам, контролирующим сборки, не требуется доступ для чтения и записи к исходному коду. Более подробное руководство по реализации мер безопасности см. НИСТ СП 800-53.

Используйте правило двух человек (2PR) для обновлений кода.

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

SSCS Такие инструменты, как Xygeni, обычно включают специальную проверку, определяющую, требуется ли проекту проверка кода перед pull requests (запросы на слияние) объединяются.

Эта проверка соответствует текущему стандарту безопасности Open SSF. standard.

Защитите учетные записи и секреты пользователей

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

Кроме того, безопасная обработка секретов, токенов и учетных данных в пределах CI/CD pipeline имеет первостепенное значение.

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

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

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

 

Другие важные меры в процессе разработки

к выявлять уязвимости, крайне важно интегрировать сканирование безопасности в CI/CD pipeline легко. Интеграцию следует считать простой на любом этапе: на рабочей станции (до загрузки), в commit, или в ночной сборке с использованием перил.

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

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

Узнайте больше о платформе Xygeni, загрузив техническое описание платформы Xygeni.

sca-инструменты-программное обеспечение-композиция-анализ-инструменты
Расставьте приоритеты, устраните и защитите риски, связанные с программным обеспечением
7-дневная бесплатная пробная версия
Кредитная карта не требуется.

Защитите свою разработку и доставку программного обеспечения

с пакетом продуктов Xygeni