«Базис» и ИСП РАН при поддержке «Фобос-НТ» обнаружили уязвимости в популярном открытом ПО виртуализации
Специалисты «Базис», компании-лидера российского рынка средств виртуализации, вместе с сотрудниками ИСП РАН и испытательной лаборатории «Фобос-НТ» провели очередной этап тестирования компонентов с открытым исходным кодом, которые используются в инструментах виртуализации по всему миру, в том числе в продуктах компании. Результатом совместной работы стало обнаружение и последующее устранение 191 дефекта в коде, некоторые из которых были расценены как уязвимости.
В рамках нового этапа испытаний тестировались следующие компоненты с открытым исходным кодом: nginx, ActiveMQ Artemis, Apache Directory, libvirt-exporter, QEMU. Особое внимание было уделено libvirt – сбой в работе этой библиотеки может нанести ущерб инфраструктуре и привести к утечке конфиденциальной информации, поэтому она была подвергнута комплексному исследованию. Перечисленные компоненты используются вендорами по всему миру – libvirt предоставляет API для управления виртуальными машинами, nginx помогает балансировать нагрузку и т.д. – и от качества их работы зависит множество российских и иностранных решений для работы с виртуальными средами.
При разработке и тестировании продуктов «Базис» применяются различные виды анализа, такие как фаззинг, статический анализ, композиционный анализ, модульное и функциональное тестирование. На прошедшем этапе испытаний основной упор исследователи сделали на разметке срабатываний статического анализатора Svace (разработан в ИСП РАН) и создании фаззинг-целей.
Статический анализ выявил 178 дефектов в коде тестируемых компонентов. Изучив их, специалисты ИСП РАН и «Базис» разработали 86 исправлений, которые были приняты в основные ветки разработки соответствующих проектов. Большая часть срабатываний относилась к популярному брокеру сообщений ActiveMQ Artemis и серверу каталогов Apache Directory.
Фаззинг-тестирование выявило еще 13 дефектов в коде – 5 в Apache Directory LDAP API и 8 в библиотеке libvirt. Последние были найдены в ходе проверки функций обработки инструкций, которые потенциально могут быть получены из конфигурационных файлов при создании виртуальной машины. В частности, были найдены ошибки, связанные с переполнением буфера, а также несколько проблем, связанных с неоптимальной работой функций в отношении некоторых контроллеров. Все поданные исправления были оперативно приняты в основные ветки разработки libvirt и Apache Directory.
В рамках подготовки к тестированию для наиболее критичных компонентов открытого ПО, лежащих на поверхности атаки, были разработаны фаззинг-тесты. Их можно найти в соответствующих проектах на
«Мы очень серьезно относимся к качеству кода экосистемы «Базис», поэтому тестируем на ошибки и уязвимости не только собственный код, но даже компоненты с открытым исходным кодом, которые используем. Более того, без такого тестирования невозможны современная безопасная разработка и сертификация. Такой подход делает наши решения более качественными и защищенными, а также вносит вклад в развитие открытых инструментов виртуализации, которые используются различными вендорами по всему миру. Реализовать его было бы сложно без партнеров, сотрудничество с ИСП РАН и НТЦ «Фобос-НТ» позволяет «Базису» выстраивать качественные процессы безопасной разработки и тестирования инструментов виртуализации, повысить уровень зрелости экосистемы. В результате наши продукты не только сертифицированы ФСТЭК России, но и в максимально короткие сроки проходят инспекционный контроль. В итоге наши заказчики могут быть уверены, что решения «Базиса» проверены, а созданная на их основе инфраструктура компании безопасна», – отметил Дмитрий Сорокин, технический директор компании «Базис».
Очередной этап тестирования и исследования кода проходил на инфраструктуре Центра исследований безопасности системного ПО, созданного ФСТЭК России на базе ИСП РАН. Компания «Базис» принимает непосредственное участие в деятельности Центра и является активным участником РБПО-процессов, инициируемых и развиваемых ФСТЭК России. Работы по разметке и созданию целей для фаззинга выполнялись совместно с ИСП РАН, к решению этой задачи были привлечены студенты профильных специальностей МГТУ им. Н.Э. Баумана и Чебоксарского государственного университета. Сотрудники испытательной лаборатории НТЦ «Фобос-НТ» проводят сертификационные испытания продуктов «Базис» и занимаются улучшением фаззинг-тестов, в том числе разработанных компанией.
Справка о компании
«Базис» – ведущий российский разработчик решений для организации динамической инфраструктуры, виртуальных рабочих мест и оказания облачных услуг. Согласно исследованию «ТМТ консалтинг», компания является крупнейшим игроком российского рынка виртуализации с долей 36%. «Базис» был образован в 2021 году путем объединения IT-активов «Ростелеком», YADRO и Rubytech («ТИОНИКС», Digital Energy и «Скала Софтвер»). Компания предлагает клиентам импортонезависимую экосистему продуктов – от инструментов управления виртуальной инфраструктурой и средств ее защиты до конвейера для организации полного цикла разработки. Решения «Базиса» используются в 120 государственных информационных системах и сервисах, а также в более чем 700 компаниях различного масштаба – от крупнейших корпораций до малых и средних предприятий. Продукты разработчика интегрированы в ключевые государственные проекты, такие как Гособлако (ГЕОП), Гостех и Госуслуги, а также применяются в федеральных и региональных органах исполнительной власти. В 2024 году решения экосистемы «Базиса» возглавили рейтинг крупнейших разработчиков платформ виртуализации серверов, представленный порталом TAdviser, а также рейтинги российских платформ виртуализации и решений для управления VDI, выпущенные отраслевым изданием CNews. Функциональность на уровне зарубежных аналогов и наличие собственной кодовой базы позволяют клиентам «Базиса» увеличить долю использования отечественного ПО в рамках стратегий цифровой трансформации и импортозамещения. Решения компании включены в реестр российского программного обеспечения, сертифицированы ФСТЭК России по 4 уровню доверия. Использование разработок возможно в ГИС до 1 класса защищенности, ИСПДн до 1 уровня защищенности и объектах КИИ до 1 категории значимости.