[Документация Yandex Cloud](../../index.md) > [Yandex Container Registry](../index.md) > [Концепции](index.md) > Сканер уязвимостей

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


{% note warning %}

Функциональность доступна только в [регионе Россия](../../overview/concepts/region.md).

{% endnote %}


Сканер уязвимостей — сервис, который позволяет:
* провести статический анализ [Docker-образа](docker-image.md) на наличие уязвимостей в компонентах, библиотеках и зависимостях, которые используются в Docker-образе;
* сравнить содержимое Docker-образа с базами уязвимостей [CVE](https://cve.mitre.org/).

Сканер уязвимостей работает только с Docker-образами из Container Registry. Пользователь может сканировать те Docker-образы, на которые у него есть [права](../security/index.md).

При сканировании происходит распаковка Docker-образа и поиск версий установленных пакетов (deb). Затем найденные версии пакетов сверяются с базой данных известных уязвимостей.

На данный момент поддерживаются следующие операционные системы, на базе которых собраны пользовательские Docker-образы:

**Операционная система**    | **Поддерживаемые версии**
--------------------------- | -------------------------
AlmaLinux                   | 8, 9, 10
Alpine Linux                | 2.2–2.7, 3.0–3.22, edge
Amazon Linux                | 1, 2, 2023
Azure Linux (CBL-Mariner)   | 1.0, 2.0, 3.0
Bottlerocket                | 1.7.0 и выше
CentOS                      | 6, 7, 8
Chainguard                  | -
CoreOS                      | Все версии (только SBOM)
Debian GNU, Linux           | 7, 8, 9, 10, 11, 12
Echo                        | -
MinimOS                     | -
openSUSE Leap               | 15, 42
openSUSE Tumbleweed         | -
Oracle Linux                | 5, 6, 7, 8
Photon OS                   | 1.0, 2.0, 3.0, 4.0, 5.0
Red Hat Enterprise Linux    | 6, 7, 8, 9, 10 (10 — только SBOM)
Rocky Linux                 | 8, 9
SUSE Linux Enterprise       | 11, 12, 15
SUSE Linux Enterprise Micro | 5, 6
Ubuntu                      | Все версии, поддерживаемые [Canonical](https://canonical.com/)
Wolfi Linux                 | -
ОС с установленной Conda    | -

{% note info %}

Сканирование Docker-образов на наличие уязвимостей [тарифицируется](../pricing.md#scanner).

{% endnote %}

## Сканирование языковых пакетов {#language-packs}

{% note info %}

Сканирование языковых пакетов предоставляется по запросу. Обратитесь в [техническую поддержку](https://kz.center.yandex.cloud/support) или к вашему аккаунт-менеджеру.

{% endnote %}

Сканер уязвимостей автоматически обнаруживает следующие файлы языковых пакетов и анализирует зависимости Docker-образа:

Поддерживаемый язык программирования | Файлы
----- | -----
Ruby | gemspec
Python | egg package </br> wheel package
PHP | composer.lock
Node.js | package.json
.NET | packages.lock.json </br> packages.config </br> .deps.json
Java | JAR/WAR/PAR/EAR ^1^
Go | Двоичные файлы ^2^
Rust | Cargo.lock </br> Двоичные файлы, созданные с помощью cargo-auditable
Dart | pubspec.lock

^1^ `.jar`, `.war`, `.par`, `.ear`.
^2^ Двоичные файлы, сжатые с помощью [UPX](https://upx.github.io/), не работают.

## Типы сканирования {#types}

Можно сканировать загруженные в реестр Docker-образы на наличие уязвимостей:
* [вручную](../operations/scanning-docker-image.md#manual) — сканирование запускается пользователем;
* [при загрузке](../operations/scanning-docker-image.md#automatically) — Docker-образы сканируются автоматически при загрузке;
* [по расписанию](../operations/scanning-docker-image.md#scheduled) — Docker-образы сканируются автоматически по указанному пользователем расписанию.


## Хранение результатов сканирования {#scan-result}

Для каждого Docker-образа хранятся три последних успешных сканирования, которые завершились за последние 30 дней. Если в течение 30 дней Docker-образ не сканировали, хранится только одно последнее сканирование.


## Примеры использования {#examples}

* [Сканирование уязвимостей при непрерывном развертывании приложений Managed Service for Kubernetes с помощью GitLab](../tutorials/cr-scanner-with-k8s-and-gitlab.md).
* [Хранение Docker-образов из проектов Yandex Managed Service for GitLab](../tutorials/image-storage.md).


#### Полезные ссылки {#see-also}

[Как найти уязвимости и не сломать CI/CD-пайплайн](https://yandex.cloud/ru-kz/blog/posts/2023/04/vulnerability-scanner-and-yandex-container-registry).