• Рабочие часы: 10:00 - 19.00
  • info@globaltrust.ru

Политика использования открытого программного обеспечения

image_pdfimage_print

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

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

Открытое ПО – это программное обеспечение, у которого исходный код доступен всем. На это ПО распространяется специальная свободная лицензия, позволяющая посмотреть, как сделана программа, найти уязвимости и написать что-то совместимое или похожее, или взять какой-нибудь алгоритм и сделать что-то на его основе, или найти недочёт и предложить улучшение.

Риски использования открытого ПО

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

  • Повышенная вероятность заражения вредоносным ПО. Злоумышленники могут внедрять вредоносные изменения в открытый код. Это может привести к краже конфиденциальной информации, финансовым или репутационным потерям.
  • Задержки с обновлениями. Открытое ПО требует регулярного обновления, так как его уязвимости быстро становятся известными злоумышленникам. Однако обновления ПО могут привести к нестабильности работы приложений или проблемам с совместимостью.
  • Ошибки конфигурации. Открытые системы, такие как базы данных, веб-серверы и контейнерные платформы, требуют грамотной настройки. В случае, если администраторы забывают отключить дефолтные учётные записи, устанавливают слабые пароли или оставляют критически важные сервисы доступными из интернета, это создаёт благоприятные условия для атак.
  • Зависимость от сторонних разработчиков. К разработке отрытого ПО нередко привлекают фрилансеров или небольшие аутсорс-команды, у которых уровень компетенции в вопросах безопасности может существенно различаться. Это увеличивает вероятность использования уязвимого или даже намеренно вредоносного кода.
  • Вероятность изменения условий лицензии. Это влечёт за собой риск нарушения авторских прав и ограничения использования собственной программы на основе открытого кода.

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

Нормативные ссылки

Настоящая Политика разработана на основе следующих нормативных документов Общества:

  • Политика информационной безопасности
  • Политика установки обновлений ПО
  • Политика контроля защищенности корпоративной сети
  • Политика обеспечения безопасности при разработке ПО
  • Политика управления информационными рисками
  • Политика инвентаризации информационных активов

Основные положения

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

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

Оценка рисков использования открытого ПО осуществляется в соответствии с Политикой управления информационными рисками.

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

  • Изучение ПО при выборе. Нужно обратить внимание на репутацию продукта, его историю, узнать о возможных происшествиях, связанных с безопасностью. Также стоит оценить частоту обновлений и активность сообщества. Особое внимание нужно уделить лицензии, под которой распространяется продукт.
  • Проверка надёжности библиотек, от которых зависит продукт. Для поиска вредоносных изменений в программных продуктах могут применяться различные анализаторы программных кодов, статические (SAST) и динамические (DAST).
  • Сканирование приложений на известные уязвимости и оперативное применение доступных исправлений безопасности (патчей, программных коррекций).
  • Оценка зрелости проекта и вероятности его развития/поддержки перед интеграцией в бизнес-процессы и в свой код. Стоит обратить внимание на число разработчиков, сопровождающих проект, и на частоту релизов.
  • Формирование списка приемлемых для организации стандартных лицензий (совместно с юридическим отделом), а также их совместимости с предназначением ПО в организации. ПО с несовместимыми лицензиями или вообще без лицензии нужно выводить из использования.
  • Проверка исходного кода пакетов перед использованием. Разработчики должны проверять исходный код пакетов перед использованием, уделяя внимания таким странным характеристикам, как наличие зашифрованных фрагментов в коде, перехват несвойственных функций и так далее.
  • Проверка цифровых подписей пакетов (при наличии).
  • Использование кода только от официальных поставщиков. Выбирая код от такого провайдера, можно получить техническую поддержку, что снижает риски безопасности.
  • Выстраивать процесс взаимодействия между специалистами СИБ и разработчиками ПО.

