Назад

MaSCA. Приложение для анализа уязвимостей в библиотеках с открытым исходным кодом.

Идея или концепция
B2B
Технологии информационной безопасности
Angels
нет продаж
Пензенская область
Цифровой профиль команды

Описание проекта

Виды решений для анализа библиотек с открытым исходным кодом

SCA – класс решений по информационной безопасности программного обеспечения,
которое предназначено для обнаружения известных уязвимостей в программном обеспечении
с открытым исходным кодом (open source).

Практически каждый проект использует open source компоненты,
причем их доля может достигать 80-90% общей кодовой базы проекта.
Компания разработчик не может выявлять все уязвимости в чужом коде,
поэтому появилась индустрия анализа open source компонентов на уязвимости.

Существуют как бесплатные SCA решения, так и проприетарные.
Бесплатные решения в основном опираются на национальную
базу данных уязвимостей США (NVD), а также некоторые другие
открытые базы данных. Проприетарные решения (Whitesource, Sonatype, Snyk и пр.)
кроме данных из NVD имеют собственные команды анализа уязвимостей
и собственные БД уязвимостей, доступные при покупке их решений.
Скорость добавления уязвимостей в бесплатные продукты и в
проприетарные разная, что и обеспечивает существование рынка платных решений.

В России существует аналог NVD – БДУ ФСТЭК. Из проприетарных решений,
SCA есть в продуктах Positive Technologies для безопасности приложений,
которое в свою очередь также опираются на бесплатные утилиты с информацией из американской БД.

Проблемы применения открытых библиотек

Последние события показали, что в настоящий момент в open source компоненты
могут добавляться недокументированные возможности (НДВ) и вредоносное
программное обеспечение по политическим и иным соображениям
(на основе IP-адреса машины и прочих метаданных). Полагаться,что такие проблемы
будут оперативно оповещаться в NVD из США точно не стоит, поэтому необходимо
решение, которое будет фиксировать факты НДВ. Также скорость добавления
уязвимостей в бесплатные утилиты не позволяет оперативно исправлять возникающие уязвимости.

Стоит отметить, что даже если авторы open source и не хотят сами добавлять
НДВ и вредоносный код в свои библиотеки (что их явно дискредитирует),
то нельзя исключать целенаправленного взлома аккаунтов авторов и
добавление туда кода вне их воли (атаки на цепочки поставок).

Варианты решения

Решением может стать отечественный SCA, который будет
минимизировать такие политические риски в open source компонентах.

Предлагается следующая стратегия:

1. Определить основные используемые в российском государственном и
бизнес сегменте библиотеки с открытым исходным кодом.

2. Выбрать основные языки программирования, которые первостепенно
важны для поиска уязвимостей и НДВ. На первом этапе это могут быть: Java, Python, JavaScript, C++, S#.

3. Поиск уязвимостей первоначально опирается на информацию из
открытых баз данных уязвимостей (NVD, БДУ, OSS и пр.).

4. Для выбранных критичных библиотек проводится анализ новых версий
библиотеки на предмет добавления НДВ и вредоносного кода
(ручной анализ, анализ антивирусным ПО).

5. Утилита доступна локально по отношению к папке с исходными кодами проверяемого приложения.

6. Доступна интеграция в сборочный конвейер CI/CD для автоматизации процесса проверки.

7. Веб интерфейс для отображения результатов сканирования и менеджмента уязвимостей и НДВ.

Дальнейшее развитие.

На следующих этапах развития решения необходимо приобретение компетенций
по собственным командам аналитиков по поиску уязвимостей,
что позволит решению конкурировать с платными вендорами
на доступных внешних рынках. Также в процессе приобретения компетенций
и автоматизации процессов следует расширять число доступных библиотек для анализа и языков программирования (Golang, Kotlin, Swift пр.)

Презентации

Достижения

Участник отбора Архипелага 2022 Участник отбора Архипелага 2022
Участник акселератора Архипелага 2022 Участник акселератора Архипелага 2022
Трек: Финтех
Поддержан ФСИ (Старт-1) в 2022

Команда

Контакты

Экспертная система
НАВЕРХ