
Уровни критичности уязвимостей
Узнать больше12.07.2024
Многие приложения и программы содержат компоненты Open Source Software. Использование открытого исходного кода позволяет разработчикам не тратить время на написание уже существующего кода, если он есть в общедоступных библиотеках. Такой подход к разработке активно применяется в различных отраслях бизнеса, государственном секторе, сфере образования, IT и др. Согласно исследованию ИИМР, через 2 года две трети корпоративного ПО будут на открытом коде и только треть останется проприетарным. Однако применение Open Source несет определенные риски в связи с закладками в общедоступных библиотеках и другими угрозами. В этой статье разберемся в возможных проблемах и способах снижения рисков.
В качестве основных преимуществ использования Open Source-компонентов в своем коде можно выделить следующие:
Делаем вывод, что благодаря Open Source готовые приложения получается разработать быстрее и эффективнее. Именно этим обусловлена растущая популярность использования открытого кода.
Среди самых серьезных минусов создания ПО с использованием общедоступных компонентов можно выделить:
Главная проблема заключается в возможности внедрения закладок в общедоступные библиотеки, откуда разработчики заимствуют компоненты. Закладки — вредоносные элементы, выполняемые при запуске программ и создающие уязвимости в программных продуктах. С их помощью хакеры похищают конфиденциальную информацию пользователей приложений, затрудняют отслеживание зависимостей компонентов, реализуют финансовые махинации, провоцируют сбои в работе ПО и т.д. Новые уязвимости в Open Source появляются практически каждый день. Но опасность даже не в этом, а в том, что на большинство уязвимостей есть эксплойты, позволяющие их эксплуатировать.
Еще одна проблема связана с лицензированием проектов с открытым кодом. Лицензии в обязательном порядке должны подтверждать условия использования компонентов и могут требовать от авторов программ раскрыть исходный код распространяемого ПО. Не все согласны раскрывать состав продуктов, поэтому лицензии с таким требованием не подходят для большинства проектов. А иногда лицензии и вовсе отсутствуют.
Угрозы, распространяемые через открытые компоненты, могут привести к следующим последствиям для компаний:
Чтобы избежать этих последствий, необходимо тщательно проверять все проекты Open Source Software. В этом помогут инструменты для автоматизированного контроля состава программного обеспечения.
Российское IT-сообщество при активной поддержке Министерства цифрового развития продвигает Open Source-проекты на отечественный рынок. Некоторые виды такого ПО даже разрешены для закупки компаниям госсектора наряду с отечественными программными продуктами.
Чтобы запускать проект с открытым кодом, важно убедиться в безопасности заимствованных элементов. В этом поможет анализ сторонних компонентов OSA, а именно технологии, которые обычно в него входят — SCA и SCS. Можно использовать каждый из них отдельно, но лучше комбинировать, чтобы составить объективную картину потенциальных угроз.
Software Composition Analysis — сканирование с целью выявления компонентов Open Source и их проверки на безопасность. С помощью такого анализа можно выявить уязвимости проектов с открытым исходным кодом и устаревшие элементы.
SCA-анализ зачастую становится частью методологии DevSecOps и позволяет контролировать безопасность приложений с открытыми компонентами еще на этапе создания. С его помощью можно обнаружить главную проблему — закладки в сторонних библиотеках.
Как работает SCA анализ:
Supply Chain Security — вид исследования ПО, позволяющий проверять безопасность цепочки поставок. При этом анализируются используемые технологии, действия причастных к разработке лиц (не только авторов приложения, но и поставщиков компонентов, команды тестировщиков).
С помощью SCS-анализа можно выявить, безопасно ли использовать те или иные компоненты Open Source. Инструменты нашей платформы Solar appScreener проверяют каждый элемент и выставляют оценки доверия на основе всех проанализированных факторов.
Такой анализ не указывает на конкретные уязвимости — он помогает просчитать риски и принять превентивные меры против вероятных угроз. SCS позволит предположить, какие проблемы в будущем могут возникнуть даже с теми компонентами, которые непосредственно в момент проверки не были уязвимыми. В этом главное отличие такого анализа от SCA, который помогает обнаружить уже существующие слабые места Open Source-проектов.
Solar appScreener — российская разработка, которая может заменить для отечественных компаний зарубежные решения аналогичного класса. Наша платформа для комплексного анализа приложений — лидер рынка по числу поддерживаемых языков программирования (решение поддерживает 36 языков).
С помощью Solar appScreener можно реализовать различные методы контроля безопасности программного обеспечения: статические проверки SAST, динамические тесты DAST, OSA-анализ.
Технология анализа безопасности цепочки поставок ПО SCS для расчета рисков использования Open Source-компонентов пока реализован только у нас — в других российских коммерческих платформах для контроля безопасности ПО его нет.
ЗАКЛЮЧЕНИЕ
Open Source-проекты — программные продукты с использованием открытого исходного кода. Многочисленные исследования подтверждают, что как раз свободные элементы составляют до 90% используемой кодовой базы. Проблема в том, что некоторые Open Source-компоненты легко идентифицируются хакерами и содержат уязвимости, которые могут быть проэксплуатированы для атак на приложения. Чтобы минимизировать риски, в процессе разработки ПО или перед запуском в эксплуатацию готового проекта необходимо провести OSA-анализ для определения состава программы и возможных проблем. Оба тестирования легко интегрировать в цикл создания приложений с помощью комплексного анализатора Solar appScreener.
Самые важные новости кибербезопасности у вас в почте
Выберите темы, на которые бы вам было интересно получать новости.
Для получения бесплатной консультации заполните форму ниже и отправьте заявку. Наш менеджер свяжется с вами в ближайшее время.