Сегодня открытый код в той или иной степени присутствует практически в любом программном обеспечении. По данным компании Synopsys, в 84% обследованных ее специалистами коммерческих и проприетарных репозиториях открытого исходного кода была обнаружена как минимум одна уязвимость. В 48% изученных баз присутствовали уязвимости с высоким уровнем риска – активно используемые, имеющие задокументированные доказательства применения или классифицируемые как уязвимости с возможностью удаленного выполнения кода.
Информация об уязвимостях опубликована в отчете Synopsys '2023 Open Source Security and Risk Analysis (OSSRA)'. Отчет основан на анализе аудита репозиториев, задействованных в сделках по слияниям и поглощениям, и освещает тенденции использования открытого исходного кода в 17 отраслях. По сравнению с аудитом, проведенным в 2021 году, число выявленных уязвимостей увеличилось на 4%. Доля открытого исходного кода в базах компаний, представляющих аэрокосмическую, авиационную и автомобильную отрасли, а также сферу транспорта и логистики, составляла 73%. При этом 63% баз содержали уязвимости с высоким уровнем риска – от 7 и выше по шкале CVSS. В секторе энергетики и чистых технологий доля открытого исходного кода составляла 78%, а в 69% баз присутствовали уязвимости с высокой степенью риска.
Согласно отчету, за последние пять лет доля открытого исходного кода выросла во всех отраслях. В сфере образования она увеличилась на 163%, в аэрокосмической отрасли, авиации, автомобилестроении, логистике и на транспорте – на 97%, а в секторе производства и робототехники – на 74%. Во всех областях наблюдается рост уязвимостей с высоким уровнем риска. В аэрокосмических, авиационных, автомобильных, транспортных и логистических компаниях число уязвимостей с высокой степенью риска за пять лет увеличилось на 232%. Количество уязвимостей с высоким уровнем риска в базах, связанных с Интернетом вещей, с 2018 года выросло на 130%.
Из 1481 репозитория, изученного исследователями, доля баз, содержавших устаревшие версии компонентов с открытым исходным кодом (обновление или патч для них уже доступны, но соответствующие изменения пока не внесены), составляла 91%. К причинам такого положения дел относятся отсутствие необходимого времени и ресурсов, а также высокий риск непредвиденных последствий установки обновлений, перевешивающий любую выгоду от них. Кроме того, команды DevSecOps могут просто не знать о доступности обновленной версии компонента.
Для регулярного обновления программного обеспечения с открытым исходным кодом организациям следует использовать спецификацию SBOM (software bill of materials). В своем полном виде она содержит список всех компонентов приложений с открытым исходным кодом, а также лицензий, версий и статусов исправлений. SBOM позволяет организациям быстро определять компоненты, подверженные риску, и соответствующим образом расставлять приоритеты при внесении изменений.