Внедрение без опасности

Установка нового ПО может выявить недостатки ИТ-системы
Максим Стулов / Ведомости

До 90% всех киберинцидентов связано с дефектами исходного кода, около 21% утечек данных происходит из-за уязвимости программного обеспечения (ПО), следует из исследования компании Swordfish Security. Системный подход к проектированию ИТ-систем, тестирование, выбор опытных вендоров и проверенных программных продуктов помогут избежать критических сбоев при внедрении и эксплуатации нового ПО.

Скажи мне, чей твой код…

Современные приложения и ИТ-системы насчитывают сотни тысяч строк кода. В процессе разработки часто используются уже готовые компоненты. По данным исследования Open Source Security and Risk Analysis (OSSRA), проводимого компанией Synopsis, до 96% приложений содержит open-source библиотеки от сторонних разработчиков. Часто эти компоненты не получают актуальных обновлений и содержат уязвимости, которые могут быть использованы для атак.

«Уход иностранных вендоров в 2022 г. вынудил многие компании искать временные решения, которые могут иметь не известно откуда взятый код или иметь открытый исходный код, – указывает управляющий консалтинговой компанией RTM Group Евгений Царев. – Результаты использования подобных времянок могут быть плачевные».

По словам руководителя департамента консалтинга центра информационной безопасности компании «Инфосистемы Джет» Николая Антипова, ПО от малоизвестных производителей или на базе открытого исходного кода может содержать вредоносные закладки.

При выборе нового продукта следует обращать внимание на зрелость информационной безопасности самого вендора, полагает директор экспертного центра безопасности Positive Technologies Алексей Новиков. По его словам, стоит обратить внимание, как часто вендор публикует отчеты о наличии и исправлении уязвимостей в программных или аппаратных продуктах, выстроен ли процесс безопасной разработки, объявляла ли компания Bug Bounty – премию за найденные уязвимости в своих продуктах и инфраструктуре.

«Важным фактором является опыт вендора и интегратора. Реализация десятков и сотен проектов различной конфигурации и сложности формирует сильную экспертизу, позволяет отработать разнообразные сценарии «поведения» систем при взаимодействии со встраиваемым ПО, – говорит начальник отдела научных исследований ГК «Астра» Владимир Тележников. – С этой точки зрения внедрение новых необкатанных продуктов, выпускаемых стартапами, может быть рискованным, так как даже сам разработчик не всегда знает, какие ошибки могут проявляться на разных этапах эксплуатации решений. Поэтому с точки зрения безопасности и снижения рисков при внедрении ПО, безусловно, явное преимущество остается за опытными игроками».

Генеральный директор «Иннотеха» Дмитрий Харитонов отмечает, что если разработчик использует модель DevSecOps (Development, Security, Operations), то проверка безопасности становится неотъемлемой частью процесса разработки на всех этапах работы с продуктом.

Советы постороннего

Когда цифровое решение выбрано, важно корректно и безопасно его встроить в ИТ-инфраструктуру. «При внедрении новых решений необходимо строго ограничивать работу систем правами доступа внутри корпоративной сети, чтобы исключить возможности доступа к данным и ресурсам, которые не требуются для работы ПО», – рекомендует директор по продуктам Servicepipe Данила Чежин.

«Внедрение нового ПО в крупных организациях – это всегда стресс и для руководителей, и для внедренцев, и для коллектива, – рассказывает заместитель генерального директора «Гарда Технологий» Рустэм Хайретдинов. – Этой теме посвящена наука «управление изменениями», в которой разбирается процесс интеграции новых программных решений и их обновления». На безопасность внедрения влияет человеческий фактор: зачастую недооценка времени на адаптацию персонала и неправильное проектирование процесса адаптации приводят к ошибкам и даже саботажу, а невыполнение новых непривычных требований может приводить к инцидентам информационной безопасности.

Директор Центра информационной безопасности компании «ЛАНИТ-Интеграция» (входит в группу ЛАНИТ) Николай Фокин отметил, что важно обеспечить шифрование данных при их передаче и хранении, контроль доступа сотрудников в соответствии с их должностными обязанностями, безопасную настройку компонентов и своевременно проводить обновление. Особое внимание эксперт рекомендует уделить процедурам резервного копирования данных, что поможет предотвратить их потерю в случае сбоев в системе или в результате кибератаки.

Избежать ошибок компаниям поможет тестирование нового ПО в полнофункциональной «песочнице», которая имитирует рабочие условия, но отрезана от внешнего мира и реальных данных, отмечает Николай Фокин.

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

Внимание на экран

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

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

«Лучше всего использовать риск-ориентированный подход и приоритизировать применяемые обновления по различным критериям», – рекомендует ведущий консультант по информационной безопасности AKTIV.CONSULTING Александр Моисеев. Такого же подхода придерживаются регуляторы.

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

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

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

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

Важным условием безопасности продуктов является еще правильное конфигурирование среды исполнения ПО и выполнение особых указаний разработчика, отметил Александр Моисеев. С одной стороны, по его словам, регуляторы требуют хорошей степени документированности процедур разработки ПО и проведения его испытаний (хотя сертификационные испытания ПО в системе сертификации ФСТЭК России достаточно длительное мероприятие), с другой – командам разработки есть на что опереться в плане требований к безопасности, поскольку пожелания заказчиков могут иметь верхнеуровневый характер без требуемой детализации.