Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

« Предыдущий Версия 68 Следующий »

Данная статья применима начиная с:

  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.8)
  • Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и РУСБ.10015-10, РУСБ.10015-17
  • Astra Linux Special Edition РУСБ.10015-37 (очередное обновление 7.7)
  • Astra Linux Special Edition РУСБ.10152-02 (очередное обновление 4.7

Аннотация

Протокол автоматизации содержимого безопасности (SCAP, Security Content Automation Protocol) — это набор стандартов и спецификаций, разработанных для автоматизации управления безопасностью информационных систем. SCAP позволяет организациям оценивать состояние безопасности своих систем, выявлять уязвимости и соответствие политике безопасности. Он включает в себя несколько компонентов, таких как языки для описания уязвимостей (CVE), конфигураций (CIS) и проверок соблюдения политик (XCCDF). Основная цель SCAP — упростить и ускорить процесс оценки и управления рисками, обеспечивая автоматизированные и стандартизированные методы анализа безопасности. SCAP включает в себя язык описания уязвимостей OVAL.

OVAL-описания

Язык уязвимостей и оценки (OVAL, Open Vulnerability and Assessment Language) — это стандартный декларативный язык, используемый для описания уязвимостей в системах и программном обеспечении, а также для оценки их наличия. OVAL позволяет автоматически собирать информацию о состоянии безопасности систем и проводить анализ уязвимостей. В качестве файла базы данных уязвимостей в Astra Linux Special Edition используется OVAL-файл в формате xml.

Общий принцип работы сканеров уязвимостей

  1. Обнаружение узлов сети: сканер выявляет доступные по сети устройства и их характеристики.
  2. Сканирование портов: сканер проверяет открытые порты, исследуя сетевые сервисы и протоколы.
  3. Идентификация уязвимостей: сканер ищет уязвимости в конфигурациях устройств, операционных систем и приложений, сопоставляя найденные конфигурации с имеющимися в собственной базе данных.
  4. Генерация отчетов: по итогам сканирования создается отчет с перечнем обнаруженных уязвимостей и отображаются рекомендации по их исправлению.

Сканирование уязвимостей выполняется с использованием файла базы данных уязвимостей, рекомендуемого ФСТЭК России и содержащего сведения об уязвимостях банка данных угроз безопасности информации ФСТЭК России.

В целях исключения ложных срабатываний при проведении контроля (анализа) защищенности информационных систем, функционирующих под управлением ОС Astra Linux, необходимо руководствоваться:

  • списком устраненных уязвимостей (доступен в личном кабинете пользователя);
  • перечнями устраненных и неактуальных уязвимостей ОС Astra Linux, представленными в формате, используемом средствами анализа защищенности в качестве источника сведений об уязвимостях (OVAL-описания), (предоставляются по запросу в техническую поддержку).

Обзор сканеров уязвимости для Astra Linux Special Edition

OpenScap

Набор библиотек с открытым исходным кодом, обеспечивающий поддержку линейки стандартов SCAP. Включает в себя инструмент-сканер openscap-scanner.

Сканер уязвимостей OpenScap входит в расширенный репозиторий Astra Linux Special Edition начиная с версии 1.7.5

Основные возможности инструмента-сканера в составе OpenScap:

  • представление информации о конфигурации систем для тестирования;

  • анализ системы на наличие заданного состояния машины (уязвимость, конфигурация, состояние исправления и т. д.);

  • генерация отчёта о результатах этой оценки.

Сканирование уязвимостей выполняется с использованием файла базы данных уязвимостей, рекомендуемого ФСТЭК России и содержащего сведения об уязвимостях банка данных угроз безопасности информации ФСТЭК России. В качестве файла базы данных уязвимостей при общесистемном сканировании используется OVAL-файл /usr/share/oval/db.xml.

ScanOVAL

Сканер разработан компанией «Алтэкс-Софт» совместно с ФСТЭК России. В качестве базы данных уязвимостей использует банк данных угроз безопасности информации (БДУ) ФСТЭК России.

Основные возможности ScanOVAL:

  • загрузка XML-файлов с OVAL-описаниями уязвимостей, выполненными в соответствии со спецификацией OVAL версии не ниже 5.10.1;
  • обнаружение на основании обработки данных, представленных в XML-файлах, уязвимостей программного обеспечения;
  • классификация обнаруженных уязвимостей по критичности;
  • генерация отчёта с результатами проверки.

Работа с OpenScap

  1. Установить OpenScap:
    sudo apt install openscap-scanner openscap-utils openscap-common bzip2

    получить информацию о версии установленного сканера можно выполнив команду oscap -V

    oscap -V

    OpenSCAP command line tool (oscap) 1.3.7
    Copyright 2009--2021 Red Hat Inc., Durham, North Carolina.

    ==== Supported specifications ====
    SCAP Version: 1.3
    XCCDF Version: 1.2
    OVAL Version: 5.11.1
    CPE Version: 2.3
    CVSS Version: 2.0
    CVE Version: 2.0
    Asset Identification Version: 1.1
    Asset Reporting Format Version: 1.1
    CVRF Version: 1.1

    ==== Capabilities added by auto-loaded plugins ====
    SCE Version: 1.0 (from libopenscap_sce.so.25)

    ==== Paths ====
    Schema files: /usr/share/openscap/schemas
    Default CPE files: /usr/share/openscap/cpe

    ==== Inbuilt CPE names ====
    Red Hat Enterprise Linux - cpe:/o:redhat:enterprise_linux:-
    Red Hat Enterprise Linux 5 - cpe:/o:redhat:enterprise_linux:5
    Red Hat Enterprise Linux 6 - cpe:/o:redhat:enterprise_linux:6
    Red Hat Enterprise Linux 7 - cpe:/o:redhat:enterprise_linux:7
    Red Hat Enterprise Linux 8 - cpe:/o:redhat:enterprise_linux:8
    Community Enterprise Operating System 5 - cpe:/o:centos:centos:5
    Community Enterprise Operating System 6 - cpe:/o:centos:centos:6
    Community Enterprise Operating System 7 - cpe:/o:centos:centos:7
    Community Enterprise Operating System 8 - cpe:/o:centos:centos:8
    Fedora 32 - cpe:/o:fedoraproject:fedora:32
    Fedora 33 - cpe:/o:fedoraproject:fedora:33
    Fedora 34 - cpe:/o:fedoraproject:fedora:34
    Fedora 35 - cpe:/o:fedoraproject:fedora:35

    ==== Supported OVAL objects and associated OpenSCAP probes ====
    OVAL family   OVAL object                  OpenSCAP probe               
    ----------    ----------                   ----------                   
    independent   environmentvariable          probe_environmentvariable
    independent   environmentvariable58        probe_environmentvariable58
    independent   family                       probe_family
    independent   filehash                     probe_filehash (MD5, SHA-1)
    independent   filehash58                   probe_filehash58 (MD5, SHA-1, SHA-224, SHA-256, SHA-384, SHA-512)
    independent   sql                          probe_sql
    independent   sql57                        probe_sql57
    independent   system_info                  probe_system_info
    independent   textfilecontent              probe_textfilecontent
    independent   textfilecontent54            probe_textfilecontent54
    independent   variable                     probe_variable
    independent   xmlfilecontent               probe_xmlfilecontent
    independent   yamlfilecontent              probe_yamlfilecontent
    linux         dpkginfo                     probe_dpkginfo
    linux         iflisteners                  probe_iflisteners
    linux         inetlisteningservers         probe_inetlisteningservers
    linux         partition                    probe_partition
    linux         rpminfo                      probe_rpminfo
    linux         rpmverify                    probe_rpmverify
    linux         rpmverifyfile                probe_rpmverifyfile
    linux         rpmverifypackage             probe_rpmverifypackage
    linux         selinuxboolean               probe_selinuxboolean
    linux         selinuxsecuritycontext       probe_selinuxsecuritycontext
    linux         systemdunitdependency        probe_systemdunitdependency
    linux         systemdunitproperty          probe_systemdunitproperty
    unix          dnscache                     probe_dnscache
    unix          file                         probe_file
    unix          fileextendedattribute        probe_fileextendedattribute
    unix          interface                    probe_interface
    unix          password                     probe_password
    unix          process                      probe_process
    unix          process58                    probe_process58
    unix          routingtable                 probe_routingtable
    unix          runlevel                     probe_runlevel
    unix          shadow                       probe_shadow
    unix          symlink                      probe_symlink
    unix          sysctl                       probe_sysctl
    unix          uname                        probe_uname
    unix          xinetd                       probe_xinetd
  2. Получить архив с OVAL-файлом:
    wget https://www.debian.org/security/oval/oval-definitions-bookworm.xml.bz2
  3. Распаковать архив:
    bzip2 -d oval-definitions-bookworm.xml.bz2

    получить информацию о содержимом OVAL-файла можно выполнив команду oscap info <путь до файла>. 

    oscap info oval-definitions-bookworm.xml

    Document type: OVAL Definitions 
    OVAL version: 5.11.2
    Generated: 2024-10-17T03:31:08.188-04:00
    Imported: 2024-10-17T06:31:2
  4. Запустить процесс сканирования указав путь до генерируемого отчёта и до OVAL-файла :
    sudo oscap oval eval --report oval-bookworm.html oval-definitions-bookworm.xml

    добавить в результаты сканирования xml-файл для последующей автоматизированной обработки результатов сканирования можно указав дополнительный параметр --results <имя_файла_отчёта>.xml

Интерпретация результатов сканирования

Открыть в браузере файл oval-bookworm.html:

В нижней части html-документа располагаются результаты сканирования.

Значение полей OVAL Definition Results :

  • ID — уникальный идентификатор описания;
  • Result — результат выполнения проверки: false — если проблем не обнаружено, true — требуется устранение обнаруженной уязвимости;
  • Class — для OVAL-файлов всегда принимает значение vulnerability (уязвимость);
  • Reference ID — ссылка на бюллетень безопасности, где хранится дополнительная информация об уязвимости;
  • Title — заголовок названия бюллетеня, позволяющий понять, о какой уязвимости идёт речь.

Подробная справка по инструменту доступна в руководстве man oscap.

Работа с Scanoval 

Установка Scanoval:

  1. Скачать архив установщика и deb-пакет с обновлениями с сайта ФСТЭК.
  2. Распаковать архив в каталог:
    sudo tar -C /var/lib -xvf <scanovalrepo_версия_пакета>.tar.gz
  3. Установить открытый ключ из архива:
    sudo apt-key add /var/lib/scanoval/repo/PUBLIC-GPG-KEY-scanoval
  4. Создать конфигурационный файл локального репозитория:
    echo "deb file:///var/lib/scanoval/repo 1.7_x86-64 main content" | sudo tee -a /etc/apt/sources.list.d/scanoval.list
  5. Обновить информацию о пакетах:
    sudo apt update
  6. Установить сканер уязвимостей Scanoval и дополнительные необходимые для работы пакеты:
    sudo apt-get install openscap-scanner openscap-common openssl scanoval
  7. Установить deb-пакет с актуальным обновлением инструмента и OVAL-файлом:
    sudo dpkg -i <scanovalcontent_версия>.deb

Запуск Scanoval:

sudo /usr/bin/scanoval

Перед проведением процесса сканирования необходимо:

  1. Убедиться в том, что в Scanoval загружена актуальная версия OVAL-файла.
  2. Отключить режим режим замкнутой программной среды.

Для загрузки описаний уязвимостей в главном окне Scanoval необходимо нажать на кнопку <Открыть файл>:


В появившемся диалоговом окне выбрать необходимый файл и нажать кнопку <Открыть>. В главном окне Scanoval появится список выбранных описаний уязвимостей:


XML-файл может быть загружен с локального диска компьютера, сетевого диска или иного места, доступного пользователю на данном компьютере. По умолчанию XML-файл с OVAL-описаниями уязвимостей находится в папке  /var/lib/scanoval/data

Для добавления или удаления уже загруженных OVAL-описаний необходимо повторно нажать кнопку <Открыть файл> и в появившемся окне выбрать требуемую операцию: <Добавить OVAL файл> или <Удалить все файлы>. Добавление осуществляется в диалоговом режиме. Для подтверждения операции необходимо нажать кнопку <Загрузить>:

При загрузке OVAL-файла проверяется его цифровая подпись. Если проверка завершилась неудачно, содержимое OVAL-файла игнорируется.

Для обнаружения уязвимостей необходимо нажать на кнопку <Выполнить аудит>

По окончании проверок сообщение «Выполнение...» исчезает, при этом в главном окне появляются результаты проверок с сообщениями «обнаружено» / «не обнаружено»:

Доступна функция сохранения результатов сканирования в формате HTML или CSV:

Обновление Scanoval:

  1. Удалить текущую версию обновлений Scanoval:
    sudo apt-get remove scanoval-content-alse17
  2. Скачать deb-пакет с актуальным обновлением инструмента и OVAL-файлом.
  3. Установить deb-пакет с актуальным обновлением инструмента и OVAL-файлом:
    sudo dpkg -i <scanovalcontent_версия>.deb
  4. Перед запуском сканирования после нажатия кнопки <Добавить OVAL файл> , далее выбрать актуальный xml-файл с OVAL .

Сканирование в образах Docker/Podman

Средства контейнеризации, которые используется в составе Astra Linux Special Edition, модифицированы. При скачивании, запуске и тд образов, он производит сканирование образа на предмет наличия уязвимостей с помощью библиотеки OpenSCAP.

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

  • создание образа из Dockerfile или из контейнера;
  • загрузка образа из архива или потока ввода;
  • создание файловой системы образа из архива;
  • скачивание образа из реестра;
  • запуск или перезапуск контейнера.

Файл базы данных уязвимостей для контейнеров и образов:

  • в версии Docker 24.0.2+ci14 и выше: /usr/share/oval/db.xml.
  • в версиях Docker 24.0.2+astra16 и ниже: usr/share/docker.io/db-oval.xml.

Регистрация событий безопасности, связанных с образами и контейнерами Podman и Docker осуществляется подсистемой регистрации событий. Событиям безопасности, связанным с образами и контейнерами Docker, присваиваются метки dockerd_audit. Событиям безопасности, связанным с образами и контейнерами Podman, присваиваются метки podman_audit. Записи в журнале имеют следующий формат:

podman.audit | user ; uid | событие | результат | дополнительная информация


При обнаружении уязвимостей дальнейшее использование образа контейнера запрещено.

Для устранения обнаруженной уязвимости и последующего запуска контейнера без блокировки, необходимо:

  1. Запустить средство контейнеризации в режиме отладки (6 класс защиты).
  2. Запустить контейнер и устранить уязвимость путём обновления библиотек.
  3. Запустить средство контейнеризации с требуемым классом защиты.

Для блокировки запуска контейнера, в образе которого обнаружена уязвимость, применяется глобальный параметр astra-sec-level в конфигурационных файлах средств контейнеризации. В качестве значения параметра задается число от 1 до 6, которое определяет класс защиты:

  • 1-5 классы защиты — при обнаружении уязвимости в контейнере его запуск блокируется;
  • 6 класс защиты — отладочный режим, при обнаружении уязвимости в контейнере выводится соответствующее предупреждение, при этом запуск контейнера не блокируется.

В случае если класс защиты не задан или задан не из диапазона 1-6, то при обнаружении уязвимости в контейнере автоматически задается 1 класс защиты с выводом соответствующего сообщения в журнал и запуск контейнера блокируется.

Docker

Для указания класса защиты контейнеров Docker допускается использовать только один из способов. 


Установить значение параметра astra-sec-level можно тремя способами:

  • с помощью параметров запуска службы:
    1. Открыть редактор для добавления параметра запуска службы и добавить туда строку:
      sudo systemctl edit docker

      [Service]

      Environment="DOCKER_OPTS=--astra-sec-level <класс_защиты>" # от 1 до 6


    2. Перезапустить службу:
      sudo systemctl restart docker


  • с помощью конфигурационного файла:
    1. Остановить службу:
      sudo systemctl stop docker

    2. В файле /etc/docker/daemon.json добавить поле astra-sec-level:
      sudo cat /etc/docker/daemon.json
      {
          "astra-sec-level" : <класс_защиты> # значение от 1 до 6
      }

    3. Повторно запустить службу:
      sudo systemctl start docker

  • разово:
    1. Остановить службу:
      sudo systemctl stop docker
    2. Перезапустить службу с указанным параметром:
      sudo dockerd --astra-sec-level <класс_защиты> # значение от 1 до 6

Podman

Создать конфигурационный файл /etc/podman.conf, если он не был создан ранее, и указать в нем значение параметра astra-sec-level:

{
"astra-sec-level" : <класс_защиты> # значение от 1 до 6
}

Для просмотра настроек выполнить:

podman astra-config

{

"astra-sec-level": <класс_защиты>, # значение от 1 до 6

"oscap-report-dir": "/home/astra/.podman/scanoval/reports", # путь к отчёту о сканировании

"oscap-exec": "/usr/bin/oscap",

"oscap-db-xml": "/usr/share/oval/db.xml" # путь к OVAL-файлу с описанием уязвимостей

}

 

Начиная с Astra Linux 1.8,  можно увидеть запись о включенных событиях безопасности в Журнале системных событий. Чтобы включить регистрацию нужных событий, например "Сканирование образа", соответствующее событие необходимо включить в Настройках регистрации системных событий:


image-2024-9-19_11-47-5.png

После настройки включенные события начнут появляться в журнале. Можно узнать дополнительную информацию о событии:

image-2024-9-19_11-51-40.png


  • Нет меток