← Linux: безопасность
11 мин · средне · Урок 4 из 5

Сканирование образов на уязвимости

Откуда в образах уязвимости, как работают сканеры и почему сканер — процесс и один из сигналов, а не приговор.

Откуда в образе уязвимости

Образ из урока про Docker — базовый слой плюс установленные пакеты и зависимости приложения. В любом из них может найтись известная уязвимость: старая версия openssl в базовом образе, библиотека с дырой в зависимостях. Эти уязвимости публикуются с идентификаторами CVE. Сканер образа сравнивает то, что лежит внутри, с базами CVE и сообщает о совпадениях.

Что делает сканер

Сканер разбирает образ по слоям, собирает список пакетов и их версий и сверяет с базой известных уязвимостей. На выходе список находок с уровнем критичности.

$ scan myimage:1.4
PKG        VERSION   SEVERITY  CVE
openssl    1.1.1k    HIGH      CVE-2022-xxxx
libxml2    2.9.10    MEDIUM    CVE-2021-xxxx

Конкретных инструментов много (Trivy, Grype, Clair и другие), и они взаимозаменяемы. Из урока про CI сканирование встраивают в пайплайн как этап перед публикацией образа: нашли критичную уязвимость, и образ дальше не едет.

Как меньше сканировать

Лучший способ иметь меньше уязвимостей — иметь меньше содержимого:

Меньше слоёв и пакетов означает меньше площади для уязвимостей.

Сканер — один из сигналов, а не приговор

Важная оговорка, и относиться к ней стоит серьёзно. Сканер полезен, но доверять ему слепо нельзя:

Поэтому сканирование — процесс: регулярно, обновляемыми базами, с разбором находок, а не разовая галочка «прогнали инструмент».

Что важно запомнить

Уязвимости попадают в образ через базовый слой и пакеты; сканер сверяет содержимое с базами CVE и встраивается в пайплайн перед публикацией.

Меньше содержимого означает меньше дыр: минимальный базовый образ, multi-stage, свежие версии. Это надёжнее, чем чинить найденное.

Сканер — процесс и один из сигналов: базы у инструментов разные, бывают ложные срабатывания и пропуски, у вендоров случаются инциденты. Зелёный сканер не означает «безопасно», поэтому находки разбирают по реальному риску.

В следующем уроке разберём минимум привилегий и роли.

Прошли материал до конца? Отметьте урок пройденным.