Monolit / Архив 1.3.1
Руководство пользователя
Приложения, аналитика, уязвимости, соответствие ГОСТ Р 56939-2024, отчёты и интеграции.
Monolit
Это документация 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.
- Перейдите на страницу входа "Вход в Monolit".
- Введите свой email и пароль.
- Нажмите кнопку "Войти".

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

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

Шаг 2: Объект сканирования
-
Перейдите на вкладку "Объект сканирования".
-
Выберите источник кода, переключаясь между вкладками:
- GitLab — подключение к GitLab-репозиторию
- GitHub — подключение к GitHub-репозиторию
- Gitea — подключение к Gitea-репозиторию
- Bitbucket — подключение к Bitbucket Data Center / Server
- ZIP-архив — загрузка архива с исходным кодом
-
Для 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) - Нажмите кнопку проверки доступа — при успешном подключении создаётся сохранённое подключение
- Выберите подключение* — выбор из ранее сохранённых подключений
- Выберите репозиторий* — выбор из списка репозиториев
- Выберите ветку* — ветка для сканирования

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

- Нажмите "Добавить приложение".
Лимит по лицензии. Лицензия может ограничивать максимальное количество приложений на инсталляции. Если лимит исчерпан, при создании появится сообщение об ошибке — обратитесь к администратору системы для расширения лицензии или удаления неиспользуемых приложений.
Запуск сканирования
- В списке приложений нажмите кнопку «▶ Запустить» напротив нужного приложения.
- Откроется модальное окно «Настройки сканирования».
Полное сканирование
Тумблер «Полное сканирование» в верхней части окна включает или отключает все типы сканирования и все движки одновременно. При снятии галочки с отдельного движка тумблер автоматически переключается в состояние частичного выбора.
Типы сканирования и доступные движки
| Тип | Движки |
|---|---|
| SAST | Semgrep, PT AI, PMD, PHP Mess Detector, MobSF Scan, GoSec, CodeQL, Bearer, Bandit, Solar AppScreener, ABAP Code Scanner |
| SCA | Trivy, OWASP Dependency Check |
| Secret | TruffleHog |
| Config | Trivy |
| Linters | Ruff, PMD, PHP Mess Detector, GolangCI Lint |
| DAST | OWASP ZAP CLI |
Каждый тип сканирования можно включить или отключить отдельным тумблером. Внутри каждого типа можно снять галочку с конкретного движка — кнопка «Очистить» снимает все галочки в блоке.
Настройка DAST
При включении блока DAST становится обязательным поле «URL приложения»:
- Введите адрес развёрнутого приложения (например,
https://example.com). - Нажмите кнопку проверки доступности — платформа проверит, доступен ли URL.
- Если URL недоступен, кнопка подсветится красным; при успехе — зелёным.
- Без заполнения URL сканирование не запустится.
URL сохраняется в настройках приложения. Сохранить основной URL можно заранее через Настройки приложения → Основные.
Запуск
Нажмите «Запустить» для начала сканирования или «Отмена» для выхода без запуска. Кнопка «Запустить» недоступна, если не выбран ни один движок ни в одном типе сканирования.

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

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

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

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

Вкладка «Баг-трекинг»
Вкладка управляет привязкой приложения к Jira-интеграции. После сохранения настроек тикеты в Jira создаются вручную — по одному из карточки уязвимости. Изменения полей уязвимостей и комментарии синхронизируются с трекером автоматически для уже связанных тикетов.
- Трекер — выбор Jira-интеграции из числа подключённых в разделе «Инструменты». Если интеграций нет, отображается подсказка «Интеграций не найдено» и ссылка «в Инструменты».
- Проект — выбор проекта Jira из выпадающего списка. Список проектов подгружается из Jira по выбранной интеграции.
- Тип задачи — тип создаваемых тикетов (например,
Bug); список типов загружается из выбранного проекта. - Тумблер «Вкл / Выкл» — включает или выключает синхронизацию. Включение возможно только после выбора интеграции и проекта.
![]()
Работа с аналитикой
Просмотр общей аналитики по уязвимостям
- Перейдите в раздел "Аналитика".
- Просмотрите метрики в карточках:
- Приложения — количество проектов
- SAST уязвимости — уязвимости, найденные статическим анализом
- SCA уязвимости — уязвимости, найденные в зависимостях
- Триаж уязвимостей — процент обработанных уязвимостей
- Изучите графики и полосы прогресса:
- Триаж уязвимостей (%) — горизонтальная полоса: Новые, Подтверждено, В работе, Требуют подтверждения
- Исправленные уязвимости (%) — горизонтальная полоса: Исправленные, Ложное срабатывание, Риск принят, Дубликаты
- Критичность — диаграмма-паутина по уровням критичности
- Уязвимости — список с процентами по уровням критичности

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

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

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

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

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

Добавление уязвимостей вне сканирования
Платформа позволяет добавить уязвимости без запуска встроенных сканеров, например, по итогам пентеста, security review или из отчёта внешнего инструмента с экспортом в SARIF 2.1.0.
Добавленные вручную или импортированные находки попадают в ту же «Рабочую зону», проходят AI-анализ и обрабатываются так же, как результаты штатных сканирований (статусы, комментарии, отчёты).
Кто может добавлять
Кнопка «+ Добавить уязвимость» доступна в «Рабочей зоне» конкретного приложения (откройте приложение → вкладка «Рабочая зона»). На общей вкладке «Уязвиости» без выбранного приложения кнопка недоступна.
Кнопку видят: Инженер ИБ, Гл. Инженер ИБ, Администратор и Суперадминистратор. Роли Разработчик и Аудитор кнопку не видят.
Добавление вручную
- В «Рабочей зоне» приложения нажмите «+ Добавить уязвимость».
- На вкладке «Уязвимость» заполните поля:
- Название* — краткое имя находки
- Описание* — подробное описание
- Критичность* — выберите из списка
- CWE — необязательно, формат
CWE-000 - Расположение* — путь к файлу или иной локатор
- Нажмите «Сохранить».

Импорт из SARIF-файла
- В том же модальном окне перейдите на вкладку «из SARIF файла».
- Перетащите файл или нажмите «Нажмите, чтобы загрузить».
- Формат: SARIF 2.1.0 (расширение
.sarifили.json) - Максимальный размер: 50 МБ
- Формат: SARIF 2.1.0 (расширение
- Нажмите «Импортировать».
Платформа обрабатывает все результаты в файле и пропускает подавленные и неактуальные находки (open, pass). Уровень критичности определяется по полю level в SARIF:
error → Высокая, warning → Средняя, note → Низкая, none → Информация.
Повторный импорт того же файла не создаёт дубликаты: совпадение определяется по правилу, пути и строке в рамках приложения.

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

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

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

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


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

- Изменение Статуса — выполняется через меню решений. Из текущего статуса предлагаются только допустимые переходы; для решений, требующих обоснования (например, «Ложное срабатывание», «Риск принят», «Исправлена»), система запрашивает комментарий в модальном окне.


- Изменение Критичности — Информация, Низкая, Средняя, Высокая, Критическая. Меняется через выпадающий список.
-
Все изменения статуса и критичности фиксируются во вкладке «Активность» карточки с указанием автора и времени.
-
Вкладка «Комментарии» используется для свободного обсуждения, не связанного с переходами статуса.
Управление соответствием ГОСТ Р 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), краткое название, текущий статус и количество прикреплённых свидетельств. Клик по карточке открывает детальную страницу требования.

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

Изменение статуса требования
Кнопка «Изменить статус» на карточке требования открывает модальное окно с двумя полями:
- Новый статус — выпадающий список с четырьмя вариантами: «Выполнено», «Частично», «Не выполнено», «Неприменимо».
- Причина изменения — обязательное текстовое поле (до 2000 символов). Пустое поле блокирует кнопку «Сохранить».
После сохранения запись появляется в журнале изменений внизу карточки в формате «прежний статус → новый статус», дата, причина.
Примеры формулировок для поля «Причина изменения»:
- Переход
Не выполнено → Частично: «Утверждён регламент процесса РБПО, назначен ответственный. Охвачены 3 из 5 продуктовых команд, внедрение продолжается.» - Переход
Частично → Выполнено: «Завершено внедрение во всех командах. Регламент опубликован в Confluence, пересматривается раз в полгода.» - Переход
→ Неприменимо: «Продукт не имеет публичных API и не взаимодействует с внешними системами — DAST-тестирование не применимо.»
Свидетельства
К каждому требованию можно прикрепить неограниченное количество свидетельств четырёх типов.
Документ — загрузка файла через drag&drop или выбор из проводника. Поддерживается один файл за раз; название совпадает с именем файла. После успешной загрузки свидетельство появляется в списке с кнопками «Скачать» и «Удалить». Файлы хранятся во внутреннем объектном хранилище.
Ссылка — форма с двумя полями:
- «Название» (обязательно)
- «URL» (обязательно; должен содержать протокол
http://илиhttps://)
Комментарий — форма с двумя полями:
- «Название» (обязательно, до 500 символов)
- «Содержимое» (обязательно, до 10 000 символов)
Удаление любого свидетельства требует подтверждения в модальном окне.
Работа с отчётами
Платформа позволяет формировать PDF-отчёты по уязвимостям выбранного приложения с настраиваемыми фильтрами.
Создание отчёта
- Перейдите в раздел «Отчёты» через главное меню.
- Нажмите кнопку «Создать отчёт».
- В открывшемся модальном окне настройте параметры:
- Выберите приложение — приложение, по уязвимостям которого формируется отчёт.
- Фильтры уязвимостей — отметьте, какие уязвимости включать в отчёт:
- Статус: На проверке, Подтверждена, В работе, Требует проверки, Отклонили правки, Исправлена, Ложное срабатывание, Риск принят, Дубликат.
- Критичность: Критическая, Высокая, Средняя, Низкая, Информация.
- Название отчёта* — обязательное поле (например, дата и краткое имя).
- Выбор языка — язык отчёта (RU или EN).
- Нажмите «Создать отчёт» или «Отмена» для выхода без сохранения.
После создания задача попадает в обработку; готовый PDF появится в списке отчётов. Пока отчёт формируется, его статус отображается в таблице.

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

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

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

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

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

Доступ к приложению
Вкладка «Доступы» в настройках приложения управляет тем, кто и с какими правами работает с конкретным приложением.
Роли участников приложения
| Роль | Возможности |
|---|---|
| Администратор | Полный доступ к приложению: сканирование, уязвимости, отчёты, управление участниками |
| Инженер ИБ | Запуск сканирований, просмотр и редактирование уязвимостей, создание отчётов, добавление уязвимостей вручную и через SARIF |
| Гл. Инженер ИБ | Все права Инженера ИБ, плюс неограниченное изменение статуса уязвимостей (без ограничений жизненного цикла) |
| Разработчик | Просмотр уязвимостей, изменение статуса устранения, добавление комментариев |
| Аудитор | Просмотр и экспорт отчётов |
Добавление пользователя в приложение
- Откройте настройки приложения → вкладку «Доступы».
- Нажмите «+ Добавить пользователей» (или аналогичную кнопку).
- В форме введите имя или email пользователя — он должен уже быть зарегистрирован в системе.
- Выберите роль: Администратор, Инженер ИБ, Гл. Инженер ИБ, Разработчик или Аудитор.
- Нажмите «Сохранить».

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

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

Работа с инструментами интеграций
Раздел «Инструменты» предназначен для управления подключениями к системам контроля версий (VCS), внешним сканерам и AI-интеграциям. Раздел доступен пользователям с правами на настройку интеграций (Администратор, Суперадминистратор).
Подключение VCS-хостинга
Платформа поддерживает подключение следующих VCS-провайдеров: GitLab, GitHub, Gitea, Bitbucket (Data Center / Server).
- Перейдите в раздел «Инструменты».
- Выберите вкладку нужного провайдера (GitLab, GitHub, Gitea или Bitbucket).
- Нажмите «+ Добавить подключение».
- Заполните форму:
- Название* — произвольное имя подключения
- URL* — адрес хостинга (например,
https://gitlab.example.com) - Токен* — Personal Access Token с правами
apiиread_api
- Нажмите «Проверить подключение» — платформа проверит доступность хостинга по указанным данным.
- Нажмите «Сохранить».
После сохранения подключение отобразится в списке и станет доступным для выбора при создании или настройке приложения (вкладка «Объект сканирования»).

Для Gitea используется тот же API-формат, что и для GitLab — Personal Access Token с правами на чтение репозиториев. Для Bitbucket Data Center / Server используется HTTP access token, выпущенный в настройках пользователя.
Подключение AI-интеграции
AI-интеграция — это внешний или собственный сервис, который анализирует найденные уязвимости и формирует вердикт TP/FP вместе с текстовым анализом и рекомендациями. Одну интеграцию можно привязать сразу к нескольким приложениям; у каждого приложения может быть одна активная интеграция.
- Перейдите в раздел «Инструменты» и откройте вкладку «Интеграция AI».
- Нажмите «Подключить AI».
- Заполните форму:
- Название — произвольное имя подключения;
- AI URL — адрес сервиса (например,
https://ml.example.com); либо укажите IP и Порт по отдельности; - Приложения — список приложений, к которым сразу будет привязана интеграция (можно оставить пустым и привязать позже в настройках приложения).
- Нажмите кнопку проверки доступности — платформа обратится к сервису и покажет «Соединение установлено» или «Соединение не установлено».
- Нажмите «Сохранить».

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

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

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

Аварийные ситуации
- Проблемы с доступом к системе: Если вы не можете войти в систему или получили сообщение об ошибке, убедитесь, что интернет-соединение работает, и проверьте свои логин и пароль. Если проблема сохраняется, обратитесь к вашему администратору системы.
- Сбои в работе приложения: В случае сбоя или некорректного отображения данных, попробуйте обновить страницу. Если проблема не исчезла, обратитесь к администратору системы.
- Ошибка сканирования: Если сканирование не завершилось успешно, проверьте настройки приложения и наличие доступа к репозиторию кода.
Рекомендации по освоению
- Ознакомьтесь с документацией. Прочитайте полное руководство и FAQ для лучшего понимания возможностей Monolit.
- Практикуйтесь. Создайте тестовое приложение и выполните несколько сканирований для практики работы с уязвимостями.
- Используйте аналитические данные. Внимательно анализируйте результаты сканирования и применяйте полученные рекомендации для улучшения безопасности ваших приложений.
- Интегрируйтесь в CI/CD. Настройте автоматическое сканирование при каждом изменении кода, чтобы повысить эффективность процесса обнаружения уязвимостей.
💡 Не используйте результаты автоматического анализа — включая те, что предоставляет Monolit — в качестве строгого «quality gate» (т.е. критерия блокировки конвейера), пока продукт не достигнет достаточного уровня зрелости с точки зрения безопасности.
Часто задаваемые вопросы (FAQ)
Техническая поддержка
Если у вас возникли вопросы или проблемы при работе с Monolit, обратитесь к администратору системы или свяжитесь с нашей службой поддержки по адресу support@cybear.ru.
