Перейти к основному содержимому
Monolit

Monolit / Архив 1.3.1

Руководство пользователя

Приложения, аналитика, уязвимости, соответствие ГОСТ Р 56939-2024, отчёты и интеграции.

Это документация Monolit 1.3.1. Актуальная версия — 1.3.4.

Открыть актуальную

Введение

Monolit — платформа безопасной разработки (AppSec), автоматизирующая несколько типов анализа: SAST, SCA, Secret Scanning, Config Scanning, Linters и DAST. Платформа запускает несколько сканеров параллельно и предоставляет единый веб-интерфейс для управления уязвимостями, приложениями, соответствием ГОСТ Р 56939-2024 и формирования PDF-отчётов.

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

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

  • Простота развертывания. Monolit поставляется в виде проекта на основе Docker Compose, поэтому её развертывание так же просто, как установка Docker, Docker Compose и выполнение команды docker-compose up.
  • Гибкость. Monolit уже включает множество инструментов с открытым исходным кодом, но при необходимости позволяет легко интегрировать любые современные AppSec решения, включая коммерческие.
  • Интеграция с CI/CD. Monolit может быть легко интегрирована в CI/CD, что позволяет автоматически запускать сканирование при каждой новой сборке или тестировании кода.
  • Поддержка сообщества open source. Даже без получения дополнительных услуг (таких как ручной аудит безопасности, обучение, консалтинг, поддержка и сопровождение AppSec-практик), платформа Monolit предоставляет доступ к зрелым и широко применяемым инструментам SAST, SCA, Secret и Config с открытым исходным кодом. Эти решения развиваются силами обширного профессионального сообщества, где новые идеи и обновления внедряются быстрее, чем в закрытых коммерческих продуктах.
  • Управление уязвимостями. Monolit обеспечивает полноценный рабочий процесс обработки уязвимостей: приоритизация, назначение задач, комментарии и контроль выполнения — прямо внутри платформы, без необходимости в сторонних трекерах.

Подготовка к работе

Вход в систему​

В случае недоступности регистрации запросите учетные данные для входа у вашего администратора. Для демонстрационной установки вы можете использовать пользователя по умолчанию со следующими учетными данными: demo@example.com : demo.

  1. Перейдите на страницу входа "Вход в Monolit".
  2. Введите свой email и пароль.
  3. Нажмите кнопку "Войти".

Вход в систему

Описание операций

Работа с приложениями​

Просмотр списка приложений​

  1. Перейдите в раздел "Приложения" через главное меню.
  2. Вверху располагается поле "Поиск по проектам", справа — кнопка "+ Добавить приложение".
  3. Таблица отображает следующие колонки:
    • Приоритет / Название / ID / Автор — основная информация о приложении
    • Язык — языки программирования проекта
    • Сканеры — используемые типы сканирования (Secret scanning, SAST, Config scanning, Linters, SCA)
    • Создан — дата создания приложения
    • Сканировалось — дата последнего сканирования
    • Статус сканирования — текущее состояние (например, «Завершено»)
  4. Для каждого приложения отображаются бейджи с количеством уязвимостей по уровням критичности.

Список приложений

Добавление нового приложения​

Процесс добавления приложения состоит из двух этапов.

Шаг 1: Общая информация​

  1. Перейдите в раздел "Приложения".
  2. Нажмите "+ Добавить приложение" в правом верхнем углу.
  3. В открывшемся окне заполните вкладку "Общая информация":
    • Название* — введите название приложения
    • Описание — опишите проект (опционально)
  4. Нажмите "Далее".

Форма добавления приложения: общая информация

