|
В состав Astra Linux Special Edition входят системы контейнеризации Docker и Podman. В соответствии с требованиями ФСТЭК эти системы должны обеспечивать следующий функционал:
Для реализации этих требований в состав Astra Linux Special Edition включена система выявления уязвимостей в контейнерах. Далее в статье описан порядок установки, настройки и применение этой системы.
Система сканирования уязвимостей представлена в пакетах openscap-scanner и oval-db. Эти пакеты устанавливаются автоматически при установке систем контейнеризации Docker или Podman. Также пакеты могут быть установлены отдельно, например, для загрузки oval-описаний с последующим копированием этих описаний в изолированную сесть.
При установке пакетов сразу устанавливаются oval-описания для контейнеров Astra Linux. Эти описания будут обновляться по мере установки оперативных обновлений, однако для более быстрой актуализации описаний следует настроить автоматическое обновление. Порядок настройки автоматического обновления описан далее. Oval-описания для
После установки пакетов система готова к работу с базовыми настройками (настройками по умолчанию). Начиная с обновлений 1.8.3 (для Docker и Podman) и 1.7.8 (только для Docker) по умолчанию применяются следующие настройки:
Таким образом, при использовании контейнеров Astra Linux система сканирования может эксплуатироваться сразу после установки, не требуя специальных настроек, кроме настройки автоматического обновления oval-описаний для образов Astra Limux.
Конфигурация системы сканирования находится в следующих файлах:
{
"scan_on_image_create": true,
"scan_on_container_start": true,
"periodic_scan_time_in_hours": 168
} |
{
"scan_on_image_create": true,
"scan_on_container_start": true,
"swarm_rules_enabled": true,
"periodic_scan_time_in_hours": 168
} |
В системе сканирования уязвимостей имеется возможность обновлять и добавлять собственные oval-описания. Это можно сделать следующими способами:
| На сервере Astra Linux хранятся oval-описания только для контейнеров Astra Linux. Для других ОС oval-описания добавляются вручную. |
| sudo oval-db auto-update -e |
Jul 3 10:29:01 se18-25055 systemd[1]: Starting oval-dbd.service - OVAL Database Daemon... Jul 3 10:29:01 se18-25055 systemd[1]: Started oval-dbd.service - OVAL Database Daemon. Jul 3 10:29:01 se18-25055 oval-dbd[32338]: 2025/07/03 10:29:01 INFO failed to read config file /usr/share/oval/conf/daemon.json, open /usr/share/oval/conf/daemon.json: no such file or directory. Using defaults. Jul 3 10:29:01 se18-25055 oval_dbd_audit[32338]: oval_dbd.audit|0|root|cafa28faa9564b38958266d01e99a706|oval_dbd.started|success|socketPath=/tmp/oval-dbd/daemon_vul_scanner.sock Jul 3 10:29:01 se18-25055 oval_dbd_audit[32338]: oval_dbd.audit|0|root|cafa28faa9564b38958266d01e99a706|oval_dbd.started|success|socketPath=/tmp/oval-dbd/daemon_cli.sock |
| sudo oval-db auto-update -e=false |
sudo oval-db update -v all |
sudo oval-db update -v 1.8_x86-64. |
Oval-описания для сторонних ОС доступны на на Интернет-ресурсах производителей этих ОС. Для загрузки этих описаний и, возможно, их распаковки после загрузки, следуйте инструкциям производителей.
Для добавления загруженного и распакованного файла с oval-описанием в базу данных системы сканирования используется команда:
| sudo oval-db load -f <полный_абсолютный_путь_к_файлу> -o <имя_ОС> -v <версия_ОС> |
Флаги команды:
Информация для значений флагов -o и -v доступна в файле /etc/os-release.
Пример для Ubuntu (https://security-metadata.canonical.com/oval/ - примеры файлов для Ubuntu):
| wget https://security-metadata.canonical.com/oval/com.ubuntu.noble.cve.oval.xml.bz2 |
| bunzip2 -k com.ubuntu.noble.cve.oval.xml.bz2 |
| sudo oval-db load -o ubuntu -v 24.04 -f `pwd`/com.ubuntu.noble.cve.oval.xml |
После загрузки в каталоге /usr/share/oval/db/<имя_ОС>/<версия_ОС>/ будут созданы файлы базы данных, в которых описания угроз будут сгруппированы по степени их критичности, и файл manifest.json с общим описанием. Для приведенного выше примера файла Ubuntu Nobble (24.04):
-rwxrwxr-x 1 root root 37747 июл 3 14:27 CriticalSeverity.xml |
Для удаления ранее загруженных oval-описаний используется команда:
| sudo oval-db remove -o <имя_ОС> -v <версия_ОС> |
Флаги команды задают название и версию ОС, аналогично флагам команды добавления описания.
Восстановление oval-описаний из резервных копия
При выполнении обновления oval-описаний старые старые описания не удаляются, а перемещаются в подкаталог backup. Таким образом создается резервная копия, с помощью которой можно восстановить старые файлы при необходимости. Команда для восстановления:
| sudo oval-db restore -o <имя_ОС> -v <версия_ОС> |
Флаги команды определяют имя и версию ОС аналогично флагам команд загрузки и удаления.
Начиная с обновления 1.7.8 и 1.8.3 сканирование выполняется в следующем порядке:
В более ранних обновлениях система контейнеризации получала список образов раз в 7/30 дней (в зависимости от настройки astra-sec-level) и сканировал каждый образ из списка на уязвимости.