Система идентификации установленного ПО на основе анализа данных

Заказчик:
ПАО Сбербанк
Руководитель проекта со стороны заказчика
Год завершения проекта
2025
Сроки выполнения проекта
ноябрь, 2024 — октябрь, 2025
Масштаб проекта
2000 автоматизированных рабочих мест
Цели

Предпосылки: В банке используется более 1200 серверных программных продуктов, разворачиваемых в различных средах. Наличие оперативной информации об экземплярах (установках) ПО, а также его версии является важной задачей для надёжности и кибербезопасности Банка и требует ежедневного анализа огромного количества артефактов. При этом не существует единого способа идентификации для всех продуктов.

Обеспечение идентификации экземпляров всех программных продуктов и поддержание её в актуальном состоянии силами выделенной команды потребовало бы 30-40 специалистов с компетенцией по нескольким программным продуктам одновременно.

Цель: создать систему, которая позволит профильным экспертам по программным продуктам самостоятельно с минимальными трудозатратами анализировать множество доступных артефактов и настраивать модели идентификацию экземпляров ПО, накопить данные для обучения AI-модели и минимизировать участия человека в идентификации новых версий программных продуктов.

  • Реализована ежедневная поставка артефактов ПО с 600+ тыс. серверов и 3.65+ млн. контейнеров. (В сумме система ежедневно обрабатывает более 1 млрд. артефактов)

  • Реализован UI конструктора алгоритмов, позволяющий эксперту по ПО в несколько кликов создавать новые правила идентификации

  • Экспертами описано 7.3 тыс. алгоритмов по 530 продуктам, на основании которых обнаруживается 4.1 млн. экземпляров

  • Адаптированы и внедрены рекомендации стандарта 19770 для разметки экземпляров ПО заказной и собственной разработки

  • Скорость реализации идентификации нового продукта/версии продукта увеличилась в 10 раз без увеличения численности экспертов по ПО

Уникальность проекта

  • Количество объектов и объём ежедневно собираемых обновляемых данных о них: 600+ тыс. серверов, 3,65 млн. контейнеров, 1+ млрд. артефактов (объектов данных)

  • Эксперты, ответственные за программные продукты, работают с большими данными в формате self-service, который не требует знания какого-либо языка программирования и/или привлечения разработчиков

  • Охват не только серверной, но и контейнерной среды вычислений

  • Реализация стандарта ISO 19770 для маркирования установок ПО

Использованное ПО

Система полностью собственной разработки на фрэймворке  Java Spring-Boot

В качестве СУБД используются Platform V Pangolin DB (РРПО №18785) и Platform V DataMarts

Сервера развёрнуты на базе операционной системы Platform V SberLinux OS Server (РРПО №18785)

В качестве ETL платформы используется Комплексное решение автоматизированного сбора конфигурационной информации ИТ (РРПО №27167)

Сложность реализации
  1. Внедрение концепции самообслуживания (self-service) - была проделана большая работа по проектированию и созданию UI который позволял бы описывать достаточно сложные алгоритмы, но при этом был бы интуитивно понятным и мог бы использоваться без длительной предварительной подготовки.

  2. Обеспечить обработку больших объемов данных в фиксированные сроки. Необходимо обеспечить загрузку и обработку всего массива данных за ночь, чтобы с началом рабочего дня обеспечить наличие в системе актуальной информации. При этом сценарии ETL должны быть синхронизированы со сценариями систем поставщиков данных, которые также могут занимать значительное время.

  3. Определение данных, потерявших актуальность. С учётом участия в процессе передачи и обработки данных нескольких систем встала нетривиальная задач а оценки того, какие данные актуальны, какие потеряли актальность в виду их удаления с источника, а какие в следствии возникших сбоев на маршруте передачи данных, что важно для дальнейшей их интерпретации.

Описание проекта

В систему ежедневно загружаются данные об артефактах ПО из нескольких источников:

  • Из комплекса решений сбора конфигурационной информации – данные об артефактах обнаруженных на серверах, такие как RPM пакеты, AddRemovePrograms, список файлов, SWIDTAG и др.

  • С кластеров Platform V DropApp и OpenShift данные об активных контейнерах и образах в них

  • Из сканера дистрибутивов артефакты, обнаруженные в дистрибутиве

  • Из CMDB сервисно-ресурсная модель

  • Из системы архитектурного проектирования реестр программных продуктов

После загрузки сырых данных они проверяются на соответствие правилам описанным в разрезе программных продуктов и их версий.

По результатам сработки правил создаются записи об экземплярах ПО в привязке к серверу или контейнеру в к которому относятся совпавшие артефакты.

Для экспертов по ПО создан интерфейс конструктора, в котором они могут создать новое правило или изменить существующее. В конструкторе реализована гибкая система поиска, которая позволяет найти конкретный артефакт по имени, вендору, версии и т.д. для создания правил на чёткое соответствие, также можно задать шаблон для поиска по маске.

Все пользователи системы могут ознакомиться с номенклатурой доступных артефактов по типам и обнаруженным экземплярам, при этом для экземпляра можно посмотреть в результате применения какого правила он был обнаружен и какие конкретно артефакты «сработали».

География проекта

Россия

Комментировать могут только авторизованные пользователи.
Предлагаем Вам в систему или зарегистрироваться.

Год
Предметная область
Отрасль
Управление
Мы используем файлы cookie в аналитических целях и для того, чтобы обеспечить вам наилучшие впечатления от работы с нашим сайтом. Заходя на сайт, вы соглашаетесь с Политикой использования файлов cookie.