Интерфейс пользователя¶
Веб-интерфейс AppSec.GenAI построен на базе Angular и предоставляет единую точку доступа ко всем функциям Системы. Интерфейс адаптирован для работы в современных браузерах и поддерживает светлую и тёмную темы оформления.
Общая структура¶
Интерфейс состоит из следующих основных областей:
+---------------------------------------------------------------+
| Шапка (Header) |
+----------+----------------------------------------------------+
| | |
| Боковая | Рабочая область |
| панель | (Main Content) |
| (Sidebar)| |
| | |
| | |
+----------+----------------------------------------------------+
Шапка (Header)¶
Шапка расположена в верхней части страницы и содержит следующие элементы:
| Элемент | Расположение | Описание |
|---|---|---|
| Логотип AppSec.GenAI | Левый край | Клик по логотипу возвращает на главную страницу (Dashboard) |
| Поле поиска | Центральная часть | Глобальный поиск по моделям, профилям и сканированиям |
| Индикатор соединения | Правая часть | Статус WebSocket-подключения к серверу |
| Колокольчик уведомлений | Правая часть | Счётчик непрочитанных уведомлений, при клике открывается панель уведомлений |
| Аватар пользователя | Правый край | Меню пользователя: профиль, настройки, выход из системы |
Индикатор WebSocket-соединения¶
Система использует WebSocket-соединение для получения обновлений в реальном времени (статусы сканирований, новые результаты). Индикатор отображает текущий статус соединения:
| Цвет | Статус | Описание |
|---|---|---|
| Зелёный | Подключено | Соединение установлено, обновления поступают в реальном времени |
| Жёлтый | Переподключение | Соединение потеряно, выполняется автоматическое переподключение |
| Красный | Отключено | Соединение не установлено, данные обновляются только вручную |
Автоматическое переподключение
При потере соединения Система автоматически пытается восстановить подключение по экспоненциальной стратегии: 1 секунда, 2 секунды, 4 секунды и так далее вплоть до максимума в 30 секунд. Система предпринимает до 10 попыток переподключения, после чего индикатор становится красным.
Если индикатор остаётся красным более минуты, обновите страницу в браузере (F5) или проверьте доступность сервера.
Боковая панель (Sidebar)¶
Боковая панель навигации расположена слева и обеспечивает доступ ко всем основным разделам Системы.
Разделы навигации¶
| Иконка | Раздел | URL | Описание |
|---|---|---|---|
| Dashboard | /dashboard |
Главная страница с обзорными виджетами и статистикой | |
| Models | /models |
Управление зарегистрированными моделями ИИ | |
| Modality | /modality |
Каталог атак с группировкой по модальности (LLM, CV, ASR) | |
| Scan Profiles | /profiles |
Профили сканирования — наборы атак с параметрами | |
| Scans | /scans |
Список запущенных и завершённых сканирований | |
| Assets | /assets |
Управление файлами: изображения, аудио, промпты |
Боковую панель можно свернуть, нажав на иконку в верхней части панели. В свёрнутом состоянии отображаются только иконки разделов.
Dashboard¶
Страница Dashboard (/dashboard) является стартовой страницей после входа в Систему. Подробное описание виджетов приведено в разделе Dashboard и аналитика.
На странице отображаются:
- Общее количество сканирований по статусам (завершено, в процессе, с ошибками).
- Уязвимости по критичности — круговая диаграмма распределения найденных уязвимостей.
- Последние сканирования — список недавних сканирований с основной информацией.
- Здоровье моделей — обзор доступности зарегистрированных моделей.
- Эффективность атак — сравнительная статистика типов атак.
Страница Models (Модели)¶
Страница Models (/models) предоставляет интерфейс для управления моделями ИИ, зарегистрированными в Системе. Подробное описание приведено в разделе Управление моделями.
Список моделей¶
Основная область содержит таблицу зарегистрированных моделей со следующими столбцами:
| Столбец | Описание |
|---|---|
| Название | Имя модели, заданное при регистрации |
| Тип | Тип модели: LLM, CV, MLLM, SPEECH, RS, TABULAR |
| Статус | Текущий статус модели с цветовой индикацией |
| Доступ | Тип доступа: API (чёрный ящик) или Local (белый ящик, с загруженными весами) |
| Health | Результат последней проверки доступности |
| Контракт | Наличие настроенного API-контракта ( / ) |
| Дата создания | Дата и время регистрации модели |
Статусы моделей¶
| Бейдж | Статус | Описание |
|---|---|---|
active |
Модель активна и доступна для сканирования | |
inactive |
Модель деактивирована, недоступна для сканирования | |
archived |
Модель в архиве (мягкое удаление), не отображается по умолчанию |
Индикаторы проверки здоровья¶
| Индикатор | Статус | Описание |
|---|---|---|
available |
Модель отвечает на запросы, API доступен | |
stale |
Проверка давно не выполнялась (более 24 часов) | |
unavailable |
Модель не отвечает или возвращает ошибку | |
| Не проверялась | Проверка здоровья ещё не выполнялась |
Фильтрация и поиск¶
Над таблицей моделей доступны следующие фильтры:
- Поиск по названию — текстовое поле с автоподсказками.
- Тип модели — выпадающий список: LLM, CV, MLLM, SPEECH, RS, TABULAR.
- Статус — выпадающий список: active, inactive, archived.
- Тип доступа — выпадающий список: API (blackbox), Local (whitebox).
Кнопки действий¶
- + Новая модель — открывает мастер регистрации новой модели (см. Регистрация модели).
- Обновить — принудительное обновление списка моделей.
Страница Modality (Модальность)¶
Страница Modality (/modality) предоставляет каталог доступных атак, сгруппированных по модальности целевой модели.
Вкладки модальностей¶
Атаки на большие языковые модели. Каждая атака представлена карточкой, содержащей:
- Название атаки (например,
Jailbreak Prompts,PAIR Attack,Crescendo). - Категория (jailbreak, prompt injection, function injection, breakfun).
- Сложность — визуальная шкала: простая / средняя / сложная.
- Примерное время — ориентировочная длительность выполнения.
- Требования — необходимые ресурсы (GPU, объём памяти).
- Кнопка Настроить — переход к настройке атомарной атаки.
Атаки на модели компьютерного зрения. Включают 19 алгоритмов:
- Градиентные атаки: FGSM, I-FGSM, MI-FGSM, PGD, TI.
- Оптимизационные атаки: C&W, DeepFool, L-BFGS, JSMA, LogBarrier.
- Трансферные атаки: ILA, TREMBA.
- Универсальные возмущения: UAP, APP.
- Blackbox-атаки: ZOO, OnePixel, Simple BlackBox.
- Специальные атаки: ReColorAdv, SinIR.
Для каждой карточки указаны тип доступа (whitebox/blackbox), требования к весам модели и GPU.
Атаки на модели распознавания речи. Включают 6 алгоритмов:
- Бэкдор-атаки (blackbox): DABA, PIBA, JingleBack, PBSM.
- Акустические атаки (blackbox): Ultrasonic.
- Градиентные атаки (whitebox): BIM (требуется GPU и локальная модель Whisper).
Для каждой карточки указаны формат аудиофайлов и необходимые параметры.
Элементы карточки атаки¶
Каждая карточка атаки содержит:
+------------------------------------------+
| [Иконка] Название атаки |
| Категория: jailbreak |
| |
| Сложность: ●●●○○ Время: ~5 мин |
| Требования: GPU не требуется |
| Доступ: blackbox |
| |
| [Настроить] |
+------------------------------------------+
Страница Scan Profiles (Профили сканирования)¶
Страница Scan Profiles (/profiles) предоставляет интерфейс для создания и управления профилями сканирования. Подробное описание приведено в разделе Профили сканирования.
Список профилей¶
Таблица профилей содержит следующие столбцы:
| Столбец | Описание |
|---|---|
| Название | Имя профиля сканирования |
| Тип | Тип профиля: llm, image, audio |
| Количество атак | Число настроенных атак в профиле |
| Шаблон | Является ли профиль шаблоном ( / ) |
| Публичный | Доступен ли другим пользователям ( / ) |
| Дата создания | Дата и время создания профиля |
Кнопки действий¶
- + Новый профиль — открывает мастер создания профиля.
- Клонировать — создание копии существующего профиля.
- Удалить — удаление выбранного профиля.
Страница Scans (Сканирования)¶
Страница Scans (/scans) отображает список всех запущенных и завершённых сканирований. Подробное описание приведено в разделе Запуск сканирований.
Список сканирований¶
| Столбец | Описание |
|---|---|
| ID | Уникальный идентификатор сканирования |
| Статус | Текущий статус с прогресс-баром |
| Модель | Название модели, на которую направлено сканирование |
| Профиль | Название использованного профиля сканирования |
| Тип | Тип сканирования: atomic (одна атака) или full (комплексное) |
| Уязвимости | Количество обнаруженных уязвимостей по критичности |
| Дата запуска | Дата и время начала сканирования |
| Длительность | Время выполнения (для завершённых) или текущее время (для активных) |
Статусы сканирования¶
| Цвет прогресс-бара | Статус | Описание |
|---|---|---|
pending |
Сканирование поставлено в очередь | |
running |
Сканирование выполняется | |
completed |
Сканирование завершено успешно | |
failed |
Сканирование завершилось с ошибкой | |
cancelled |
Сканирование отменено пользователем |
Фильтрация¶
- Статус — фильтр по статусу сканирования.
- Модель — фильтр по целевой модели.
- Период — фильтр по дате (сегодня, неделя, месяц, произвольный).
- Тип — фильтр по типу (atomic / full).
Страница Assets (Ассеты)¶
Страница Assets (/assets) предоставляет интерфейс для управления файлами, используемыми в качестве входных данных для атак. Подробное описание приведено в разделе Управление ассетами.
Вкладки¶
Загруженные изображения для CV-атак. Для каждого изображения отображаются:
- Миниатюра предпросмотра.
- Имя файла.
- Размеры (ширина x высота).
- Размер файла.
- Дата загрузки.
Загруженные аудиофайлы для ASR-атак. Для каждого файла отображаются:
- Плеер для прослушивания.
- Имя файла.
- Длительность.
- Частота дискретизации.
- Размер файла.
- Дата загрузки.
Библиотека промптов для LLM-атак. Для каждого промпта отображаются:
- Текст промпта (с возможностью развернуть).
- Категория.
- Источник (системный / пользовательский).
Горячие клавиши¶
| Комбинация | Действие |
|---|---|
| Ctrl+K / Cmd+K | Открыть глобальный поиск |
| Esc | Закрыть модальное окно или панель |
| F5 | Обновить текущую страницу |
Тема оформления¶
Система поддерживает три режима оформления:
- Автоматический — тема определяется по настройкам операционной системы.
- Светлая тема — светлый фон, тёмный текст.
- Тёмная тема — тёмный фон, светлый текст.
Переключение темы доступно через иконку / / в шапке страницы.
Уведомления¶
При нажатии на иконку колокольчика открывается панель уведомлений. Система генерирует уведомления о следующих событиях:
| Событие | Описание |
|---|---|
| Сканирование завершено | Уведомление об успешном завершении сканирования с кратким описанием результатов |
| Ошибка сканирования | Уведомление об ошибке с указанием причины |
| Модель недоступна | Уведомление о потере связи с зарегистрированной моделью |
| Проба завершена | Результат диагностической пробы модели |
Непрочитанные уведомления отображаются в виде счётчика на иконке колокольчика.