Шаг 2: Объект сканирования​

  1. Перейдите на вкладку "Объект сканирования".

  2. Выберите источник кода, переключаясь между вкладками:

    • GitLab — подключение к GitLab-репозиторию
    • GitHub — подключение к GitHub-репозиторию
    • Gitea — подключение к Gitea-репозиторию
    • Bitbucket — подключение к Bitbucket Data Center / Server
    • ZIP-архив — загрузка архива с исходным кодом
  3. Для GitLab / GitHub / Gitea / Bitbucket заполните поля:

    • Название* — имя подключения
    • Токен* — персональный токен доступа (для GitLab: glpat-…, для GitHub: github_pat_…, для Gitea: gitea-…, для Bitbucket: HTTP access token)
    • URL* — адрес сервера (например, https://gitlab.com, https://api.github.com, https://gitea.com, https://bitbucket.org)
    • Нажмите кнопку проверки доступа — при успешном подключении создаётся сохранённое подключение
    • Выберите подключение* — выбор из ранее сохранённых подключений
    • Выберите репозиторий* — выбор из списка репозиториев
    • Выберите ветку* — ветка для сканирования

Форма добавления приложения: объект сканирования (GitLab)

  1. Для ZIP-архива нажмите на область загрузки или перетащите ZIP-файл.

Форма добавления приложения: загрузка архива

  1. Нажмите "Добавить приложение".

Лимит по лицензии. Лицензия может ограничивать максимальное количество приложений на инсталляции. Если лимит исчерпан, при создании появится сообщение об ошибке — обратитесь к администратору системы для расширения лицензии или удаления неиспользуемых приложений.

Запуск сканирования​

  1. В списке приложений нажмите кнопку «▶ Запустить» напротив нужного приложения.
  2. Откроется модальное окно «Настройки сканирования».

Полное сканирование​

Тумблер «Полное сканирование» в верхней части окна включает или отключает все типы сканирования и все движки одновременно. При снятии галочки с отдельного движка тумблер автоматически переключается в состояние частичного выбора.

Типы сканирования и доступные движки​

ТипДвижки
SASTSemgrep, PT AI, PMD, PHP Mess Detector, MobSF Scan, GoSec, CodeQL, Bearer, Bandit, Solar AppScreener, ABAP Code Scanner
SCATrivy, OWASP Dependency Check
SecretTruffleHog
ConfigTrivy
LintersRuff, PMD, PHP Mess Detector, GolangCI Lint
DASTOWASP ZAP CLI

Каждый тип сканирования можно включить или отключить отдельным тумблером. Внутри каждого типа можно снять галочку с конкретного движка — кнопка «Очистить» снимает все галочки в блоке.

Настройка DAST​

При включении блока DAST становится обязательным поле «URL приложения»:

  • Введите адрес развёрнутого приложения (например, https://example.com).
  • Нажмите кнопку проверки доступности — платформа проверит, доступен ли URL.
  • Если URL недоступен, кнопка подсветится красным; при успехе — зелёным.
  • Без заполнения URL сканирование не запустится.

URL сохраняется в настройках приложения. Сохранить основной URL можно заранее через Настройки приложения → Основные.

Запуск​

Нажмите «Запустить» для начала сканирования или «Отмена» для выхода без запуска. Кнопка «Запустить» недоступна, если не выбран ни один движок ни в одном типе сканирования.

Настройки сканирования

Управление приложениями​

  • Копирование UUID: Откройте меню действий "⋮" и выберите "Скопировать UUID проекта".
  • Настройки: Выберите "Настроить проект" для перехода к параметрам.
  • Удаление: Выберите "Удалить проект" и подтвердите действие.

Управление приложением

Настройки приложения​

  1. Откройте приложение из списка.
  2. Перейдите в "Настроить проект" через меню "⋮".
  3. В разделе настроек доступны четыре вкладки:

Настройки приложения: основные

Вкладка «Основные»​

  • Общая информация

    • Название — редактирование названия приложения
    • Описание — многострочное поле для описания проекта
  • Объект сканирования Источники кода с индикаторами состояния:

    • GitLab / GitHub / Gitea — выгрузка из репозитория (статус: Работает/Не работает)
    • Файл или ZIP-архив — загрузка архива (тумблер вкл/выкл)
  • Интеграция AI Выбор AI-интеграции, которая будет анализировать уязвимости этого приложения и формировать вердикт TP/FP. Доступны только активные интеграции, добавленные в разделе «Инструменты». Если подключений нет, в списке отображается подсказка «Нет AI подключений? Добавьте его в «Инструментах»». Пустое значение отключает AI-анализ для приложения.

Настройки приложения: выбор AI-интеграции

Вкладка «Исключения»​

Вкладка содержит сквозные настройки сканирования, влияющие на результаты по приложению в целом.

  • Настройки SAST

    • Минимальная критичность SAST — порог фильтрации SAST-уязвимостей. Уязвимости ниже выбранного уровня в результаты не попадут. Доступные значения: «Информация», «Низкая», «Средняя», «Высокая», «Критическая».
  • Общие исключения — список glob-паттернов путей, которые исключаются из всех типов сканирования (SAST, SCA, Secret, Config, Linters). Паттерны вводятся в текстовое поле через запятую.

    Поддерживается синтаксис glob:

    КонструкцияЗначениеПример
    *Любая последовательность символов внутри одного сегмента пути*.lock
    **Рекурсивный обход директорий**/vendor/**
    ?Один любой символfile?.txt
    [abc]Один символ из набора[Tt]est.py

    Типичные примеры:

    • исключить зависимости — **/vendor/**, **/node_modules/**;
    • исключить lock-файлы — **/*.lock, **/Pipfile.lock;
    • исключить тестовые фикстуры — **/testdata/**, tests/**/fixtures/**.

    Ограничения:

    • паттерн не может быть пустым;
    • запрещены абсолютные пути (паттерн не должен начинаться с /);
    • запрещён сегмент ..;
    • длина паттерна — не более 512 символов;
    • в списке не более 256 паттернов.

    Новое значение применяется при следующем запуске сканирования; уже идущие запуски не затрагиваются.

Настройки приложения: исключения

Вкладка «DAST»​

Позволяет задать URL целевого приложения для динамического анализа. Указанный здесь адрес будет автоматически подставляться при запуске DAST-сканирования.

  • URL приложения — адрес развёрнутого приложения (например, https://example.com)

Настройки приложения: DAST

Вкладка «Доступы»​

Управление составом участников приложения и их ролями. Подробнее — в разделе «Доступ к приложению».

Настройки приложения: доступы

Вкладка «Баг-трекинг»​

Вкладка управляет привязкой приложения к Jira-интеграции. После сохранения настроек тикеты в Jira создаются вручную — по одному из карточки уязвимости. Изменения полей уязвимостей и комментарии синхронизируются с трекером автоматически для уже связанных тикетов.

  • Трекер — выбор Jira-интеграции из числа подключённых в разделе «Инструменты». Если интеграций нет, отображается подсказка «Интеграций не найдено» и ссылка «в Инструменты».
  • Проект — выбор проекта Jira из выпадающего списка. Список проектов подгружается из Jira по выбранной интеграции.
  • Тип задачи — тип создаваемых тикетов (например, Bug); список типов загружается из выбранного проекта.
  • Тумблер «Вкл / Выкл» — включает или выключает синхронизацию. Включение возможно только после выбора интеграции и проекта.

Настройки приложения: баг-трекинг

Работа с аналитикой​

Просмотр общей аналитики по уязвимостям​

  1. Перейдите в раздел "Аналитика".
  2. Просмотрите метрики в карточках:
    • Приложения — количество проектов
    • SAST уязвимости — уязвимости, найденные статическим анализом
    • SCA уязвимости — уязвимости, найденные в зависимостях
    • Триаж уязвимостей — процент обработанных уязвимостей
  3. Изучите графики и полосы прогресса:
    • Триаж уязвимостей (%) — горизонтальная полоса: Новые, Подтверждено, В работе, Требуют подтверждения
    • Исправленные уязвимости (%) — горизонтальная полоса: Исправленные, Ложное срабатывание, Риск принят, Дубликаты
    • Критичность — диаграмма-паутина по уровням критичности
    • Уязвимости — список с процентами по уровням критичности

Общая аналитика

Просмотр аналитики конкретного приложения​

  1. Откройте нужное приложение из раздела "Приложения".
  2. Перейдите во вкладку "Аналитика".
  3. Вверху отображаются метаданные приложения:
    • Название, ID, автор
    • Бейджи с типами источников (Zip, GitLab)
    • Цветные метки уязвимостей по критичности
    • Язык, типы сканеров, время создания/сканирования, статус
  4. Далее аналогично общему дашборду: карточки метрик, полосы прогресса, диаграммы.

Аналитика приложения

Управление уязвимостями​

Просмотр уязвимостей​

  1. Перейдите в раздел "Рабочая зона" через главное меню или откройте конкретное приложение.
  2. В верхней части находится поле "Поиск по уязвимостям…".
  3. Под ним строка с чекбоксом: "Выбрано уязвимостей: 0 из X".
  4. Таблица показывает для каждой уязвимости:
    • название, ID, бейдж «Новое» (если ещё не просмотрена)
    • метаданные строки: тип сканирования, движок, дата, CWE, ФСТЭК, вердикт AI (TP/FP)
    • колонки Критичность и Статус

Список уязвимостей

Поиск уязвимостей​

  1. В поле "Поиск по уязвимостям…" введите ключевое слово (например, «Improper»).
  2. Список уязвимостей фильтруется по мере ввода.

Поиск уязвимостей

Настройка фильтра​

В списке уязвимостей доступна панель «Настройка фильтра»: фильтрация по типу сканирования (Все, SAST, SCA, DAST, Linters, Secret, Config), по критичности, дате обнаружения, вердикту AI (TP / FP) и статусу. После выбора критериев нажмите «Применить»; «Сбросить» очищает фильтры.

Настройка фильтра уязвимостей

Просмотр уязвимостей конкретного приложения​

  1. Откройте интересующее приложение.
  2. Перейдите во вкладку "Рабочая зона".
  3. Список покажет уязвимости, относящиеся только к этому приложению.

Уязвимости конкретного приложения

Добавление уязвимостей вне сканирования​

Платформа позволяет добавить уязвимости без запуска встроенных сканеров, например, по итогам пентеста, security review или из отчёта внешнего инструмента с экспортом в SARIF 2.1.0.

Добавленные вручную или импортированные находки попадают в ту же «Рабочую зону», проходят AI-анализ и обрабатываются так же, как результаты штатных сканирований (статусы, комментарии, отчёты).

Кто может добавлять​

Кнопка «+ Добавить уязвимость» доступна в «Рабочей зоне» конкретного приложения (откройте приложение → вкладка «Рабочая зона»). На общей вкладке «Уязвиости» без выбранного приложения кнопка недоступна.

Кнопку видят: Инженер ИБ, Гл. Инженер ИБ, Администратор и Суперадминистратор. Роли Разработчик и Аудитор кнопку не видят.

Добавление вручную​

  1. В «Рабочей зоне» приложения нажмите «+ Добавить уязвимость».
  2. На вкладке «Уязвимость» заполните поля:
    • Название* — краткое имя находки
    • Описание* — подробное описание
    • Критичность* — выберите из списка
    • CWE — необязательно, формат CWE-000
    • Расположение* — путь к файлу или иной локатор
  3. Нажмите «Сохранить».

Добавление уязвимости вручную

Импорт из SARIF-файла​

  1. В том же модальном окне перейдите на вкладку «из SARIF файла».
  2. Перетащите файл или нажмите «Нажмите, чтобы загрузить».
    • Формат: SARIF 2.1.0 (расширение .sarif или .json)
    • Максимальный размер: 50 МБ
  3. Нажмите «Импортировать».

Платформа обрабатывает все результаты в файле и пропускает подавленные и неактуальные находки (open, pass). Уровень критичности определяется по полю level в SARIF: error → Высокая, warning → Средняя, note → Низкая, none → Информация.

Повторный импорт того же файла не создаёт дубликаты: совпадение определяется по правилу, пути и строке в рамках приложения.

Импорт уязвимостей из SARIF

Информация об уязвимости​

  1. В списке уязвимостей нажмите на интересующую запись.
  2. Откроется карточка с вкладками «Описание», «Комментарии» и «Активность».
  3. На вкладке «Описание» доступны:
    • Критичность — уровень серьёзности (Информация, Низкая, Средняя, Высокая, Критическая)
    • Статус — единое поле жизненного цикла уязвимости (см. раздел «Жизненный цикл уязвимости» ниже)
    • CWE — идентификатор класса уязвимости (кликабельная ссылка)
    • Обнаружено — сканер, который нашёл уязвимость (например, bandit)
    • Время — дата и время обнаружения
    • Вердикт AI — заключение подключённой AI-интеграции: TP (True Positive — реальная уязвимость) или FP (False Positive — ложное срабатывание). Заключение можно развернуть, чтобы увидеть текстовый анализ и рекомендации от модели. Пока идёт анализ, отображается статус «анализ…»; если для приложения не выбрана активная AI-интеграция — «AI не подключён».
    • Имя правила — идентификатор правила сканера (с кнопкой копирования)
    • Номер тикета — отображается, если для приложения включён баг-трекинг (см. вкладку «Баг-трекинг» в настройках приложения). Если тикет уже создан, поле содержит ссылку на него в Jira; если нет — отображается «Тикет не создан» с кнопкой создания. Когда баг-трекинг не подключён, поле показывает соответствующую подсказку.
    • Описание — детальное объяснение уязвимости со ссылками на документацию
    • Расположение — путь к файлу и номер строки с фрагментом кода
    • При наличии в карточке также отображаются ФСТЭК (нормативная привязка) и Ссылки (References) на документацию (например, OWASP, Bearer).

Вердикт AI в карточке уязвимости

Если для приложения включён баг-трекинг, в карточке доступны действия с тикетом: «Создать тикет в Jira» (если тикет ещё не создан) и «Отвязать» — удаляет тикет в Jira; уязвимость на платформе остаётся. После создания поле «Номер тикета» становится ссылкой на тикет в Jira.

Номер тикета Jira в карточке уязвимости

  1. Вкладка «Комментарии» — свободное обсуждение уязвимости между участниками.

Комментарии к уязвимости

  1. Вкладка «Активность» — машинная лента событий: обнаружение уязвимости сканером, изменения статуса и критичности с указанием автора и времени. Для переходов, требующих обоснования, комментарий, введённый при смене статуса, отображается во всплывающей подсказке при наведении курсора на бейдж нового статуса. Если для приложения включён баг-трекинг, в ленту также попадают события Jira: создание тикета, ошибка работы с трекером (с указанием причины — сетевая, аутентификация, права, валидация, превышение лимита запросов), отвязка уязвимости от тикета, отвязка приложения от трекера, смена проекта или интеграции.

Пример карточки уязвимости:

Карточка уязвимости

Вкладка «Активность» в карточке уязвимости


Жизненный цикл уязвимости​

Каждая уязвимость проходит жизненный цикл, отражённый единым полем «Статус». Сразу после обнаружения сканером уязвимость получает статус «На проверке» и далее меняется по правилам ниже.

СтатусЧто означает
На проверкеСтартовый статус. Сканер нашёл потенциальную уязвимость, специалист ИБ ещё не размечал результат.
ПодтвержденаИнженер ИБ или Гл. Инженер ИБ подтвердил находку как реальную. Уязвимость готова к передаче на исправление.
В работеУязвимость взята в исправление: разработчик начал устранение.
Требует проверкиРазработчик заявил об устранении и ждёт проверки со стороны ИБ.
Отклонили правкиИБ не принял исправление, уязвимость возвращается в работу.
ИсправленаУязвимость устранена в коде, проверка завершена (конечный статус).
Ложное срабатываниеСрабатывание сканера признано ложным (конечный статус).
Риск принятПринято решение не исправлять, риск осознан и формально принят (конечный статус).
ДубликатУязвимость уже отслеживается в другой записи (конечный статус).

Платформа ограничивает переходы между статусами: из текущего доступны только осмысленные следующие. Часть переходов требует обоснования — комментарий вводится в модальном окне и сохраняется во вкладке «Активность».

Основной путь работы с уязвимостью:

На схеме показаны основные пути. Из конечных статусов («Исправлена», «Ложное срабатывание», «Риск принят», «Дубликат») возможны корректирующие переходы при пересмотре решения.


Работа с конкретной уязвимостью​

  1. На странице уязвимости доступны следующие действия:

    • Изменение Критичности — Информация, Низкая, Средняя, Высокая, Критическая. Меняется через выпадающий список.
      Критичность
    • Изменение Статуса — выполняется через меню решений. Из текущего статуса предлагаются только допустимые переходы; для решений, требующих обоснования (например, «Ложное срабатывание», «Риск принят», «Исправлена»), система запрашивает комментарий в модальном окне.
      Меню решений по уязвимости
      Подтверждение перехода с обоснованием
  2. Все изменения статуса и критичности фиксируются во вкладке «Активность» карточки с указанием автора и времени.

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

Управление соответствием ГОСТ Р 56939-2024​

Модуль «Соответствие» позволяет отслеживать выполнение требований ГОСТ Р 56939-2024 «Защита информации. Разработка безопасного программного обеспечения». Реестр содержит 25 пронумерованных требований (5.1–5.25), охватывающих все этапы жизненного цикла безопасной разработки: от планирования и проектирования до вывода ПО из эксплуатации. Раздел доступен через пункт «Соответствие» в боковом меню.

Дашборд соответствия​

Главная страница модуля показывает текущий уровень соответствия организации требованиям стандарта.

Шапка со счётчиком: отображает процент выполнения как отношение Выполнено / применимые требования (требования со статусом «Неприменимо» исключаются из знаменателя). Статусы требований:

СтатусОписание
ВыполненоТребование полностью выполнено и подтверждено свидетельствами
ЧастичноТребование выполнено не в полном объёме
Не выполненоТребование не выполнено (статус по умолчанию)
НеприменимоТребование не актуально для данной организации или продукта

Фильтр по статусу: чипы-кнопки «Все / Выполнено / Частично / Не выполнено / Неприменимо» фильтруют карточки требований на странице.

Группировка по этапам разработки: требования сгруппированы в 6 разделов с подсчётом выполнено / всего для каждой группы:

  • Планирование и управление (5.1–5.5)
  • Проектирование (5.6–5.7)
  • Разработка (5.8–5.14)
  • Анализ безопасности (5.15–5.17)
  • Тестирование (5.18–5.19)
  • Выпуск и эксплуатация (5.20–5.25)

Каждая карточка требования показывает код (например, 5.10), краткое название, текущий статус и количество прикреплённых свидетельств. Клик по карточке открывает детальную страницу требования.

Дашборд соответствия ГОСТ Р 56939-2024

Карточка требования​

Детальная страница требования содержит:

  • Код и название — код требования (например, 5.10) и его название
  • Описание — полный текст требования из стандарта
  • Текущий статус — цветной бейдж с актуальным значением
  • Кнопка «Изменить статус» — ручной override текущего статуса
  • Секция «Свидетельства» — список прикреплённых свидетельств с вкладками «Все / Документы / Ссылки / Комментарии»; кнопки добавления новых свидетельств
  • Журнал изменений статуса — хронологический список переходов «прежний статус → новый статус» с датой и причиной

Карточка требования ГОСТ Р 56939-2024

Изменение статуса требования​

Кнопка «Изменить статус» на карточке требования открывает модальное окно с двумя полями:

  • Новый статус — выпадающий список с четырьмя вариантами: «Выполнено», «Частично», «Не выполнено», «Неприменимо».
  • Причина изменения — обязательное текстовое поле (до 2000 символов). Пустое поле блокирует кнопку «Сохранить».

После сохранения запись появляется в журнале изменений внизу карточки в формате «прежний статус → новый статус», дата, причина.

Примеры формулировок для поля «Причина изменения»:

  • Переход Не выполнено → Частично: «Утверждён регламент процесса РБПО, назначен ответственный. Охвачены 3 из 5 продуктовых команд, внедрение продолжается.»
  • Переход Частично → Выполнено: «Завершено внедрение во всех командах. Регламент опубликован в Confluence, пересматривается раз в полгода.»
  • Переход → Неприменимо: «Продукт не имеет публичных API и не взаимодействует с внешними системами — DAST-тестирование не применимо.»

Свидетельства​

К каждому требованию можно прикрепить неограниченное количество свидетельств четырёх типов.

Документ — загрузка файла через drag&drop или выбор из проводника. Поддерживается один файл за раз; название совпадает с именем файла. После успешной загрузки свидетельство появляется в списке с кнопками «Скачать» и «Удалить». Файлы хранятся во внутреннем объектном хранилище.

Ссылка — форма с двумя полями:

  • «Название» (обязательно)
  • «URL» (обязательно; должен содержать протокол http:// или https://)

Комментарий — форма с двумя полями:

  • «Название» (обязательно, до 500 символов)
  • «Содержимое» (обязательно, до 10 000 символов)

Удаление любого свидетельства требует подтверждения в модальном окне.

Работа с отчётами​

Платформа позволяет формировать PDF-отчёты по уязвимостям выбранного приложения с настраиваемыми фильтрами.

Создание отчёта​

  1. Перейдите в раздел «Отчёты» через главное меню.
  2. Нажмите кнопку «Создать отчёт».
  3. В открывшемся модальном окне настройте параметры:
    • Выберите приложение — приложение, по уязвимостям которого формируется отчёт.
    • Фильтры уязвимостей — отметьте, какие уязвимости включать в отчёт:
      • Статус: На проверке, Подтверждена, В работе, Требует проверки, Отклонили правки, Исправлена, Ложное срабатывание, Риск принят, Дубликат.
      • Критичность: Критическая, Высокая, Средняя, Низкая, Информация.
    • Название отчёта* — обязательное поле (например, дата и краткое имя).
    • Выбор языка — язык отчёта (RU или EN).
  4. Нажмите «Создать отчёт» или «Отмена» для выхода без сохранения.

После создания задача попадает в обработку; готовый PDF появится в списке отчётов. Пока отчёт формируется, его статус отображается в таблице.

Форма создания отчёта

Список отчётов, поиск и фильтрация​

  1. В разделе «Отчёты» отображается таблица созданных отчётов.
  2. Колонки таблицы:
    • Название отчёта — имя файла и размер (например, в КБ или МБ).
    • Создан — дата и время создания.
    • Приложение — приложение, по которому сформирован отчёт.
    • Кем — автор отчёта (имя и email).
  3. Для поиска и фильтрации используйте:
    • поле «Поиск по отчётам»;
    • выпадающий список «Выберите приложение» для фильтра по приложению;
    • кнопку «Сбросить» для сброса фильтров.

Список отчётов

Скачивание и удаление отчёта​

  • Скачивание: нажмите иконку загрузки в строке нужного отчёта. Файл PDF сохранится на ваше устройство.
  • Удаление: нажмите иконку корзины в строке отчёта и подтвердите действие.

Данные, которые попадают в отчёт (сводка по SAST/SCA/Линтер, триаж, исправленные уязвимости, оценка по критичности), соответствуют аналитике, доступной в разделе «Аналитика» по приложению. Фильтры при создании отчёта задают, какие уязвимости включаются в PDF.

Аналитика отчёта

Управление пользователями​

Раздел доступен только пользователям с типом Администратор или Суперадминистратор.

Раздел «Пользователи» находится в главном меню. Он позволяет просматривать список пользователей платформы, создавать новых, редактировать их данные, менять тип (роль) и блокировать.

Просмотр списка пользователей​

  1. Перейдите в раздел «Пользователи».
  2. Таблица отображает:
    • Имя и Email пользователя
    • Тип — роль в системе (Суперадминистратор, Администратор, Пользователь)
    • Статус — активен или заблокирован
    • Дата создания
    • Приложения — приложения, участником которых является пользователь
  3. Доступны поиск по имени/email и фильтрация по типу и статусу.

Список пользователей

Создание пользователя​

  1. Нажмите кнопку «Создать пользователя».
  2. Заполните форму:
    • Имя* и Фамилия* — обязательные поля
    • Email* — адрес электронной почты
    • Тип* — тип учётной записи (Пользователь, Администратор, Суперадминистратор)
    • Пароль* и Повторите* — минимум 4, максимум 40 символов
  3. Нажмите «Сохранить».

Форма создания пользователя

Редактирование и управление пользователями​

Для редактирования пользователя нажмите иконку карандаша в строке. В форме доступны поля: Имя, Фамилия, тип учётной записи и переключатель «Вкл/Выкл учётную запись» для блокировки без удаления.

Массовые операции (изменение типа, блокировка/разблокировка) доступны при выборе нескольких пользователей через чекбоксы.

Управление пользователем

Доступ к приложению​

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

Роли участников приложения​

РольВозможности
АдминистраторПолный доступ к приложению: сканирование, уязвимости, отчёты, управление участниками
Инженер ИБЗапуск сканирований, просмотр и редактирование уязвимостей, создание отчётов, добавление уязвимостей вручную и через SARIF
Гл. Инженер ИБВсе права Инженера ИБ, плюс неограниченное изменение статуса уязвимостей (без ограничений жизненного цикла)
РазработчикПросмотр уязвимостей, изменение статуса устранения, добавление комментариев
АудиторПросмотр и экспорт отчётов

Добавление пользователя в приложение​

  1. Откройте настройки приложения → вкладку «Доступы».
  2. Нажмите «+ Добавить пользователей» (или аналогичную кнопку).
  3. В форме введите имя или email пользователя — он должен уже быть зарегистрирован в системе.
  4. Выберите роль: Администратор, Инженер ИБ, Гл. Инженер ИБ, Разработчик или Аудитор.
  5. Нажмите «Сохранить».

Добавление пользователя в приложение

Изменение роли и удаление​

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

Изменение роли участника

Удалить из приложения: нажмите иконку корзины в строке и подтвердите действие. Пользователь потеряет доступ к приложению, его учётная запись в системе не затрагивается.

Удаление участника из приложения

Работа с инструментами интеграций​

Раздел «Инструменты» предназначен для управления подключениями к системам контроля версий (VCS), внешним сканерам и AI-интеграциям. Раздел доступен пользователям с правами на настройку интеграций (Администратор, Суперадминистратор).

Подключение VCS-хостинга​

Платформа поддерживает подключение следующих VCS-провайдеров: GitLab, GitHub, Gitea, Bitbucket (Data Center / Server).

  1. Перейдите в раздел «Инструменты».
  2. Выберите вкладку нужного провайдера (GitLab, GitHub, Gitea или Bitbucket).
  3. Нажмите «+ Добавить подключение».
  4. Заполните форму:
    • Название* — произвольное имя подключения
    • URL* — адрес хостинга (например, https://gitlab.example.com)
    • Токен* — Personal Access Token с правами api и read_api
  5. Нажмите «Проверить подключение» — платформа проверит доступность хостинга по указанным данным.
  6. Нажмите «Сохранить».

После сохранения подключение отобразится в списке и станет доступным для выбора при создании или настройке приложения (вкладка «Объект сканирования»).

Добавление VCS-подключения

Для Gitea используется тот же API-формат, что и для GitLab — Personal Access Token с правами на чтение репозиториев. Для Bitbucket Data Center / Server используется HTTP access token, выпущенный в настройках пользователя.

Подключение AI-интеграции​

AI-интеграция — это внешний или собственный сервис, который анализирует найденные уязвимости и формирует вердикт TP/FP вместе с текстовым анализом и рекомендациями. Одну интеграцию можно привязать сразу к нескольким приложениям; у каждого приложения может быть одна активная интеграция.

  1. Перейдите в раздел «Инструменты» и откройте вкладку «Интеграция AI».
  2. Нажмите «Подключить AI».
  3. Заполните форму:
    • Название — произвольное имя подключения;
    • AI URL — адрес сервиса (например, https://ml.example.com); либо укажите IP и Порт по отдельности;
    • Приложения — список приложений, к которым сразу будет привязана интеграция (можно оставить пустым и привязать позже в настройках приложения).
  4. Нажмите кнопку проверки доступности — платформа обратится к сервису и покажет «Соединение установлено» или «Соединение не установлено».
  5. Нажмите «Сохранить».

Форма подключения AI-интеграции

После сохранения интеграция появится в таблице раздела с колонками Имя, Статус и Приложения. Доступны действия: редактирование параметров, включение/выключение, удаление отдельной интеграции и массовое удаление выбранных.

Список AI-интеграций

Если AI-сервис недоступен в момент анализа, платформа продолжает работу: вердикт не формируется, остальные результаты сканирования сохраняются как обычно.

Подключение Jira-интеграции​

Интеграция с Jira позволяет переносить уязвимости приложения в трекер задач: тикеты создаются вручную из карточки уязвимости, изменения полей и комментарии синхронизируются с трекером автоматически, а в карточке уязвимости появляется ссылка на тикет. Одну интеграцию можно привязать к нескольким приложениям; настройка привязки выполняется в настройках приложения (вкладка «Баг-трекинг»).

  1. Перейдите в раздел «Инструменты» и откройте вкладку «Jira».
  2. Нажмите «Подключить Jira».
  3. Заполните форму:
    • Название* — произвольное имя интеграции (например, Monolit-Jira);
    • Приватный токен* — Personal Access Token (PAT) пользователя Jira. Токену должны быть предоставлены области действия api и read_api, а у учётной записи — права просматривать проект, создавать и редактировать тикеты, добавлять комментарии и выполнять переходы по статусам;
    • Jira URL* — адрес сервера Jira (например, https://jira.yourcompany.ru).
  4. Нажмите кнопку проверки подключения. Платформа проверит сетевую доступность Jira и корректность токена и покажет результат: «Соединение установлено», «Jira недоступна по указанному адресу» или «Токен недействителен или истёк».
  5. Нажмите «Сохранить». Интеграция сохраняется только при успешной проверке подключения.

Форма подключения Jira-интеграции

После сохранения интеграция появится в таблице раздела с колонками Название интеграции, Статус, Приложения (количество привязанных приложений) и Последняя проверка. Статус подключения отображается бейджем:

  • Доступно — подключение и права в порядке;
  • Недоступно — Jira не отвечает по указанному адресу;
  • Нет прав — подключение выполнено, но у токена недостаточно прав для работы с Jira.

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

Список Jira-интеграций

Аварийные ситуации​

  1. Проблемы с доступом к системе: Если вы не можете войти в систему или получили сообщение об ошибке, убедитесь, что интернет-соединение работает, и проверьте свои логин и пароль. Если проблема сохраняется, обратитесь к вашему администратору системы.
  2. Сбои в работе приложения: В случае сбоя или некорректного отображения данных, попробуйте обновить страницу. Если проблема не исчезла, обратитесь к администратору системы.
  3. Ошибка сканирования: Если сканирование не завершилось успешно, проверьте настройки приложения и наличие доступа к репозиторию кода.

Рекомендации по освоению​

  • Ознакомьтесь с документацией. Прочитайте полное руководство и FAQ для лучшего понимания возможностей Monolit.
  • Практикуйтесь. Создайте тестовое приложение и выполните несколько сканирований для практики работы с уязвимостями.
  • Используйте аналитические данные. Внимательно анализируйте результаты сканирования и применяйте полученные рекомендации для улучшения безопасности ваших приложений.
  • Интегрируйтесь в CI/CD. Настройте автоматическое сканирование при каждом изменении кода, чтобы повысить эффективность процесса обнаружения уязвимостей.

💡 Не используйте результаты автоматического анализа — включая те, что предоставляет Monolit — в качестве строгого «quality gate» (т.е. критерия блокировки конвейера), пока продукт не достигнет достаточного уровня зрелости с точки зрения безопасности.

Часто задаваемые вопросы (FAQ)

Техническая поддержка

Если у вас возникли вопросы или проблемы при работе с Monolit, обратитесь к администратору системы или свяжитесь с нашей службой поддержки по адресу support@cybear.ru.

Поддержка Cybear

Не нашли ответ в документе?

Техподдержка: support@cybear.ru · +7 (495) 790-66-88, добавочный 3.

Написать в поддержку