60-80% состоят из сторонних библиотек) это не простая задача как ее многие описывают (нужно только просканировать и поднять версию зависимости до нужной и все). И тут наткнулись на интересный молодой проект, который призван как помочь в этом не легком деле, так и просто пояснить какие вообще есть сложности (на примерах, того, когда они сами полезны). Seal Security Patches — это централизованный репозитарий самодостаточных исправлений безопасности для
open source библиотек. Вот такие сценарии рассматриваются, когда разработчику может быть обновиться на последнюю версию библиотеки невозможно, очень долго или не практично:- Ломающие изменение или
deprecated фичи в новой версии библиотеки- Уязвима транзитивная зависимость
- Уязвима не поддерживаемая библиотека
-
Legacy код-
Mission-critical приложение- Уязвим сторонний
Container/VM образ-
Large Language Models (LLM) код Очень хорошие кейсы и точно все команды разработки с этим сталкивались (ну кроме последнего конечно =) ). И тут еще перечислены только технические аспекты данной проблемы, а прибавьте к этому разные процессные и сроки обновления у многих улетаю в совсем не приличное сроки. Сейчас в проекте уже доступен ряд патчей для разных
npm (29), rpm (8), pypi (7) библиотек - можно зайти и посмотреть, как это организовано и применяется. При этом среди наших клиентов и друзей мы уже знаем примеры, когда они закрывали ряд уязвимостей в сторонних библиотеках подобным способом или на уровне виртуальной машины языка или его интерпретатора.
P.S. Мне это также напомнило решение ребят из 0patch, но только там для бинарных приложений.