Согласно прогнозу американской компании Black Duck Software, собирающей статистику по проектам open-source, в этом году количество атак на уязвимости в открытых исходных кодах увеличится на 20%.

По данным Black Duck, которыми поделился с CSO вице-президент компании по ИБ-стратегии Майк Питтенджер (Mike Pittenger), с 2011 года доля коммерческих продуктов, наполовину и более состоящих из бесплатного, открытого кода, возросла с 3 до 33%. Коммерческие приложения в среднем используют более 100 open-source-компонентов, и две трети коммерческих приложений содержат код с известными уязвимостями.

Хуже всего то, что покупатель зачастую не имеет возможности узнать, какие open-source-компоненты включает приобретаемый продукт. «Обычно компании не слишком предупредительны в этом отношении», — сетует собеседник CSO, отмечая, что даже в том случае, когда список компонентов предоставляется, он обычно неполон. «А сканирование бинарников без разрешения вендора является нарушением лицензионного соглашения и влечет большие неприятности», — добавляет Питтенджер.

Некоторые крупные корпорации могут выйти из положения, запросив у вендора полный список компонентов или заказав сканирование специалистам. Отказаться вовсе от использования open-source — не выход: многие библиотеки с открытым исходным кодом являются стандартом де-факто. Написание такого же кода с нуля потребует времени, что затормозит вывод продуктов на рынок и в итоге снизит конкурентоспособность компании. Как следствие, темпы использования open-source в коммерческих продуктах непрерывно растут.

Примерно такими же соображениями руководствуются разработчики приложений, обходящиеся своими силами. «Разработка текущих проектов обычно осуществляется при активной поддержке сообщества, являющегося стабильным источником свежих идей по защите и функциональности, — говорит Эд Мойл (Ed Moyle), директор ISACA (международной ассоциации профессионалов IT) по передовым практикам и исследованиям. — В некоторых ситуациях возможность аудита базового кода при наличии широких возможностей для кастомизации ПО — это несомненное преимущество с точки зрения безопасности. Практика показала: если есть коммерческий инструмент определенного назначения, то, скорее всего, уже создан и open-source-инструмент со схожим набором функций».

Тем не менее слишком уповать на «семь нянек», как гласит поговорка, тоже не следует. «Аудит кода может провести кто угодно, однако все при этом, похоже, надеются друг на друга, и никто в итоге этим не занимается, — сокрушается Жаввад Малик (Javvad Malik), консультант по ИБ из AlienVault. — В том-то и проблема».

Таким образом, контроль защищенности open-source-компонентов — это быстро растущая проблема, о которой не могут не знать злоумышленники. Такие коды присутствуют повсеместно, и одним эксплойтом можно поразить множество мишеней. Поскольку компоненты open-source трудно отслеживать в продуктах, пользователи лишены возможности регулярно их обновлять и патчить, а информация об уязвимостях в таком коде регулярно публикуется вместе с PoC-эксплойтами, что лишь на руку плохим парням.

За последний год обострилась еще одна серьезная проблема — уязвимость Интернета вещей. «В смарт-устройствах и IoT используется большое количество открытых исходных кодов, и в итоге мы получили ботнет Mirai», — комментирует Малик.

По оценке Black Duck, средний срок жизни уязвимости в коммерческом продукте составляет пять лет; более того, в кодах open-source ежегодно выявляются от 2 тыс. до 4 тыс. новых уязвимостей. Так, Heartbleed была обнаружена в библиотеке OpenSSL в начале 2014 года, однако, несмотря на активное освещение в СМИ и призывы ИБ-сообщества, темпы латания этой широко распространенной бреши долгое время оставляли желать лучшего. В прошлом году Heartbleed все еще присутствовала в 10% приложений, протестированных Black Duck.

Устранение уязвимостей в open-source, по мнению Питтенджера, требует действий и от вендоров ПО, и от потребителей, а также более сознательного подхода к безопасности со стороны корпоративных разработчиков. Тем не менее эксперт ожидает, что картина здесь, вероятнее всего, ухудшится прежде, чем начнутся какие-то перемены.

Категории: Аналитика, Главное, Уязвимости