8 стратегий повышения безопасности подписи кода

8 стратегий повышения безопасности подписи кода

8 стратегий повышения безопасности подписи кода. PlatoBlockchain Data Intelligence. Вертикальный поиск. Ай.

КОММЕНТАРИЙ

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

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

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

После SolarWinds взлом В 2020 году Форум центров сертификации/браузеров (CA/B) выпустил новый набор базовые требования для поддержки сертификатов подписи кода, которые требуют использования аппаратных модулей безопасности (HSM), устройств, которые поддерживают и защищают криптографические ключи, а также других мер по защите закрытых ключей. 

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

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

Путь к интегрированному подписанию кода 

В связи с недавними изменениями в CA / B Forum, пришло время организациям приступить к модернизации системы подписания кода с помощью централизованного управления для поддержки групп разработчиков. Многие компании остаются на «специальной» стадии, когда ключи хранятся локально, а разработчики используют различные процессы и инструменты подписи кода. Другие имеют централизованный контроль, чтобы обеспечить группам безопасности прозрачность и управление, используя HSM для защиты ключей, но использование отдельных инструментов подписи кода по-прежнему влияет на скорость разработки программного обеспечения. 

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

Несколько лучших практик могут помочь проложить путь на этом пути: 

  • Защитите свои ключи: Храните ключи подписи кода в безопасном месте, например в HSM, соответствующем криптографическим требованиям CA/B Forum (FIPS 140-2, уровень 2 или Common Criteria EAL 4+). HSM устойчивы к несанкционированному вмешательству и предотвращают экспорт личных ключей.

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

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

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

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

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

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

  • Упростите подписание кода: Интеграция и автоматизация подписи кода с помощью инструментов CI/CD упрощает процесс DevOps без ущерба для безопасности, одновременно повышая скорость и гибкость.

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

Отметка времени:

Больше от Темное чтение