Как стать автором
Обновить

Число багов в открытом ПО выросло на 50% за последний год

Информационная безопасностьOpen sourceИсследования и прогнозы в IT


Компания WhiteSource опубликовала результаты исследований уязвимостей в проектах с открытым исходным кодом за 2019 год. Как выяснили специалисты, число ошибок выросло почти на 50% в 2019 году по сравнению с предыдущим. В компании считают, что этот рост связан с тем, что уязвимости стали чаще обнаруживать.

В прошлом году было зарегистрировано более 6 тыс. уязвимостей в ПО с открытым исходным кодом, годом ранее — с 4 тыс. В своем ежегодном отчете компания связала растущее число ошибок с широким распространением проектов и компонентов с открытым исходным кодом и общим ростом сообщества в последние годы.

«Проблема с уязвимостями в проектах с открытым исходным кодом заключается в том, что, когда в сообществе о чем-то сообщается, вся информация становится общедоступной, и каждый может узнать об уязвимости и ее эксплуатации, а затем попытаться выполнить ее на большом количестве приложений, — указывают эксперты WhiteSource в комментарии изданию The Register. — С другой стороны, о 85% этих ошибок сообщалось уже после выхода исправления, что является признаком их ответственного раскрытия».

Правда, как отмечают эксперты, осведомленность сообщества о найденных ошибках не всегда приводит к немедленному информированию о них. Только 84% известных уязвимостей в открытом ПО попадает Национальную базу данных уязвимостей США (National Vulnerability Database, NVD), и нередко не сразу.

Эксперты WhiteSource также проанализировали соотношение количества уязвимостей в открытом ПО в зависимости от языка программирования. По информации исследователей, больше всего ошибок обнаружено в проектах, написанных на C (47% в 2009-2018 гг и 30% в 2019 году). Далее следуют PHP (15% и 27%), Java (11% и 15%), JavaScript (10% и 10%), С# (6% и 9%), Python (6% и 5%) и Ruby (5% и 4%).

В WhiteSource отмечают, что в проектах на C больше всего ошибок, потому что этот язык остается одним из самых используемых, однако по сравнению с предыдущими годами есть тенденция к снижению числа найденных багов, так как другие языки набирают популярность. В отчете, однако, отмечается, что «количество уязвимостей в проектах на PHP значительно возросло, в то время как нет признаков того же роста популярности самого языка». Тем временем, Python удалось получить низкий процент ошибок с высокой популярностью.

«Надеемся, что это результат практики безопасного кодирования, а не слабого исследования безопасности для проектов Python», — говорится в отчете.

Наиболее распространенными в 2019 году классами уязвимостей оказались: CWE-79 (межсайтовое выполнение сценариев), CWE-20 (некорректная проверка входных данных), CWE-119 (выполнение операций за пределами буфера памяти), CWE-125 (чтение за пределами буфера) и CWE-200 (раскрытие информации).

«CWE-79 (межсайтовый скриптинг) является одним из самых простых классов уязвимостей, которые могут быть использованы злоумышленниками, поскольку существует множество автоматизированных инструментов, делающих процесс взлома доступным даже для хакера-новичка, — заявили в WhiteSource. — После широкого распространения ПО с открытым исходным кодом злоумышленники видят большой потенциал в использовании уязвимостей такого рода. CWE-79 — это уязвимости, которые позволяют легко и без усилий взломать систему. Учитывая это, массовый рост их использования вполне объясним».

Также специалисты выделили изменения, которые связаны с переходом рейтинга опасности уязвимости CVSS (Common Vulnerability Scoring System) к версии 3.1. Как объясняют сотрудники WhiteSource, в последней версии обновилась классификация уровня опасности уязвимости. В компании отмечают, что в версии 3.1 уровень опасности уязвимости был повышен — уровень 7.6 (из 10) в предыдущей версии 2 поднялся до 9.8 в обновлённой. Таким образом, в версии 3.1 распределение уровней серьёзности неверное: 17% уязвимостей являются критическими, остальные — высокой степени опасности и только 2% оцениваются как низкие. Это, по словам экспертов, затрудняет распределение приоритетов при выпуске исправлений.
Теги:open sourceоткрытый исходный кодпо с открытым исходным кодомоткрытое поуязвимостиcwe-79
Хабы: Информационная безопасность Open source Исследования и прогнозы в IT
Всего голосов 11: ↑8 и ↓3+5
Просмотры3.5K

Похожие публикации

Лучшие публикации за сутки