Если у вас есть вопрос по услуге или задача в рамках направления, напишите нам. Наши специалисты проведут консультацию, помогут найти оптимальное решение вашей проблемы.
Руководитель Центра предотвращения киберугроз CyberART Антон Кузьмин рассказал, какие сюрпризы скрывает Open Source и что делать разработчикам и ИБ-специалистам, чтобы исключить риски от его использования.
Уязвимости ПО с открытым кодом
Open Source код распространяется бесплатно, без каких-либо ограничений в открытой сети. Соответственно, используется многими разработчиками. Именно поэтому найденная уязвимость при атаке на одно программное решение может легко использоваться при атаках на любые другие решения, использующие данный Open Source.
Обычно в таких случаях речь идет о неумышленных уязвимостях, допущенных сообществом при разработке кода. Однако в текущей ситуации не исключено и намеренное распространение в свободном доступе ПО с заложенными уязвимостями. Проекты с открытым исходным кодом развиваются силами энтузиастов и пользователей, и защищенность этого софта никто не гарантирует. Разработчики формируют сообщества, вносят правки, добавляют новые функции, исправляют ошибки в коде. Под видом улучшения злоумышленники могут сами добавить в ту или иную библиотеку элемент кода с уязвимостью. Собрать данные о том, какие компании и какие популярные приложения используют компоненты с открытым кодом, не составляет труда. Разработчики делятся опытом на форумах, в статьях, в интервью. В итоге злоумышленники, внедрившие вредоносный код в бесплатный софт, точно знают, кого и как атаковать. Риски, которые вчера казались маловероятными, сегодня становятся крайне высокими.
Дальнейшие действия злоумышленников зависят от поставленных целей. Это может быть, к примеру, похищение конфиденциальных данных или внедрение шифровальщика для получения выкупа. С февраля резко увеличилось количество атак: хакеры взламывают веб-ресурсы и приложения для размещения тех или иных политических призывов, распространения фейковых новостей, фишинговых атак на пользователей и др. вредоносных действий.
Проверка на прочность
Резкий всплеск подобных инцидентов начался с конца февраля. При этом целью хакеров является, скорее, не взлом веб-приложений для хищения ценных данных, как это было раньше, а именно дестабилизация работы сайтов, или дефейс. Уязвимости Open Source компонентов чаще всего встречаются в CMS - менеджерах управления сайтом, веб-сервисах, базах данных и продуктах, которые автоматизируют рутинные операции ИТ-специалистов.
Угрозы, которые таит в себе софт с открытым исходным кодом, становятся еще более актуальными на фоне массового ухода из России зарубежных компаний. Оперативно заменить то или иное решение на другое не всегда возможно. Например, из-за бюджетных ограничений или отсутствия альтернативы. Многие компании вынуждены обратить внимание на ПО с открытым кодом в качестве временного решения.
Бесплатный софт, который может использоваться в защищенном контуре ИТ-инфраструктуры компании, взаимодействует с чувствительными данными или является частью системы защиты информации, становится крайне привлекательной мишенью для киберпреступников. Намеренно добавив в код таких решений уязвимости или недекларированные возможности, злоумышленники смогут без особых проблем провести целевую атаку, которая грозит компании финансовыми и (или) репутационными потерями.
Как повысить надежность Open Source решений
Специалисты DevSecOps являются одной из ключевых фигур при разработке проекта, включающего в себя Open Source компоненты. Их знания и опыт помогут найти и устранить большую часть уязвимостей еще до выхода готового продукта, что существенно уменьшит вероятность эксплуатации какой-либо уязвимости.
Изначально DevOps предполагал проверки на безопасность. На практике, численность команд безопасности была намного меньше, чем сейчас, и они выступали не как участники процесса, а как контрольный и надзорный орган, который предъявляет требования и проверяет качество продукта в конце релиза. Это классический подход, в котором команды безопасности находились за стеной от разработки и не принимает участия в процессе. Самое важное слово в Security Development Lifecycle — это «процесс». Вы должны это понять, прежде чем думать о покупке инструментов. Просто включить инструменты в процесс DevOps недостаточно — важно взаимодействие и понимание между участниками процесса.