Третья часть [1,2] по мыслям о сканирование образов (
Во второй части мы говорили о мифах, недостатках и проблемах инструментов данного класса. Сейчас рассмотрим, как же всё-таки можно улучшить данную картину. Основная проблема как мы уже выяснили это количество "шума", которое генерируют данные инструменты.
Можно, конечно, пойти по пути фильтрации и приоритезации данного "шума", накручивая по верх данных сканеров собственные метрики и эвристики. Но на мой взгляд качество этого будут сильно завесить от самой реализации и не застраховано от сбоев.
Лучше идти по пути уменьшения количества данного "шума". И в первую очередь это будет связано не с внедрением каких-то других решений по безопасности, а с культурой разработки продукта внутри вашей компании (это вам никто не продаст в виде готовой коробочки).
1) Культура ведения кода - отдельная большая область, которая покрывает темы от монорепов до использования сторонних библиотек во внутренних репозитариях (а не выдирать уязвимые куски кода и вставлять в свой проект). Общая цель которой это упростить автоматическим средствам анализа поиск недостатков.
2) Distroless images - убрать дистрибутив с кучей его бинарей, библиотек из image. Дает сразу море преимуществ - тут и размер образа уменьшается, и attack surface уменьшается, уменьшается и возможности атакующего, что попадет внутрь такого контейнера, так и "шум" уменьшается. Общая цель убрать, то, что не используется, чтобы уменьшить от них “шум”.
3) Оптимизированный порядок слоев в образе - слои в образе должны быть от более толстых, к более тонким (к часто обновляемым). Общая цель которой это упростить и ускорить автоматическим средствам анализа поиск недостатков.
Ну и на последок можно рассмотреть честный Shiftleft security подход - на пример, это умеют некоторые решения класса SCA (Software Composition Analysis).
images
) контейнеров.Во второй части мы говорили о мифах, недостатках и проблемах инструментов данного класса. Сейчас рассмотрим, как же всё-таки можно улучшить данную картину. Основная проблема как мы уже выяснили это количество "шума", которое генерируют данные инструменты.
Можно, конечно, пойти по пути фильтрации и приоритезации данного "шума", накручивая по верх данных сканеров собственные метрики и эвристики. Но на мой взгляд качество этого будут сильно завесить от самой реализации и не застраховано от сбоев.
Лучше идти по пути уменьшения количества данного "шума". И в первую очередь это будет связано не с внедрением каких-то других решений по безопасности, а с культурой разработки продукта внутри вашей компании (это вам никто не продаст в виде готовой коробочки).
1) Культура ведения кода - отдельная большая область, которая покрывает темы от монорепов до использования сторонних библиотек во внутренних репозитариях (а не выдирать уязвимые куски кода и вставлять в свой проект). Общая цель которой это упростить автоматическим средствам анализа поиск недостатков.
2) Distroless images - убрать дистрибутив с кучей его бинарей, библиотек из image. Дает сразу море преимуществ - тут и размер образа уменьшается, и attack surface уменьшается, уменьшается и возможности атакующего, что попадет внутрь такого контейнера, так и "шум" уменьшается. Общая цель убрать, то, что не используется, чтобы уменьшить от них “шум”.
3) Оптимизированный порядок слоев в образе - слои в образе должны быть от более толстых, к более тонким (к часто обновляемым). Общая цель которой это упростить и ускорить автоматическим средствам анализа поиск недостатков.
Ну и на последок можно рассмотреть честный Shiftleft security подход - на пример, это умеют некоторые решения класса SCA (Software Composition Analysis).