Принципы защитного кодирования

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

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

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

  • Приоритезация безопасности. Концепция заключается в том, чтобы приоритезировать безопасность на протяжении всего жизненного цикла разработки программного обеспечения. Это помогает обнаруживать и устранять недостатки на ранних стадиях, минимизируя вероятность игнорирования вопросов безопасности из-за сжатых сроков выполнения задач.
  • Проверка входных данных и кодирование выходных данных. Важно проверять все пользовательские вводы и кодировать выходные данные для предотвращения серьёзных уязвимостей.
  • Обработка ошибок и журналирование. Правильная обработка ошибок и ведение журналов является важным аспектом безопасного кодирования. Необходимо избегать раскрытия чувствительной информации в сообщениях об ошибках, которые могут быть видны пользователям.
  • Внедрение элементов управления идентификацией и аутентификацией. Чтобы повысить безопасность и свести к минимуму риск взлома, рекомендуется проверять личность пользователя с самого начала и интегрировать надёжные элементы управления аутентификацией в код приложения.
  • Контроль доступа. Включение хорошо продуманной стратегии авторизации на начальных этапах разработки приложения может значительно повысить общую безопасность.
  • Ведение журнала и обнаружение вторжений. Рекомендуется включить систему мониторинга, которая может обнаруживать и идентифицировать необычные события.
  • Регулярная оценка и пересмотр состояния безопасности. Важно регулярно оценивать и пересматривать состояние безопасности программного обеспечения на протяжении всего жизненного цикла разработки, обеспечивая непрерывное улучшение и корректировку по мере необходимости.

Условия лицензирования открытого ПО

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

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

  • Доступ к исходным текстам. ПО должно предоставляться с исходными текстами, либо должен быть описан простой механизм получения доступа к ним, например, через интернет.
  • Возможность переработки. Должна быть разрешена модификация ПО, его исходных текстов, их использование в других программах и распространение производных программ на таких же условиях.
  • Отсутствие зависимости от иного ПО. Права, связанные с ПО, не должны зависеть от того, входит ли оно в состав какого-либо иного ПО или распространяется совместно с ним.
  • Отсутствие ограничений на иное ПО. Лицензия не должна накладывать ограничения на иное ПО, распространяемое вместе с лицензируемым ПО.
  • Технологическая нейтральность. Возможность реализации прав пользователя не должна зависеть от какой-либо технологии или стиля интерфейса.

Требования к качеству и обеспечению безопасности открытого ПО

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

  • Регулярное тестирование и анализ безопасности. Частота проведения таких мероприятий может варьироваться в зависимости от размера проекта, его популярности и уровня риска.
  • Защита среды и сетевого сегмента, где используется открытое ПО. Это снизит вероятность взлома или использования уязвимостей в открытом ПО при атаке.
  • Применение принципа минимальных привилегий. Принцип ограничения доступа и разграничения прав пользователей помогает предотвратить распространение уязвимостей и потенциальных атак внутри системы.
  • Обучение разработчиков практикам безопасности. Это помогает им понять, как писать безопасный код, выявлять уязвимости и принимать меры безопасности на протяжении всего жизненного цикла разработки программного обеспечения.
  • Учёт регуляторных и лицензионных рисков. Каждое приложение и пакет, несмотря на открытый исходный код, имеет свою лицензию на использование. Риски реализуются, если лицензия оказывается несовместима с использованием приложения по предназначению.
  • Регулярное обновление. Компоненты с открытым исходным кодом, которые не обновляются регулярно, могут сделать программное обеспечение уязвимым к известным уязвимостям.
  • Мониторинг зависимостей. Необходимо регулярно отслеживать и проверять дерево зависимостей ПО, чтобы выявлять и устранять слабые звенья.
  • Использование специальных инструментов для управления зависимостями. Такие инструменты автоматически отслеживают обновления библиотек и зависимостей, проверяя их на наличие известных уязвимостей.
  • Использование специальных инструментов анализа состава ПО (SCA), которые помогают отслеживать компоненты открытого ПО в составе приложения, что существенно с точки зрения безопасности их применения.
  • Использование сканеров безопасности, которые сканируют ПО на наличие уязвимостей, вредоносного кода и устаревших компонентов.
  • Создание чёткого плана действий на случай возникновения проблем с безопасностью.

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

Регулярное обновление открытого ПО, тестирование и установка программных коррекций (патчей) и исправлений безопасности осуществляется в соответствии с Политикой установки обновлений ПО.


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

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *