Add RLUtils class for managing RL/AI dashboard endpoints

- Implemented methods for fetching AI stats, training history, and recent experiences.
- Added functionality to set operation mode (MANUAL, AUTO, AI) with appropriate handling.
- Included helper methods for querying the database and sending JSON responses.
- Integrated model metadata extraction for visualization purposes.
This commit is contained in:
Fabien POLLY
2026-02-18 22:36:10 +01:00
parent b8a13cc698
commit eb20b168a6
684 changed files with 53278 additions and 27977 deletions

781
web/i18n/ru.json Normal file
View File

@@ -0,0 +1,781 @@
{
"nav.dashboard": "Панель управления",
"nav.bjorn": "Bjorn",
"nav.netkb": "База сети",
"nav.network": "Сеть",
"nav.credentials": "Пароли",
"nav.vulnerabilities": "Уязвимости",
"nav.attacks": "Атака",
"nav.scheduler": "Планировщик",
"nav.database": "База данных",
"nav.files": "Файлы",
"nav.loot": "Добыча",
"nav.actions": "Действия",
"nav.actionsStudio": "Студия действий",
"nav.backup": "Бэкап и Обн.",
"nav.webEnum": "Веб-энум",
"nav.zombieland": "Зомбиленд",
"nav.settings": "Настройки",
"nav.shortcuts": "Горячие клавиши",
"nav.pages": "Страницы",
"status.initializing": "Инициализация...",
"status.online": "В сети",
"status.offline": "Не в сети",
"console.title": "Консоль",
"console.clear": "Очистить",
"console.sseOn": "SSE Вкл",
"console.sseOff": "SSE Выкл",
"console.newLogs": "{{count}} новых логов",
"settings.theme": "Тема",
"settings.language": "Язык",
"settings.general": "Общие",
"settings.toggles": "Опции",
"settings.editValue": "Изменить значение",
"settings.addValues": "Добавить значения (через запятую)...",
"settings.setValue": "Установить значение...",
"settings.errorLoading": "Ошибка загрузки конфигурации",
"settings.configSaved": "Конфигурация сохранена",
"settings.errorSaving": "Ошибка сохранения конфигурации",
"settings.defaultsRestored": "Настройки по умолчанию восстановлены",
"settings.errorRestoring": "Ошибка восстановления настроек по умолчанию",
"theme.group.colors": "Цвета",
"theme.group.surfaces": "Поверхности",
"theme.group.layout": "Макет",
"theme.token.bg": "Фон",
"theme.token.ink": "Цвет текста",
"theme.token.accent1": "Акцент 1 (Кислотный)",
"theme.token.accent2": "Акцент 2 (Циан)",
"theme.token.danger": "Опасно",
"theme.token.warning": "Предупреждение",
"theme.token.ok": "Успех",
"theme.token.panel": "Панель",
"theme.token.panel2": "Панель Альт",
"theme.token.ctrlPanel": "Панель управления",
"theme.token.border": "Рамка",
"theme.token.radius": "Радиус рамки",
"theme.advanced": "Продвинутый CSS",
"theme.applyRaw": "Применить",
"theme.reset": "Сбросить",
"dash.title": "Панель управления",
"dash.battery": "Батарея",
"dash.internet": "Интернет",
"dash.cpu": "ЦП",
"dash.ram": "ОЗУ",
"dash.disk": "Диск",
"dash.temp": "Темп",
"dash.uptime": "Аптайм",
"dash.hostsAlive": "Активные хосты",
"dash.totalHosts": "Всего хостов",
"dash.openPorts": "Открытые порты",
"dash.credentials": "Пароли",
"dash.vulnerabilities": "Уязвимости",
"dash.actions": "Действия",
"dash.connected": "Подключено",
"dash.disconnected": "Отключено",
"dash.charging": "Зарядка",
"dash.discharging": "Разрядка",
"dash.full": "Заряжен",
"dash.connectivity": "Связь",
"dash.liveOps": "Операции в реальном времени",
"dash.tapRefresh": "Нажмите для обновления",
"dash.wifi": "Wi-Fi",
"dash.ethernet": "Ethernet",
"dash.usb": "USB",
"dash.bluetooth": "Bluetooth",
"dash.mode": "Режим",
"dash.gps": "GPS",
"dash.age": "Возраст Bjorn",
"dash.plugged": "Подключен",
"dash.noBattery": "Нет батареи",
"dash.sinceScan": "с последнего сканирования",
"dash.wifiKnown": "Известные Wi-Fi",
"dash.dataFiles": "Собранные данные / файлы",
"dash.fileDescriptors": "Дескрипторы файлов",
"dash.attackScripts": "Скрипты атаки",
"dash.system": "Система",
"dash.zombies": "Зомби",
"netkb.title": "База знаний о сети",
"netkb.showOffline": "Показать офлайн",
"netkb.gridView": "Сетка",
"netkb.listView": "Список",
"netkb.hostname": "Имя хоста",
"netkb.ip": "IP-адрес",
"netkb.mac": "MAC-адрес",
"netkb.vendor": "Производитель",
"netkb.ports": "Порты",
"netkb.essid": "ESSID",
"netkb.lastSeen": "Был в сети",
"netkb.firstSeen": "Первый раз",
"netkb.online": "В сети",
"netkb.offline": "Не в сети",
"netkb.openPorts": "Открытые порты",
"netkb.noHosts": "Хосты не найдены",
"network.title": "Визуализация сети",
"network.tableView": "Таблица",
"network.mapView": "Карта",
"network.hostname": "Имя хоста",
"network.ip": "IP-адрес",
"network.mac": "MAC",
"network.ports": "Порты",
"network.status": "Статус",
"network.searchPlaceholder": "Поиск хостов...",
"network.noData": "Нет данных о сети",
"creds.title": "Пароли",
"creds.total": "Всего",
"creds.unique": "Уникальные",
"creds.types": "Типы",
"creds.username": "Имя пользователя",
"creds.password": "Пароль",
"creds.service": "Сервис",
"creds.host": "Хост",
"creds.port": "Порт",
"creds.type": "Тип",
"creds.timestamp": "Метка времени",
"creds.showPassword": "Показать пароль",
"creds.hidePassword": "Скрыть пароль",
"creds.copyPassword": "Копировать",
"creds.exportAll": "Экспортировать все",
"creds.noCredentials": "Пароли не найдены",
"vulns.title": "Таблица уязвимостей",
"vulns.total": "Всего",
"vulns.critical": "Критическая",
"vulns.high": "Высокая",
"vulns.medium": "Средняя",
"vulns.low": "Низкая",
"vulns.infoLevel": "Инфо",
"vulns.host": "Хост",
"vulns.port": "Порт",
"vulns.service": "Сервис",
"vulns.severity": "Критичность",
"vulns.description": "Описание",
"vulns.cve": "CVE",
"vulns.scanDate": "Дата сканирования",
"vulns.details": "Детали",
"vulns.noVulns": "Уязвимости не найдены",
"vulns.byHost": "По хосту",
"vulns.bySeverity": "По критичности",
"vulns.byService": "По сервису",
"attacks.title": "Менеджер атак",
"attacks.running": "Запущено",
"attacks.completed": "Завершено",
"attacks.failed": "Ошибка",
"attacks.queued": "В очереди",
"attacks.start": "Старт",
"attacks.stop": "Стоп",
"attacks.restart": "Рестарт",
"attacks.status": "Статус",
"attacks.target": "Цель",
"attacks.action": "Действие",
"attacks.duration": "Длительность",
"attacks.progress": "Прогресс",
"attacks.noAttacks": "Нет запущенных атак",
"sched.title": "Планировщик действий",
"sched.pending": "Ожидание",
"sched.running": "Запущено",
"sched.done": "Готово",
"sched.failed": "Ошибка",
"sched.all": "Все",
"sched.searchPlaceholder": "Поиск задач...",
"sched.noTasks": "Задачи не найдены",
"sched.stats": "{{running}} запущено / {{pending}} ожидает / {{done}} готово",
"db.title": "Менеджер БД",
"db.tables": "Таблицы",
"db.rows": "Строки",
"db.columns": "Колонки",
"db.search": "Поиск таблиц...",
"db.searchRows": "Поиск строк...",
"db.export": "Экспорт",
"db.import": "Импорт",
"db.addRow": "Добавить строку",
"db.deleteRow": "Удалить строку",
"db.deleteSelected": "Удалить выбранное",
"db.saveChanges": "Сохранить",
"db.discardChanges": "Отмена",
"db.confirmDelete": "Подтвердить удаление?",
"db.noTables": "Таблицы не найдены",
"db.noData": "Нет данных в этой таблице",
"db.hide": "Скрыть",
"db.showSidebar": "Показать панель",
"files.title": "Проводник",
"files.gridView": "Сетка",
"files.listView": "Список",
"files.size": "Размер",
"files.modified": "Изменен",
"files.name": "Имя",
"files.type": "Тип",
"files.download": "Скачать",
"files.preview": "Предпросмотр",
"files.noFiles": "Файлы не найдены",
"files.parentDir": "Родительская директория",
"files.searchPlaceholder": "Поиск файлов...",
"loot.title": "Добыча",
"loot.directories": "Директории",
"loot.totalFiles": "Всего файлов",
"loot.totalSize": "Общий размер",
"loot.download": "Скачать",
"loot.downloadAll": "Скачать все",
"loot.noLoot": "Добыча не найдена",
"loot.explore": "Исследовать",
"actions.title": "Менеджер действий",
"actions.available": "Доступно",
"actions.enabled": "Включено",
"actions.disabled": "Выключено",
"actions.category": "Категория",
"actions.enableAll": "Включить все",
"actions.disableAll": "Выключить все",
"actions.import": "Импорт",
"actions.export": "Экспорт",
"actions.noActions": "Действия не найдены",
"actions.description": "Описание",
"actions.menu.restartService": "Перезапустить службу Bjorn",
"actions.menu.deleteActionStatus": "Удалить все статусы действий",
"actions.menu.clearOutput": "Очистить папку Output",
"actions.menu.clearLogs": "Очистить логи",
"actions.menu.reloadImages": "Перезагрузить изображения (экспериментально)",
"actions.menu.reloadFonts": "Перезагрузить шрифты",
"actions.menu.reloadActionsJson": "Перезагрузить JSON действий",
"actions.menu.initializeCsv": "Инициализировать CSV файлы",
"actions.menu.clearLivestatus": "Удалить файл Livestatus",
"actions.menu.refreshActionsFile": "Обновить файл действий",
"actions.menu.clearNetkb": "Очистить базу знаний сети",
"actions.menu.clearSharedConfig": "Удалить JSON общей конфигурации",
"actions.menu.eraseMemories": "Стереть память Bjorn",
"actions.menu.reboot": "Перезагрузить систему",
"actions.menu.shutdown": "Выключить систему",
"actions.tip.restartService": "Перезапускает службу Bjorn для обновления ее состояния.",
"actions.tip.deleteActionStatus": "Удаляет все статусы успеха и ошибок действий/атак в netkb.csv.",
"actions.tip.clearOutput": "Удаляет все файлы в папках вывода и подпапках.",
"actions.tip.clearLogs": "Удаляет все системные файлы логов.",
"actions.tip.reloadImages": "Перезагружает изображения, используемые системой.",
"actions.tip.reloadFonts": "Перезагружает шрифты приложения.",
"actions.tip.reloadActionsJson": "Перезагружает сгенерированный JSON файл действий.",
"actions.tip.initializeCsv": "Заново создает файлы CSV и JSON.",
"actions.tip.clearLivestatus": "Удаляет файл статуса в реальном времени.",
"actions.tip.refreshActionsFile": "Обновляет файл действий для включения новых действий.",
"actions.tip.clearNetkb": "Удаляет всю информацию, сохраненную в базе знаний сети.",
"actions.tip.clearSharedConfig": "Удаляет JSON файл общей конфигурации.",
"actions.tip.eraseMemories": "Полностью стирает память и настройки Bjorn.",
"actions.tip.reboot": "Перезагружает всю систему.",
"actions.tip.shutdown": "Полностью выключает систему.",
"actions.confirm.restartRecommended": "Рекомендуется перезапуск службы. Перезагрузить сейчас?",
"actions.confirm.restartService": "Перезапустить службу Bjorn?",
"actions.confirm.deleteActionStatus": "Удалить все сохраненные статусы действий?",
"actions.confirm.clearOutput": "Полностью очистить папку output?",
"actions.confirm.clearLogs": "Удалить все файлы логов?",
"actions.confirm.clearNetkb": "Очистить базу знаний сети? Это действие необратимо.",
"actions.confirm.clearLivestatus": "Удалить файл livestatus?",
"actions.confirm.refreshActionsFile": "Обновить файл действий?",
"actions.confirm.clearSharedConfig": "Удалить JSON общей конфигурации? Это действие необратимо.",
"actions.confirm.eraseMemories": "Стереть всю память и настройки Bjorn? Это действие необратимо.",
"actions.confirm.reboot": "Перезагрузить всю систему?",
"actions.confirm.shutdown": "Выключить систему?",
"actions.msg.restartingService": "Служба Bjorn перезапускается...",
"actions.msg.restartFailed": "Ошибка перезапуска службы",
"actions.msg.actionStatusDeleted": "Все статусы действий удалены.",
"actions.msg.outputCleared": "Папка output очищена.",
"actions.msg.logsCleared": "Логи очищены.",
"actions.msg.netkbCleared": "База знаний сети очищена.",
"actions.msg.livestatusDeleted": "Файл livestatus удален.",
"actions.msg.actionsFileRefreshed": "Файл действий обновлен.",
"actions.msg.sharedConfigDeleted": "JSON общей конфигурации удален.",
"actions.msg.memoriesErased": "Память Bjorn стерта.",
"actions.msg.rebooting": "Система перезагружается...",
"actions.msg.shuttingDown": "Система выключается...",
"actions.msg.csvInitialized": "CSV файлы инициализированы.",
"actions.msg.actionsJsonReloaded": "JSON действий перезагружен.",
"actions.msg.imagesReloaded": "Изображения перезагружены.",
"actions.msg.fontsReloaded": "Шрифты перезагружены.",
"actions.msg.unknownAction": "Неизвестное действие",
"actions.msg.actionFailed": "Действие не удалось",
"studio.title": "Студия действий",
"studio.palette": "Палитра",
"studio.canvas": "Холст",
"studio.inspector": "Инспектор",
"studio.actionsTab": "Действия",
"studio.hostsTab": "Хосты",
"studio.globalTab": "Глобально",
"studio.save": "Сохранить",
"studio.load": "Загрузить",
"studio.run": "Запустить",
"studio.clear": "Очистить",
"studio.addNode": "Добавить узел",
"studio.removeNode": "Удалить узел",
"studio.search": "Поиск действий...",
"backup.title": "Бэкап и Обн.",
"backup.backupRestore": "Бэкап / Восстановление",
"backup.update": "Обновление",
"backup.createBackup": "Создать бэкап",
"backup.restoreBackup": "Восстановить",
"backup.downloadBackup": "Скачать",
"backup.deleteBackup": "Удалить бэкап",
"backup.lastBackup": "Последний бэкап",
"backup.checkUpdates": "Проверить обн.",
"backup.installUpdate": "Установить обн.",
"backup.currentVersion": "Текущая версия",
"backup.latestVersion": "Последняя версия",
"backup.upToDate": "Обновлено",
"backup.updateAvailable": "Доступно обн.",
"backup.clearLogs": "Очистить логи",
"backup.noBackups": "Бэкапы не найдены",
"backup.restoring": "Восстановление...",
"backup.creating": "Создание бэкапа...",
"webenum.title": "Веб-энумерация",
"webenum.totalResults": "Всего результатов",
"webenum.uniqueHosts": "Уникальные хосты",
"webenum.successCount": "Успех (2xx)",
"webenum.errorCount": "Ошибки (4xx/5xx)",
"webenum.host": "Хост",
"webenum.ip": "IP",
"webenum.port": "Порт",
"webenum.directory": "Директория",
"webenum.status": "Статус",
"webenum.size": "Размер",
"webenum.scanDate": "Дата сканирования",
"webenum.link": "Ссылка",
"webenum.exportJson": "Экспорт JSON",
"webenum.exportCsv": "Экспорт CSV",
"webenum.noResults": "Результаты не найдены",
"webenum.details": "Детали результата",
"webenum.openUrl": "Открыть URL",
"webenum.copyUrl": "Копировать URL",
"webenum.showing": "Показ {{start}}-{{end}} из {{total}} результатов",
"webenum.itemsPerPage": "Элементов на странице",
"webenum.refreshData": "Обновить данные",
"webenum.responseTime": "Время ответа",
"webenum.contentType": "Тип контента",
"webenum.fullUrl": "Полный URL",
"zombie.title": "Зомбиленд C2C",
"zombie.agents": "Агенты",
"zombie.terminal": "Терминал",
"zombie.commands": "Команды",
"zombie.totalAgents": "Всего агентов",
"zombie.onlineAgents": "В сети",
"zombie.offlineAgents": "Офлайн",
"zombie.idleAgents": "Ожидают",
"zombie.sendCommand": "Отправить команду",
"zombie.broadcast": "Рассылка всем",
"zombie.selectAgent": "Выбрать агента",
"zombie.os": "ОС",
"zombie.lastSeen": "Был в сети",
"zombie.status": "Статус",
"zombie.noAgents": "Нет подключенных агентов",
"zombie.quickCommands": "Быстрые команды",
"zombie.files": "Файлы",
"quick.autoScan": "Авто-скан",
"quick.connectWifi": "Подключить WiFi",
"quick.knownNetworks": "Известные сети",
"quick.importPotfiles": "Импорт Potfiles",
"quick.subtitle": "WiFi и Bluetooth",
"quick.pair": "Сопряжение",
"quick.trust": "Доверять",
"quick.forgetDevice": "Забыть устройство",
"quick.forgetDevicePrompt": "Забыть {{name}}?",
"quick.forgetNetworkPrompt": "Вы уверены, что хотите забыть эту сеть?",
"bjorn.title": "Экран EPD Bjorn",
"bjorn.epdScreen": "Экран e-Paper",
"bjorn.refreshInterval": "Интервал обновления",
"bjorn.autoRefresh": "Авто-обновление",
"bjorn.manualRefresh": "Обновить сейчас",
"bjorn.seconds": "секунд",
"common.search": "Поиск",
"common.filter": "Фильтр",
"common.refresh": "Обновить",
"common.save": "Сохранить",
"common.cancel": "Отмена",
"common.delete": "Удалить",
"common.edit": "Изменить",
"common.close": "Закрыть",
"common.loading": "Загрузка...",
"common.noData": "Данные недоступны",
"common.error": "Ошибка",
"common.success": "Успех",
"common.confirm": "Подтвердить",
"common.yes": "Да",
"common.no": "Нет",
"common.export": "Экспорт",
"common.import": "Импорт",
"common.download": "Скачать",
"common.upload": "Загрузить",
"common.copy": "Копировать",
"common.start": "Старт",
"common.stop": "Стоп",
"common.restart": "Рестарт",
"common.status": "Статус",
"common.name": "Имя",
"common.value": "Значение",
"common.type": "Тип",
"common.host": "Хост",
"common.port": "Порт",
"common.target": "Цель",
"common.date": "Дата",
"common.time": "Время",
"common.size": "Размер",
"common.actions": "Действия",
"common.details": "Детали",
"common.back": "Назад",
"common.next": "Далее",
"common.previous": "Назад",
"common.first": "Первый",
"common.last": "Последний",
"common.all": "Все",
"common.none": "Ничего",
"common.showing": "Показ",
"common.of": "из",
"common.results": "результатов",
"common.items": "элементов",
"common.page": "Страница",
"common.perPage": "на страницу",
"common.sortBy": "Сортировать по",
"common.ascending": "По возрастанию",
"common.descending": "По убыванию",
"common.view": "Вид",
"common.table": "Таблица",
"common.grid": "Сетка",
"common.list": "Список",
"common.map": "Карта",
"common.enabled": "Включено",
"common.disabled": "Выключено",
"common.on": "Вкл",
"common.off": "Выкл",
"common.version": "Версия",
"common.hide": "Скрыть",
"common.show": "Показать",
"common.add": "Добавить",
"common.remove": "Удалить",
"common.clear": "Очистить",
"common.reset": "Сбросить",
"common.apply": "Применить",
"common.run": "Запуск",
"common.send": "Отправить",
"common.connect": "Подключить",
"common.disconnect": "Отключить",
"common.selectAll": "Выбрать все",
"common.deselectAll": "Снять всё",
"common.copied": "Скопировано!",
"common.notFound": "Не найдено",
"backup.checkUpdatesHint": "Нажмите «Проверить обн.», чтобы увидеть версии.",
"backup.checkingUpdates": "Проверка обновлений...",
"backup.confirmFreshStart": "Подтвердить чистый запуск?",
"backup.createdSuccessfully": "Бэкап успешно создан.",
"backup.defaultUpdated": "Бэкап по умолчанию обновлен.",
"backup.deleted": "Бэкап удален.",
"backup.descriptionPlaceholder": "Описание бэкапа...",
"backup.enterDescription": "Пожалуйста, введите описание бэкапа.",
"backup.failedCheckUpdates": "Ошибка при проверке обновлений",
"backup.failedCreate": "Ошибка при создании бэкапа",
"backup.failedDelete": "Ошибка при удалении бэкапа",
"backup.failedLoadBackups": "Ошибка при загрузке бэкапов",
"backup.failedSetDefault": "Ошибка при установке по умолчанию",
"backup.freshStart": "Чистый запуск",
"backup.freshStartFailed": "Ошибка при чистом запуске",
"backup.freshStartInitiated": "Чистый запуск инициирован.",
"backup.github": "github",
"backup.keepActions": "Сохранить папку actions",
"backup.keepConfig": "Сохранить папку config",
"backup.keepData": "Сохранить папку data",
"backup.keepResources": "Сохранить папку resources",
"backup.noBackupsCreateAbove": "Бэкапы не найдены. Создайте один выше.",
"backup.restoreCompleted": "Восстановление завершено.",
"backup.restoreOptions": "Опции восстановления",
"backup.restorePoint": "точка-восстановления",
"backup.selectKeepFolders": "Выберите папки, которые нужно оставить во время операции:",
"backup.setDefault": "Сделать по умолчанию",
"backup.unnamedBackup": "Бэкап без имени",
"backup.updateInitiated": "Обновление инициировано.",
"backup.updateOptions": "Опции обновления",
"common.confirmDiscardUnsaved": "Отменить несохраненные изменения?",
"common.confirmQuestion": "Подтвердить?",
"common.default": "по умолчанию",
"common.deleteFailed": "Ошибка удаления",
"common.deleted": "Удалено",
"common.description": "Описание",
"common.directory": "директория",
"common.duplicate": "Дублировать",
"common.exportJson": "Экспорт JSON",
"common.failed": "ошибка",
"common.file": "файл",
"common.importJson": "Импорт JSON",
"common.new": "Новый",
"common.noMatches": "Нет совпадений",
"common.options": "Опции",
"common.processingPleaseWait": "Обработка, пожалуйста, подождите...",
"common.refreshed": "Обновлено",
"common.rename": "Переименовать",
"common.saving": "Сохранение...",
"common.unknown": "неизвестно",
"common.unsavedChanges": "Несохраненные изменения",
"db.autoRefresh": "Авто-обновление",
"db.changesDiscarded": "Изменения отменены",
"db.changesSaved": "Изменения сохранены",
"db.confirmDrop": "УДАЛИТЬ таблицу «{{table}}»? Это действие необратимо!",
"db.confirmTruncate": "Очистить все строки в «{{table}}»?",
"db.dangerZone": "Опасная зона",
"db.deletingRowsCount": "Удаление {{count}} строк(и)...",
"db.dropFailed": "Ошибка удаления таблицы",
"db.droppedTable": "Таблица {{table}} удалена",
"db.dropping": "Удаление...",
"db.emptyTable": "Пустая таблица",
"db.errorLoadingData": "Ошибка при загрузке данных",
"db.failedLoadCatalog": "Ошибка при загрузке каталога",
"db.failedLoadTable": "Ошибка при загрузке таблицы",
"db.filterTables": "Фильтр таблиц...",
"db.insertFailed": "Ошибка вставки",
"db.insertingRow": "Вставка строки...",
"db.noRowsSelected": "Строки не выбраны",
"db.rowInserted": "Строка вставлена",
"db.rowsDeleted": "Строки удалены",
"db.runningVacuum": "Выполнение VACUUM...",
"db.saveFailed": "Ошибка сохранения",
"db.selectTableFromSidebar": "Выберите таблицу на боковой панели",
"db.tableDropped": "Таблица удалена",
"db.tableTruncated": "Таблица очищена",
"db.truncateFailed": "Ошибка очистки",
"db.truncating": "Очистка...",
"db.vacuumComplete": "VACUUM завершен",
"db.vacuumDone": "VACUUM выполнен",
"db.vacuumFailed": "Ошибка VACUUM",
"files.confirmDelete": "Удалить {{label}} «{{name}}»?",
"files.downloadFile": "Скачать файл",
"files.duplicateFailed": "Ошибка дублирования",
"files.duplicated": "Дублировано",
"files.emptyDirectory": "Пустая директория",
"files.errorLoading": "Ошибка при загрузке файлов",
"files.failedLoadDir": "Ошибка при загрузке директории",
"files.filterPlaceholder": "Фильтр файлов...",
"files.itemsCount": "{{count}} элемент(ов)",
"files.newNamePrompt": "Новое имя:",
"files.noMatch": "Нет совпадающих файлов",
"files.openDirectory": "Открыть директорию",
"files.parent": ".. (родительская)",
"files.renameFailed": "Ошибка переименования",
"files.renamed": "Переименовано",
"files.root": "Корень",
"files.uploadComplete": "Загрузка завершена",
"files.uploadFailed": "Загрузка не удалась",
"files.uploadingCount": "Загрузка {{count}} файл(ов)...",
"studio.actionNotFound": "Действие не найдено",
"studio.classNameRequired": "Имя класса обязательно",
"studio.confirmDeleteAction": "Удалить действие «{{name}}»? Это действие необратимо.",
"studio.deletedName": "Удалено: {{name}}",
"studio.exportedFile": "Экспортировано: {{name}}",
"studio.filterActions": "Фильтр действий...",
"studio.importFailed": "Импорт не удался",
"studio.importedFile": "Импортировано: {{name}}",
"studio.loadFailed": "Загрузка не удалась",
"studio.loadedFromCacheName": "Загружено из кэша: {{name}}",
"studio.loadedName": "Загружено: {{name}}",
"studio.newActionCreated": "Новое действие создано",
"studio.noActionLoaded": "Действие не загружено",
"studio.saveFailedBackedUp": "Ошибка сохранения (создан локальный бэкап)",
"studio.savedName": "Сохранено: {{name}}",
"studio.setClassBeforeExport": "Установите класс перед экспортом",
"zombie.agentRemoved": "Агент {{name}} удален",
"zombie.agentsPurged": "{{count}} агент(ов) очищено",
"zombie.allAgents": "Все агенты",
"zombie.c2StartedOnPort": "C2-сервер запущен на порту {{port}}",
"zombie.c2Stopped": "C2-сервер остановлен",
"zombie.clearConsole": "Очистить консоль",
"zombie.clearLogs": "Очистить логи",
"zombie.commandBroadcasted": "Команда разослана всем",
"zombie.commandSentToAgents": "Команда отправлена {{count}} агент(ам)",
"zombie.confirmPurgeStale": "Очистить всех агентов, неактивных более 24 часов?",
"zombie.confirmRemoveAgent": "Удалить агента {{name}}?",
"zombie.confirmStopC2": "Остановить C2-сервер?",
"zombie.consoleCleared": "Консоль очищена",
"zombie.enterC2Port": "Введите порт C2:",
"zombie.enterCommand": "Введите команду...",
"zombie.failedPurgeStale": "Ошибка очистки неактивных агентов",
"zombie.failedRemoveAgent": "Ошибка удаления агента {{name}}",
"zombie.failedSendCommand": "Ошибка отправки команды",
"zombie.failedStartC2": "Ошибка запуска C2",
"zombie.failedStopC2": "Ошибка остановки C2",
"zombie.noAgentsConnected": "Нет подключенных агентов",
"zombie.noAgentsMatchSearch": "Нет агентов, соответствующих поиску",
"zombie.purgeStale": "Очистить неактивных",
"zombie.purgeStaleHint": "Очистить агентов, неактивных >24ч",
"zombie.removeAgent": "Удалить агента",
"zombie.startC2": "Запустить C2",
"zombie.stopC2": "Остановить C2",
"zombie.systemLogs": "Системные логи",
"zombieland.alive": "Жив",
"zombieland.c2Status": "Статус C2",
"zombieland.dead": "Мертв",
"zombieland.totalAgents": "Всего агентов",
"greeting": "Привет",
"start": "Старт",
"tick": "Тик",
"common.ip": "IP",
"common.mac": "MAC",
"common.os": "ОС",
"zombie.never": "Никогда",
"zombie.openInConsole": "Открыть в консоли",
"common.saved": "Сохранено",
"attacks.tabs.attacks": "Атаки",
"attacks.tabs.comments": "Комментарии",
"attacks.tabs.images": "Изображения",
"attacks.btn.addAttack": "Добавить атаку",
"attacks.btn.removeAttack": "Удалить атаку",
"attacks.btn.deleteAction": "Удалить действие",
"attacks.btn.restoreDefaultsBundle": "Восстановить настройки по умолчанию",
"attacks.btn.addSection": "Добавить раздел",
"attacks.btn.deleteSection": "Удалить раздел",
"attacks.btn.restoreDefault": "Восстановить по умолчанию",
"attacks.btn.createCharacter": "Создать персонажа",
"attacks.btn.deleteCharacter": "Удалить персонажа",
"attacks.section.characters": "Персонаж",
"attacks.section.statusImages": "Изображения статуса",
"attacks.section.staticImages": "Статичные изображения",
"attacks.section.webImages": "Веб-изображения",
"attacks.section.actionIcons": "Иконки действий",
"attacks.editor.selectAttack": "Выбрать атаку",
"attacks.empty.noAttacks": "Атаки не найдены.",
"attacks.empty.noComments": "Комментарии не найдены.",
"attacks.comments.placeholder": "Комментарии будут отображаться здесь...",
"attacks.images.enterEditMode": "Включить режим редактирования",
"attacks.images.exitEditMode": "Выйти из режима редактирования",
"attacks.images.sortName": "Сортировка: имя",
"attacks.images.sortDimensions": "Сортировка: размеры",
"attacks.images.search": "Поиск изображений...",
"attacks.images.rename": "Переименовать изображение",
"attacks.images.replace": "Заменить изображение",
"attacks.images.resizeSelected": "Изменить размер выбранного",
"attacks.images.addCharacters": "Добавить изображения персонажей",
"attacks.images.deleteSelected": "Удалить выбранное",
"attacks.images.addStatus": "Добавить изобр. статуса",
"attacks.images.addStatic": "Добавить статичное изобр.",
"attacks.images.addWeb": "Добавить веб-изобр.",
"attacks.images.addIcon": "Добавить иконку действия",
"attacks.errors.loadAttacks": "Ошибка загрузки атак.",
"attacks.errors.loadImages": "Ошибка загрузки изображений.",
"attacks.confirm.switchCharacter": "Переключиться на персонажа «{{name}}»?",
"attacks.confirm.removeAttack": "Удалить атаку «{{name}}»?",
"attacks.confirm.deleteAction": "Удалить действие «{{name}}»?",
"attacks.confirm.restoreAttack": "Восстановить «{{name}}» по умолчанию?",
"attacks.confirm.restoreDefaultsBundle": "Восстановить ВСЕ настройки по умолчанию (действия, изображения, комментарии)?",
"attacks.confirm.deleteCharacter": "Удалить персонажа «{{name}}»?",
"attacks.confirm.deleteSection": "Удалить раздел «{{name}}»?",
"attacks.confirm.restoreDefaultComments": "Восстановить комментарии по умолчанию?",
"attacks.confirm.deleteSelectedImages": "Удалить выбранные изображения?",
"attacks.prompt.newCharacterName": "Имя нового персонажа:",
"attacks.prompt.characterToDelete": "Персонаж для удаления:",
"attacks.prompt.newSectionName": "Имя нового раздела:",
"attacks.prompt.newImageName": "Новое имя:",
"attacks.prompt.resizeWidth": "Ширина изменения размера:",
"attacks.prompt.resizeHeight": "Высота изменения размера:",
"attacks.toast.characterSwitched": "Персонаж изменен",
"attacks.toast.attackImported": "Атака импортирована",
"attacks.toast.selectAttackFirst": "Сначала выберите атаку",
"attacks.toast.actionDeleted": "Действие удалено",
"attacks.toast.defaultsRestored": "Настройки по умолчанию восстановлены",
"attacks.toast.characterCreated": "Персонаж создан",
"attacks.toast.noDeletableCharacters": "Нет удаляемых персонажей",
"attacks.toast.characterDeleted": "Персонаж удален",
"attacks.toast.commentsRestored": "Комментарии восстановлены",
"attacks.toast.selectSectionFirst": "Сначала выберите раздел",
"attacks.toast.commentsSaved": "Комментарии сохранены",
"attacks.toast.selectExactlyOneImage": "Выберите ровно одно изображение",
"attacks.toast.selectAtLeastOneImage": "Выберите хотя бы одно изображение",
"attacks.toast.imagesResized": "Размеры изображений изменены",
"attacks.toast.characterImagesUploaded": "Изображения персонажей загружены",
"attacks.toast.selectStatusActionFirst": "Сначала выберите действие статуса",
"actions.toast.presetApplied": "Пресет применен",
"actions.toast.startingAction": "Запуск {{name}}...",
"actions.toast.actionStarted": "Действие запущено",
"actions.toast.stoppedByUser": "Остановлено пользователем",
"actions.toast.actionStopped": "Действие остановлено",
"actions.toast.stopFailed": "Остановка не удалась",
"actions.toast.failedToStop": "Не удалось остановить",
"actions.toast.consoleCleared": "Консоль очищена",
"actions.toast.noLogsToExport": "Нет логов для экспорта",
"actions.toast.logsExported": "Логи экспортированы",
"netkb.confirmRemoveAction": "Удалить действие «{{action}}» для IP «{{ip}}»?",
"netkb.actionRemoved": "Действие удалено",
"actions.running": "Запущено",
"attacks.btn.syncMissing": "Синхронизировать отсутствующие",
"attacks.images.gridDensity": "Плотность сетки",
"attacks.images.density": "Плотность",
"attacks.sync.defaultComment": "Добавить комментарий к этому действию",
"attacks.sync.none": "Нет атак для синхронизации.",
"attacks.sync.done": "Синхронизация завершена. Новые комментарии: {{comments}}, изобр. статуса: {{status}}, изобр. персонажей: {{characters}}.",
"attacks.sync.failed": "Ошибка синхронизации отсутствующих элементов",
"actions.args.free": "Свободные аргументы",
"actions.args.none": "Нет настраиваемых аргументов",
"actions.args.subtitle": "Сгенерировано автоматически из определений действий",
"actions.args.title": "Аргументы",
"actions.assign": "Назначить",
"actions.emptyPane": "Действие не выбрано",
"actions.logs.completed": "Готово",
"actions.logs.empty": "Логов пока нет",
"actions.logs.waiting": "Ожидание...",
"actions.searchPlaceholder": "Поиск действий...",
"actions.tabs.actions": "Действия",
"actions.tabs.arguments": "Аргументы",
"actions.toast.selectActionFirst": "Сначала выберите действие",
"common.move": "Переместить",
"common.ready": "Готов",
"common.menu": "Меню",
"common.browse": "Обзор...",
"common.platform": "Платформа",
"common.generate": "Генерировать",
"common.vendor": "Производитель",
"common.hostname": "Имя хоста",
"common.ports": "Порты",
"zombie.generateClient": "Генерировать клиент",
"zombie.checkStale": "Проверить неактивных",
"zombie.selectedAgents": "выбранных агентов",
"zombie.clientId": "ID клиента",
"zombie.labCreds": "Учетные данные лабы",
"zombie.deployOptions": "Опции развертывания",
"zombie.deployViaSSH": "Развернуть по SSH",
"zombie.fileBrowser": "Файловый менеджер",
"dash.lastUpdate": "Последнее обновление",
"netkb.searchPlaceholder": "Поиск по хосту, IP, производителю, порту...",
"netkb.searchHint": "Совет: введите «port:80» или «vendor:intel»",
"files.dropzoneHint": "Перетащите файлы сюда или нажмите для загрузки",
"files.moveToTitle": "Переместить в...",
"files.selectDestinationFolder": "Выберите папку назначения",
"attacks.sidebar.management": "Управление",
"sched.upcoming": "Предстоящие",
"sched.success": "Успех",
"sched.cancelled": "Отменено",
"sched.history": "История",
"sched.historyMsg": "Логи истории",
"creds.searchPlaceholder": "Поиск сервисов, пользователей...",
"creds.uniqueHosts": "Уникальные хосты",
"creds.totalCredentials": "Всего паролей",
"console.maxReconnect": "Консоль: достигнуто максимальное количество попыток переподключения",
"console.scrollToBottom": "Прокрутить вниз",
"console.manual": "Ручной",
"console.auto": "Авто",
"console.turnOnAuto": "Включить авто-режим",
"console.turnOnManual": "Включить ручной режим",
"console.noTarget": "Нет цели",
"console.noAction": "Нет действия",
"console.scanStarted": "Ручной скан запущен",
"console.scanFailed": "Ручной скан не удался",
"console.attackStarted": "Ручная атака запущена",
"console.attackFailed": "Ручная атака не удалась",
"console.failedToggleMode": "Не удалось переключить режим",
"console.reconnectAttempt": "Переподключение (попытка {{count}})...",
"quick.close": "Закрыть панель",
"quick.connectingTo": "Подключение к {{ssid}}...",
"quick.connectedTo": "Подключено к {{ssid}}",
"quick.connectionFailed": "Подключение не удалось",
"quick.loadKnownFailed": "Ошибка загрузки известных сетей",
"quick.priorityUpdated": "Приоритет обновлен",
"quick.priorityUpdateFailed": "Ошибка обновления приоритета",
"quick.networkRemoved": "Сеть удалена",
"quick.importingPotfiles": "Импорт pot-файлов...",
"quick.importedCount": "Импортировано {{count}} паролей",
"quick.btScanFailed": "Bluetooth-скан не удался",
"quick.btActioning": "{{action}} для {{name}}...",
"quick.btActionDone": "{{name}} : {{action}} выполнено",
"quick.btActionFailed": "Ошибка при {{action}}",
"quick.btForgotten": "{{name}} забыт",
"sidebar.close": "Закрыть боковую панель",
"api.aborted": "Прервано",
"api.timeout": "Время запроса истекло",
"api.failed": "Запрос не удался",
"router.notFound": "Страница не найдена: {{path}}",
"router.errorLoading": "Ошибка при загрузке страницы: {{message}}"
}