Ключевые выводы
- WhiteSource и Synopsys возглавили список лидеров (Leaders) рынка;
- Snyk и Sonatype названы сильными игроками (Strong Performers);
- WhiteHat Security, Flexera и Veracode названы соперниками (Contenders);
- GitLab, FOSSA и JFrog являются претендентами (Challengers).
Примечание переводчика
Что такое Software Composition Analysis? Процесс Software Composition Analysis является подвидом более широкого процесса Component Analysis фреймворка Cyber Supply Chain Risk Management (см. сайт NIST) и предназначен для определения потенциальных рисков использования стороннего и открытого программного обеспечения.
Программные решения типа Software Composition Analysis (SCA), соответственно, предназначены для автоматизированного обнаружения рисков и устранения уязвимостей в коде, контроля использования внешних (готовых) библиотек.
Для общего представления о Component Analysis и о Software Composition Analysis в частности, рекомендуем ознакомиться с материалом на сайте проекта OWASP.
Важность решений класса Software Composition Analysis (SCA) при реализации современных подходов по созданию безопасной среды разработки приложений
В условиях, когда необходимо быстро добавлять новый функционал в приложения с сохранением качества кода, разработчики все чаще прибегают к использованию уже созданных программных модулей, расположенных в публичных репозиториях, а также настраивают и автоматизируют свой код, полагаясь на распространенные open source компоненты. Одно из последних исследованийисточник показало, что из года в год количество open source компонентов в анализированной в исследовании базе кода увеличивается на 21%.Важно понимать, что эти сторонние open source компоненты могут содержать критические уязвимости, что само по себе уже представляет риск для бизнеса. Недавнее исследование показало, что каждый восьмой open source компонент содержит известную уязвимость безопасностиисточник. Все это усугубляется тем, что в последнее время у специалистов по информационной безопасности все меньше времени на идентификацию и устранение недавно обнаруженных уязвимостей, так как время между публикацией уязвимости и ее эксплуатацией сократилось с 45 до 3 днейисточник.
Принимая во внимание эти тенденции, потребителям решений класса SCA следует присмотреться к решениям вендоров, которые:
- Дают рекомендации разработчикам, как устранять уязвимости.
Для существенного снижения риска, который представляют собой уязвимости и лицензионные условия, разработчикам необходимо как можно раньше получать уведомления в рамках процессов SDLC (software delivery life cycle) о рисках безопасности и использования чужого кода с точки зрения лицензионной чистоты, а также необходимо получать рекомендации по их устранению. SCA-решения должны не только выдавать качественные рекомендации по устранению рисков, некоторые продукты еще и предлагают решения по исправлению кода, предоставляя информацию о наличии безопасной версии open source компонента или создают исправления (патчи), если нет исправленных версий. - Позволяют создавать политики, согласованные с разными бизнес-подразделениями и типами приложений.
Для повышения скорости выпуска релизов специалисты ИБ должны перейти с ручного тестирования средствами SCA к разработке и внедрению в организации стандартов безопасной разработки, используя функционал SCA. Специалисты по ИБ утверждают политики безопасной разработки, которым должны удовлетворять все приложения в компании (например, ни одна из известных критичных уязвимостей не должна пройти в релиз) и контролируют минимальные требования к безопасности для более критичных приложений. Чтобы быть эффективным, специалисту по ИБ требуется гибкое управление принятыми политиками, в том числе с использованием инструментов, предоставляемых SCA. - Предоставляют отчеты о стратегических рисках для специалистов по ИБ и CISO.
CISO должны организовать процесс таким образом, чтобы снизить количество времени, затрачиваемое на устранение выявленных уязвимостей. В прошлом специалисты по ИБ собирали информацию о рисках и уязвимостях из разных источников или же просто ничего не делали. Сегодня специалист по ИБ может получать готовые отчеты (“из коробки”) для CISO и команд разработчиков, в которых описаны выявленные риски.
Критерии включения вендоров в обзор
Forrester включил 10 вендоров в этот сравнительный анализ: Flexera, FOSSA, GitLab, JFrog, Snyk, Sonatype, Synopsys, Veracode, WhiteHat Security и WhiteSource.
У каждого из этих вендоров есть:
- Полноценный SCA-инструмент класса enterprise. Все перечисленные вендоры предлагают ряд возможностей SCA, подходящих для специалистов по информационной безопасности. От участвующих производителей требовалось предлагать большую часть следующего функционала “из коробки”:
- возможность предоставлять рекомендации по устранению лицензионных рисков и уязвимостей в открытом ПО (open source),
- способность интегрироваться в инструменты автоматизации SDLC,
- обеспечивать проактивное управление уязвимостями,
- возможность редактировать и создавать политики,
- способность предоставлять наглядные отчеты о рисках в открытом программном обеспечении (open source).
- Годовая выручка свыше $10 миллионов только от SCA предложений.
- Наличие интереса или рекомендаций клиентов Forrester. В иных случаях, по решению Forrester, участвующий вендор мог гарантировать свое включение в список благодаря техническим характеристикам своих продуктов и значимому присутствию на рынке.
В отчете The Forrester Wave™ выделяются Лидеры (Leaders), Сильные Игроки (Strong Performers), Соперники (Contenders) и Претенденты (Challengers). Отчет является оценкой ведущих вендоров на рынке и не представляет собой полный ландшафт вендоров. Больше информации о рынке можно получить из других отчетов Forrester по SCAссылка.
Методология Forrester Wave
Отчеты Forrester Wave являются руководством для покупателей, рассматривающих варианты приобретений ПО на рынке технологий. Чтобы предложить равный процесс для всех участников сравнения, Forrester следует методологии The Forrester Wave™ Methodology Guide при оценке участвующих вендоров.В отчете проводится первичное исследование для формирования списка оцениваемых производителей. Первоначальный пул вендоров сужается на основе критериев отбора и включается в финальный список. Затем собирается подробная информация о продуктах и стратегиям с помощью анкетирования, демонстраций/брифинга, отзывов/интервью с клиентами. Эти входные данные, наряду с исследованием эксперта и его знанием рынка, используются для оценки вендоров по рейтинговой системе, в которой каждый участник сравнивается с другими.
Forrester явно указывает дату публикации (квартал и год) Forrester Wave в заголовке каждого отчета. Оценка вендоров, участвующих в данном исследовании Forrester Wave, произведена на основе материалов, предоставленных Forrester до 28.01.2019, дополнительные материалы после этого времени не принимались.
До публикации отчета, для оценки точности исследования, Forrester просит вендоров изучить результаты исследования. Производители, отмеченные в диаграмме Forrester Wave как неучаствующие, соответствуют критериям и могли бы быть включены в отчет, но отказались участвовать или только частично участвовали в исследовании. Они оцениваются в соответствии с политикой The Forrester Wave™ And The Forrester New Wave™ Nonparticipating And Incomplete Participation Vendor Policy, их позиция публикуется наряду с позицией участвующих вендоров.
Общие сведения о сравнении
- Текущее предложение вендора
Позиция каждого вендора на вертикальной оси диаграммы Forrester Wave указывает на привлекательность текущего предложения. Ключевыми критериями для таких решений являются управление лицензионным риском, действия по определению уязвимостей, проактивное управление уязвимостями, управление политиками, интеграция с SDLC, сканирование контейнеров и бессерверное сканирование, а также встроенные возможности создания стратегических отчетов. - Стратегия
Расположение на горизонтальной оси указывает на устойчивость стратегии вендора. Forrester оценивали продуктовую стратегию, подход к продвижению на рынке, дорожную карту и доступность тренингов для пользователей и дистрибьюторов. - Присутствие на рынке
Оценка по присутствию вендоров на рынке представлена размером круга на диаграмме и отражает объем установок продукта по каждому вендору, темп роста и прибыльность компании.
Примечание переводчика: в следующей таблице приведены экспертные оценки и весовые коэффициенты Forrester, исходя из которых и располагаются сравниваемые поставщики SCA на “волнах” Forrester. Подробную расшифровку оцениваемых показателей нам найти не удалось, тем не менее, важно отметить следующие особенности методики:
- Весовые коэффициенты Forrester выставляли в соответствии с их значимостью для подписчиков (клиентов) этого аналитического агентства, поэтому для тех компаний, которым важен, прежде всего, конкретный функционал SCA решения, рейтинг вендоров может значительно отличаться от представленного.
- Показатель присутствия на рынке имеет коэффициент равный нулю, и носит только информативный характер, это означает, что итоговые цифры этого показателя влияют только на размер точки (круга) вендора, а не на его положение во вертикали и горизонтали, т.е. не влияют рейтинг и на попадание в лидеры.
Профили вендоров
Анализ выявил следующие сильные и слабые стороны каждого вендора.
Leaders (Лидеры)
WhiteSource снижает время, необходимое для устранения рисков при помощи приоритизации. WhiteSource недавно представил возможность приоритизации уязвимостей через выполнение статического сканирования, чтобы понять, вызывается ли уязвимая часть компонента приложением напрямую. Если нет, то приоритет уязвимости понижается. Другой относительно недавней возможностью является автоматическое устранение уязвимостей через создание запросов (pull request) на обновление компонента до версии, которая соответствует политике компании.
Пользователи высоко оценивают поддержку большого количества языков и качество клиентской поддержки, но отмечают, что продукт мог бы лучше визуализировать транзитивные зависимости. У решения WhiteSource очень мало недостатков, но функционал по составлению перечня компонент, используемых в проекте (bill of materials или BOM), не оправдывает ожиданий. WhiteSource хорошо подходит компаниям, которым требуется сканирование на самых ранних этапах SDLC и которые ищут решение для приоритизации и автоматического устранения угроз.
Synopsys капитализирует приобретение Black Duck через сканирование бинарного кода и генерирование отчетов. Synopsys объединил функциональность своего решения и функционал Black Duck (Black Duck Hub и Protecode SC). Тем не менее, для более комплексного анализа на соответствие лицензионным требованиям, пользователи могут также использовать Black Duck Protex и Black Duck. Например, вы можете проанализировать различие между заявленными обнаруженными лицензиями, но вы должны будете использовать для этого два разных инструмента. В решении Synopsys есть еще другой функционал для интерактивного и статического сканирования – компания недавно выпустила платформу Polaris, предназначенную для объединения всех данных из инструментов предрелизного сканирования.
Пользователи доверяют продуктам сканирования кода от Synopsys, которые являются быстрыми и надежными, предоставляют подробные рекомендации для устранения угроз, но считают высоким уровень ложноположительных результатов. Synopsys предлагает возможности хорошего управления политиками, интеграции с SDLC-решениями, надежное проактивное управление уязвимостями, включая функцию сравнения спецификаций проекта (BOM), где выделены изменения компонентов. Тем не менее, Synopsys не оправдывает ожиданий, когда дело касается возможности автоматического устранения уязвимостей, которые предлагают другие ведущие вендоры. Synopsys хорошо подходит компаниям, команды разработки приложений которых имеют четкие требования интеграции с SDLC и которым нужны различные политики для разных типов приложений.
Strong Performers (Сильные игроки)
Snyk фокусируется на сценариях разработчиков для обновления версий и предоставлений исправлений. Цель компании заключается в том, чтобы позволить разработчикам устранять уязвимости и, как результат, не только предлагает возможность их исправления через создание запросов на обновление, но и позволяет работать с пользовательскими исправления, когда нет приемлемой версии компонента в репозитории. Snyk также предоставляет разработчикам визуализацию запросов в виде графа, который отображает связи и ассоциированные с ними уязвимости, что помогает разработчикам разобраться, зачем необходимы те или иные исправления.
Пользователи оценили нацеленность Snyk на потребности разработчиков, включая простую интеграцию в SDLC, автоматическое устранение уязвимостей, в том числе средствами исправления уязвимостей (custom patching) при отсутствии возможности ручного исправления кода, и визуализацию зависимостей. Тем не менее, для того, чтобы решение полностью удовлетворяло потребностям разработчиков, необходимо чтобы Snyk позволял не только обнаруживать уязвимости программного кода, но и предоставлять информацию обо всех версиях используемых программных компонент программного кода. Snyk большое внимание уделяет потребностям разработчиков и меньше потребностям специалистов по ИБ, поэтому в качестве рекомендации можно отметить, что необходимо расширить в Snyk функционал встроенной возможности аудита и генерирования отчетов. Snyk отлично подходит для компаний, у которых стоит задача реализовать автоматическое устранение уязвимостей программного кода на этапе его разработки.
Sonatype продолжает развивать платформу Nexus для улучшения показателей. Sonatype для обогащения своей базы уязвимостей использует репозиторий Nexus. Исследовательская группа Sonatype далее дополняет данные, связанные с обнаруженными новыми уязвимостями, информацией по способам их устранению и рекомендациями по изменению настроек, обновлению компонентов, а также рекомендациями по изменению программного кода. Платформа Nexus имеет несколько лицензий для различного функционала — DepShield, IQ Server, Nexus Auditor, Nexus Firewall, Nexus Lifecycle, Nexus Repository и Nexus Vulnerability Scanner, для получения максимальной эффективности от использования продуктов платформы Nexus потребуется подобрать правильную комбинацию этих компонент.
Пользователи данного решения отмечают низкий уровень ложноположительных срабатываний, интеграцию с репозиторием Nexus и высокий уровень пользовательской поддержки. Тем не менее, также подчеркивается, что решениям Sonatype требуется больше внимания обратить на доработку функционала по отслеживанию транзитивных зависимостей, а также предоставлению отчетных форм по результатам сканирования. Кроме того, сложности у пользователей продукта вызывает политика ценообразования и лицензирования при выборе правильного решения из большого многообразия продуктов компании.
Настоящее решение будет интересно компаниям, которые уже используют продукты Nexus, или которым требуется очень низкий уровень ложноположительных результатов сканирования.
Contenders (Соперники)
WhiteHat Security предлагает SCA-решение без ручного вмешательства для достижения максимальной скорости работы. WhiteHat Security известны тем, что их специалисты, для снижения уровня ложноположительных результатов сканирования, анализируют результаты сканирования перед отправкой вердикта пользователю. Теперь WhiteHat способен предложить полностью автоматизированное решение с помощью Sentinel SCA Essentials в дополнение к WhiteHat Sentinel SCA Standard, в котором все еще присутствует верификация результатов командой безопасности.
Решение WhiteHat Sentinel Essentials является новым, поэтому пользователи могут сталкиваться с незначительными недоработками. Отмечаются недостатки ролевой системы доступа, трудности в определении уязвимых зависимостей, но при этом высоко оценивается детализацию информации об уязвимостях. WhiteHat Security активно продолжает работать над улучшением своего продукта, позиционируемого как универсальный сканер (SCA, SAST, DAST).
WhiteHat Security лучше всего подойдет компаниям, разработчики которых разнятся в уровне зрелости: некоторым требуется скорость и у них достаточно опыта чтобы самостоятельно использовать предлагаемые продуктом возможности, другим необходима дополнительная помощь через ручной просмотр результатов срабатывания командой безопасности на стороне вендора.
Flexera отличается от своих конкурентов исследованиями безопасности. Secunia, Исследовательская группа Flexera, проводит раннее исследование новых уязвимостей, предоставляя пользователям Flexera информацию об уязвимости и способах борьбы с ней до того, как она будет официально зафиксирована в базе уязвимостей National Vulnerability Database (NVD). Успех этой группы измеряется на основе точности и времени отклика, все сообщения об уязвимостях были приняты в NVD и опубликованы в ней. Уязвимости, которые обнаруживает Secunia, отображаются в Flexera FlexNet Code Insight и обозначаются как найденные Secunia.
Хотя пользователи Flexera подтверждают гибкость пользовательского интерфейса и полезные функциональные возможности автоматизации. При этом они также сообщают, что документация и обучение работе с системой – малоинформативны, и их необходимо дополнять уровнем сервиса технической поддержки, а также сопровождением системы при внедрении, а реализованное API обладает ограниченной функциональностью.
Veracode предоставляет раздельное использование своих двух продуктов. В 2018 году Veracode приобрела SourceClear, чтобы дополнить свое решение Veracode Software Composition Analysis. SourceClear Software Composition Analysis представляет собой агентский инструмент сканирования, а Veracode Software Composition Analysis является облачным SaaS решением. Функционал этих продуктов пока не объединен — например, выполнение SCA возможно при использовании SaaS решения, — но не при использовании сканирования агентом. Veracode также предлагает статическое и динамическое предрелизное сканирование как дополнение к своим SCA-продуктам.
Пока Veracode полностью не объединит SourceClear и Software Composition Analysis, пользователи будут испытывать неудобства при закупке и продлении лицензий на продукты, при задержках в обновлениях функционала и разных уровней поддержки API. Тем не менее, вендор продолжает работу над интеграцией своих решений, и есть ожидание, что Veracode будет прицельно работать над устранением оставшихся различий между продуктами, особенно над совместной поддержкой языков и общим движком политик.
Veracode наилучшим образом подходит для компаний, которые уже используют продукты Veracode, и желающих ограничить количество поставщиков средств безопасности. Текущие пользователи Veracode высоко оценят перспективу настоящей платформы для безопасной разработки приложений, в которой данные SCA дополняют другие данные сканирования, полученные от продуктов Veracode.
Challengers (Претенденты)
GitLab быстро запустил свое решение на рынок, но сделал акцент на решении проблем разработчиков, меньше уделив внимания проблемам специалистов по ИБ. GitLab предлагает продукты для обеспечения безопасности с 2017 года, а теперь в функционал добавлена возможность статического и динамического анализа кода, помимо бинарного SCA. Тем не менее, некоторые возможности SCA, ориентированные на разработчиков, будут неудобными для специалистов по ИБ. Например, функция игнорирования дает возможность разработчикам игнорировать уязвимости любого уровня серьезности. Это вынуждает специалистов по ИБ тщательно отслеживать, какие уязвимости разработчики решили проигнорировать. Кроме того, GitLab склонен не тормозить сборку проверкой качества на этапе релиза. Вместо этого, он рекомендует использовать возможность просмотра, которая вынуждает специалистов по ИБ вручную просматривать статус каждой сборки.
GitLab активно и быстро внедрил и продолжает развивать функционал безопасности. Тем не менее, многие из этих возможностей пока еще в зачаточном состоянии или на стадии планирования. Пользователи при оценке решения подчеркивали отсутствие поддержки большого числа языков, неустойчивое обнаружение уязвимостей и базовые возможности управления политиками.
Обратить внимание на GitLab стоит, когда большинство, если не вся команда разработчиков используют его в качестве GitLab open source репозитория.
FOSSA улучшает продукт с помощью идентификации open source и проприетарных лицензий. FOSSA Compliance может автоматически обнаружить необработанный заголовок об авторских правах, а также различить частный код, код третьих сторон и защищенный авторским правом внешний код. В дополнение к этой технологии обнаружения, FOSSA заявляет, что работает с юридическими консультантами, компетентными в области open source лицензирования. FOSSA представляет собой решение уровня open source, что позволяет пользователям улучшать производительность продукта, а также добавлять поддержку новых языков и платформ.
Специалистам, работающим с этим инструментом, нравится оценка уязвимостей, предлагаемая FOSSA во время сборки, и они чувствуют, что результатам сканирования уязвимостей можно доверять. Некоторые пользователи FOSSA публикуют результаты сканирования и указывают FOSSA в качестве источника. FOSSA сам по себе является open source проектом, поэтому лучше рассматривать его как набор инструментов, в котором, и это подтверждают пользователи, скудная документация и продвинутый функционал, такой как сканирование контейнеров. Подробную долгосрочную дорожную карту трудно реализовать для open source проекта, так как FOSSA не может предвидеть, когда внешние участники проекта создадут новый функционал.
FOSSA следует рассматривать, если у вас есть желание и возможность вкладывать ресурсы в доработку и настройку SCA-продукта под специфичные требования компании.
JFrog ограничен сканированием бинарного кода, расположенного в своем репозитории Artifactory. С помощью JFrog XRay можно с высокой степенью детализации определить, что сканируется внутри бинарного кода, используя возможность отобрать объекты для наблюдения (watches), а затем соотнести политики с тем, что необходимо сканировать. Политики можно применять ко всему бинарному коду и к сборкам из различных репозиториев JFrog.
Пользователи средне оценили JFrog и отметили в качестве недостатков недостаточную гибкость функционала, не интуитивность интерфейса и ограничения при составлении отчетов. В качестве плюсов были отмечены: хорошая интеграция с JFrog Artifactory, быстрая скорость разработки новых функций и исправления обнаруженных проблем.
JFrog XRay следует рассматривать, когда уже используется JFrog Artifactory и требуется автоматическое устранение угроз.
Примечание переводчика.
В заключение, хотелось бы отметить разницу между взглядами Forrester и Gartner на рынок инструментов по анализу безопасности исходного кода: если Forrester в своем исследовании считает функционал SAST и DAST полезным расширением SCA-продуктов, то Gartner в своих исследованиях Magic Quadrant for Application Security Testing рассматривает решения на этом рынке с другой стороны и считает функционал SCA важным, но опциональным для SAST и DAST.
А что по этому поводу думаете вы? Верите ли, что SCA рынок останется отдельным направлением (и, например, конкуренция будет развиваться в сторону увеличения количества поддерживаемых интеграций со сторонними системами) или же более вероятным сценарием считаете покупку нишевых игроков SCA-рынка более богатыми производителями *AST решений?
Авторы перевода:
Вячеслав Вовкогон, АО «Кросс Технолоджис»
Дарья Орешкина, Web Control