Привязка образов Docker к конкретному тегу — только первый шаг. Второй шаг — узнать, какие CVE находятся внутри образа перед его развертыванием на хосте. Сканер читает слои образа, перечисляет все пакеты ОС и зависимости языка программирования, а затем проверяет каждый из них по базам данных CVE. Семь приложений ниже охватывают локальные инструменты CLI, средства запуска CI и размещенные платформы в бесплатном и платном формах.
На что обратить внимание при выборе сканера образов
Учитывайте это перед выбором:
- Охват. CVE пакетов ОС (RPM, DEB, APK, Alpine) плюс CVE пакетов языков программирования (npm, pip, gem, cargo, Go modules). Не каждый инструмент ловит оба типа.
- Рекомендации по исправлениям. Простой список CVE — это шум. Хорошие инструменты показывают конкретную версию пакета для обновления.
- Вывод SBOM. Вывод счета материалов программного обеспечения SPDX или CycloneDX теперь является требованием соответствия в некоторых секторах.
- Интеграция CI. Сломать сборку при критическом CVE или открыть PR для обновления пакета.
- Проверка во время выполнения. Некоторые инструменты также отслеживают работающие контейнеры на предмет поведенческих аномалий. В большинстве случаев только для корпоративных версий.
Быстрое сравнение
| Приложение | Лучше всего для | Время выполнения | Бесплатно | SBOM | Рекомендации по исправлениям |
|---|---|---|---|---|---|
| Trivy | Сканер с открытым исходным кодом по умолчанию | Любой (CLI, CI) | Да | Да | Да |
| Grype | Сканирование CVE на базе Anchore | Любой (CLI, CI) | Да | Да | Да |
| Docker Scout | Родной Docker Desktop | Docker Desktop | Бесплатно (личное) | Да | Да |
| Snyk Container | Оплачиваемый рабочий процесс CI-first | Любой | Бесплатный уровень | Да | Да |
| Clair | Сканирование со стороны реестра | Сервер | Да | Частично | Да |
| Anchore Engine | Управляемое политикой предприятие | Сервер | Да | Да | Да |
| Syft | Инструмент-компаньон только для SBOM | Любой (CLI, CI) | Да | Да | Нет |
1. Trivy, лучший выбор с открытым исходным кодом
Trivy от Aqua Security сканирует образы контейнеров, файловые системы, репозитории git и кластеры Kubernetes на предмет CVE, неправильных конфигураций и раскрытых секретов. Он считывает пакеты ОС и зависимости языков из коробки, создает SBOM и работает как CLI, действие GitHub или оператор Kubernetes.
Причина выбрать его — охват. Trivy ловит то, что пропускают выделенные сканеры ОС (CVE npm/pip) и то, что пропускают выделенные сканеры языков (CVE основного образа ОС) за один проход.
Где он не справляется: Корпоративные функции (политика, панели мониторинга, RBAC) находятся в платном продукте Aqua. Бесплатный CLI не выполняет отчеты масштаба компании.
Цена: Бесплатно и открытый исходный код (Apache 2.0). Платформа Aqua с платным обслуживанием для предприятий.
Платформы: Windows, macOS, Linux (CLI); средства запуска CI; Kubernetes.
Итоговая строка: Установка по умолчанию для сканирования образов.
2. Grype, лучший вариант семейства Anchore
Grype — это сканер CVE из семейства Anchore. Он читает SBOM, созданные Syft (его сестринским инструментом) и сопоставляет их с общедоступными каналами CVE. Причина использования Grype конкретно в том, что вы уже создаете SBOM с Syft, или если вы хотите более четкого разделения между “создать инвентарь” и “проверить инвентарь на CVE”.
Некоторые команды сочетают Syft + Grype для разделения SBOM/CVE; другие используют Trivy для обоих в одном вызове.
Где он не справляется: Охват сильно перекрывается с Trivy. Выбор Grype вместо Trivy — это больше вопрос предпочтения, чем возможностей.
Цена: Бесплатно и открытый исходный код (Apache 2.0). Платное Anchore Enterprise для политики и отчетов.
Платформы: Windows, macOS, Linux (CLI); средства запуска CI.
Загрузить: github.com/anchore/grype
Итоговая строка: Выбирайте это, если вы уже используете Syft или Anchore. В противном случае Trivy.
3. Docker Scout, лучший родной вариант Docker Desktop
Docker Scout поставляется в Docker Desktop и интегрируется с Docker Hub. Отправьте образ на Docker Hub, и Scout будет сканировать его автоматически. В Docker Desktop запустите docker scout cves <image> для локального сканирования.
Причина выбрать его в том, что если вы уже запускаете Docker Desktop, Scout находится в одной команде без дополнительной установки. Он также показывает рекомендацию базового образа для уменьшения уязвимой поверхности.
Где он не справляется: Бесплатный уровень охватывает три репозитория на Docker Hub. Полное сканирование на уровне организации — это платная подписка Docker Business.
Цена: Бесплатный личный уровень. Подписка Docker Business для функций команды.
Платформы: Docker Desktop (Windows, macOS, Linux) и Docker Hub.
Загрузить: docs.docker.com/scout
Итоговая строка: Самый простой способ начать работу с Docker Desktop.
4. Snyk Container, лучший платный рабочий процесс CI-first
Snyk Container интегрируется с GitHub, GitLab и Bitbucket для сканирования образов, указанных в ваших Dockerfiles и манифестах Kubernetes. Он открывает PR для обновления базовых образов и пакетов языков, а также отслеживает исправление CVE с течением времени на панели мониторинга.
Причина платить — это рабочий процесс исправления: Snyk не просто сообщает CVE, он создает фактический PR, который их исправляет.
Где он не справляется: Бесплатный уровень щедр для личного использования; большим командам нужны оплачиваемые сиденья. Некоторые предпочитают держать средства безопасности с открытым исходным кодом.
Цена: Бесплатный уровень (ограниченные сканы). Оплачиваемые планы Team и Business.
Платформы: Веб, CLI, интеграции CI/CD.
Загрузить: snyk.io
Итоговая строка: Выбор, когда вы хотите автоматизированные PR исправления и можете это позволить.
5. Clair, лучший сканер со стороны реестра
Clair от CoreOS/Quay — это сервер, который сканирует образы при их отправке в реестр контейнеров. Он сохраняет результаты и предоставляет их через API. Harbor и Quay оба нативно интегрируют Clair.
Причина выбрать его в том, что если вы самостоятельно размещаете реестр (Harbor, Quay) и хотите, чтобы сканы происходили при отправке, а не при каждом запуске CI.
Где он не справляется: Компонент сервера для запуска и обслуживания. Не CLI, который вы вызываете с ноутбука.
Цена: Бесплатно и открытый исходный код (Apache 2.0).
Платформы: Сервер (Linux, контейнер).
Загрузить: github.com/quay/clair
Итоговая строка: Выбор, когда вы самостоятельно размещаете реестр и хотите централизованное сканирование.
6. Anchore Engine, лучший управляемый политикой корпоративный вариант
Anchore Engine (и его преемник Anchore Enterprise) сканирует образы, оценивает их против правил политики (нет пользователя root, нет CVE выше High, все пакеты младше двух лет), и выводит вердикт pass/fail. Он подключается к CI в качестве шлюза.
Причина выбрать его вместо Trivy или Grype — это слой политики. Если соответствие требует подписанного прохождения политики, Anchore построен для этого потока.
Где он не справляется: Корпоративная установка. Избыточно для домашней лаборатории.
Цена: Бесплатный движок с открытым исходным кодом. Платное Anchore Enterprise для политики, RBAC и отчетов.
Платформы: Сервер (Linux, контейнер). Интеграции CI.
Загрузить: anchore.com · GitHub
Итоговая строка: Выбор, когда соответствие требует оценки политики, не просто список CVE.
7. Syft, лучший компаньон только для SBOM
Syft создает SBOM (SPDX или CycloneDX) из образа контейнера или файловой системы. Это не сканер CVE. Объедините его с Grype для проверки CVE или передайте SBOM на другой инструмент соответствия.
Причина выбрать Syft в одиночку — если ваша работа создавать SBOM для соответствия (SLSA, указ executive order 14028) и анализ CVE происходит в другом месте.
Где он не справляется: Не проверяет CVE самостоятельно. Нужны Grype или другой инструмент.
Цена: Бесплатно и открытый исходный код (Apache 2.0).
Платформы: Windows, macOS, Linux (CLI); средства запуска CI.
Загрузить: github.com/anchore/syft
Итоговая строка: Выбор, когда SBOM — это поставляемое, не список CVE.
Как выбрать
- Установка по умолчанию: Trivy.
- Уже используете Anchore или Syft: Grype.
- Уже запускаете Docker Desktop: Docker Scout.
- Хотите автоматизированные PR исправления: Snyk Container.
- Самостоятельно размещаете Harbor или Quay: Clair.
- Шлюз политики соответствия: Anchore Enterprise.
- SBOM — это поставляемое: Syft + Grype.
FAQ
Какой сканер имеет лучший охват CVE?
Trivy и Grype практически равны в 2026 году, потому что оба используют одни и те же источники данных (NVD, GitHub Advisory, Alpine SecDB). Охват нишевых экосистем (Erlang, R) варьируется больше между ними.
Должны ли я сканировать образы в CI или во время выполнения?
И то, и другое. Сканирование во время CI ловит известные уязвимости перед слиянием. Сканирование во время выполнения ловит недавно раскрытые CVE против уже развернутых образов. Trivy работает в обоих режимах.
Как я могу сломать сборку CI при критическом CVE?
Каждый сканер в этом списке поддерживает порог серьезности. Trivy: trivy image --severity CRITICAL --exit-code 1 my-image:1.2.3. Подобные флаги существуют для Grype, Scout и Snyk.
Docker Scout лучше, чем Trivy?
Преимущество Scout — рекомендация базового образа и интеграция Docker Hub. Преимущество Trivy — это работает везде и охватывает больше целей сканирования. Большинство команд используют оба.
Защищают ли сканеры от атаки на цепочку поставок в зависимостях?
Частично. Они ловят известные CVE. Они не могут обнаружить вредоносный пакет без раскрытого CVE. Объедините с проверкой подписей npm/pip, удостоверениями происхождения (SLSA) и подписанием Sigstore для защиты в глубину.