В SourceCraft Security задействовано несколько опенсорсных проектов. Один из них — Grype, сканер уязвимостей, который помогает анализировать зависимости и находить известные проблемы в пакетах.
Мы уже делились историей про маленький шаг в большом опенсорсе с Trivy. В этот раз покажем улучшение, которое экономит время инженерам по безопасности.
🔘 В чём было дело
Время от времени Grype находил уязвимости, у которых в первичной записи отсутствовало описание. В таких случаях поле
fullDescription в SARIF-отчёте заполнялось бесполезной заглушкой Version 6.6.126 is affected with no fixes reported yet.Вместо полной картины по уязвимости инженеры видели пустую карточку без контекста. Чтобы понять суть проблемы, приходилось вручную переходить в NVD или Ubuntu Security — это замедляло триаж и принятие решений.
🔘 Что изменилось
В самом Grype информация об уязвимости из NVD была, но хранилась в отдельном поле JSON-вывода:
.matches[].relatedVulnerabilities[].description. Презентер сканера просто игнорировал её при сборке SARIF-отчёта. Теперь Grype подтягивает описание из
relatedVulnerabilities, если оно отсутствует в записи уязвимости. Например, для CVE-2025-37849 (use-after-free в Linux kernel) вместо заглушки попадает полное описание проблемы — с контекстом про KVM, arm64 и природу UAF.Все подробности — в предложении изменений.
А вы контрибьютили в опенсорс-проекты, которые используете в своей работе?
🔥 Да, исправлял или добавлял функциональность
🤔 Пока нет, но такие мысли были
⚡️ Чаще завожу задачи и предлагаю улучшения
