Web
CyberStrike может работать как веб-приложение в вашем браузере, предоставляя полный опыт AI-оценки безопасности без необходимости терминала.
SCREENSHOT: web-ui-overview.png
Веб-интерфейс с боковой панелью сессий, панелью чата и просмотром файлов
Начало работы
Запустите веб-интерфейс командой:
cyberstrike webЭто запускает локальный сервер на 127.0.0.1 (порт 4096 по умолчанию) и открывает CyberStrike в вашем браузере по умолчанию.
Caution
Безопасность: Если CYBERSTRIKE_SERVER_PASSWORD не установлен, сервер будет незащищён. Это допустимо для локального использования, но обязательно при сетевом доступе.
Info
Windows: Запускайте эту команду из WSL, а не из PowerShell, для корректной интеграции с файловой системой и терминалом.
Конфигурация
Порт
cyberstrike web --port 4096По умолчанию система автоматически выбирает свободный порт.
Имя хоста
# Только localhost (по умолчанию)cyberstrike web --hostname 127.0.0.1
# Доступ из сетиcyberstrike web --hostname 0.0.0.0Обнаружение mDNS
Включите обнаружение в локальной сети. Автоматически устанавливает hostname в 0.0.0.0.
cyberstrike web --mdnsС пользовательским доменом:
cyberstrike web --mdns --mdns-domain myproject.localCORS
Разрешение кросс-доменных запросов с определённых доменов:
cyberstrike web --cors https://example.comАутентификация
CYBERSTRIKE_SERVER_PASSWORD=secret cyberstrike webИмя пользователя по умолчанию — cyberstrike, изменяется через CYBERSTRIKE_SERVER_USERNAME.
VIDEO: web-launch-demo.mp4
Запуск cyberstrike web и автоматическое открытие браузера с живой сессией (~12 сек)
Возможности
Веб-интерфейс включает:
- Управление сессиями — создание, переключение, архивирование и удаление сессий
- Вкладки боковой панели — MCP, Bolt, Уязвимости, Веб-контекст и отслеживание задач
- Обозреватель файлов — просмотр и навигация по файлам проекта с подсветкой diff
- Панель ревью — просмотр изменений кода от AI перед принятием
- Терминал — встроенные вкладки терминала в браузере
- Обновления в реальном времени — SSE-стриминг для живого вывода агентов
- Уведомления об обновлениях — автоматическая проверка новых релизов CyberStrike
SCREENSHOT: web-side-panel-tabs.png
Боковая панель с вкладками MCP, Bolt, Уязвимости, Веб-контекст и Задачи
Панель веб-контекста
При использовании с расширением захвата Chrome вкладка Web в боковой панели отображает:
- Эндпоинты — Захваченные HTTP-запросы с методом и путём
- Роли — Обнаруженные роли пользователей и уровни прав
- Учётные данные — Токены аутентификации и идентификаторы сессий
- Объекты — Объекты данных, обнаруженные в API-ответах
- Функции — CRUD-операции, сопоставленные из шаблонов трафика
SCREENSHOT: web-context-panel.png
Панель веб-контекста с секциями Эндпоинты, Роли, Учётные данные, Объекты, Функции
Подключение терминала
Запустите веб-сервер и TUI одновременно с общими сессиями:
# Терминал 1: запуск веб-сервераcyberstrike web --port 4096
# Терминал 2: подключение TUI к тому же серверуcyberstrike attach http://localhost:4096Оба интерфейса видят одни и те же сессии, сообщения и активность агентов в реальном времени.
Удалённый доступ
CyberStrike поддерживает безопасный удалённый доступ, позволяя запускать сервер на одной машине и подключаться из любого места. Это полезно для:
- Запуска оценок на мощной рабочей станции при управлении с ноутбука
- Командной работы через общий сервер
- Доступа к CyberStrike через
app.cyberstrike.ioбез локальной установки - Использования локальных LLM (Ollama, vLLM) на GPU-сервере при работе с более лёгкой машины
Cloudflare Tunnel (рекомендуется)
Cloudflare Tunnel создаёт безопасное, зашифрованное соединение между вашим сервером CyberStrike и интернетом без открытия портов.
Быстрый туннель
Самый быстрый способ начать — аккаунт Cloudflare не требуется:
# Терминал 1: Запуск CyberStrike с паролемCYBERSTRIKE_SERVER_PASSWORD=your-secret cyberstrike web --port 4096
# Терминал 2: Создание быстрого туннеляcloudflared tunnel --url http://localhost:4096cloudflared выводит публичный URL вида https://random-words.trycloudflare.com. Поделитесь этим URL вместе с учётными данными для доступа к CyberStrike из любого браузера.
Caution
Пароль обязателен. CyberStrike отказывается запускаться в серверном режиме без CYBERSTRIKE_SERVER_PASSWORD. Это ограничение по дизайну — сервер не запустится без него.
Именованный туннель с пользовательским доменом
Для постоянного доступа создайте именованный туннель, привязанный к вашему домену:
# Терминал 1: Запуск CyberStrike с паролемCYBERSTRIKE_SERVER_PASSWORD=your-secret cyberstrike web --port 4096
# Терминал 2: Однократная настройкаcloudflared tunnel logincloudflared tunnel create cyberstrikecloudflared tunnel route dns cyberstrike pentest.your-domain.com
# Запуск туннеляcloudflared tunnel run --url http://localhost:4096 cyberstrikeCaution
Замените pentest.your-domain.com на поддомен домена, добавленного в Cloudflare. Например: pentest.example.com -> pentest.mydomain.com. Использование домена, не управляемого Cloudflare, приведёт к ошибкам DNS-разрешения.
Info
Новый домен? Если вы недавно добавили домен в Cloudflare, распространение nameserver может занять 1-24 часа в зависимости от регистратора. DNS-маршруты не будут работать до завершения распространения. Проверьте статус в панели Cloudflare в разделе Overview.
Это даёт стабильный URL https://pentest.your-domain.com, сохраняющийся между перезапусками.
Для проверки настройки:
# Проверка статуса подключения туннеляcloudflared tunnel info cyberstrike
# Проверка DNS-разрешенияdig pentest.your-domain.com CNAMEInfo
Установка cloudflared: brew install cloudflared (macOS), apt install cloudflared (Debian/Ubuntu) или загрузите с Cloudflare.
Как работает аутентификация с туннелями
Middleware аутентификации CyberStrike учитывает туннели. Хотя cloudflared подключается с 127.0.0.1, сервер обнаруживает прокси-заголовки и обеспечивает аутентификацию:
cloudflaredпересылает запросы из интернета наlocalhost:4096- Добавляет заголовки
CF-Connecting-IPиX-Forwarded-Forк каждому запросу - CyberStrike обнаруживает эти заголовки и считает запрос удалённым
- Применяется HTTP Basic Auth — веб-интерфейс запрашивает имя пользователя и пароль
- Прямые локальные запросы (без прокси-заголовков) пропускают аутентификацию для удобства
Это означает, что локальные подключения через cyberstrike attach работают без пароля, а весь туннельный трафик требует учётных данных.
VIDEO: remote-tunnel-demo.mp4
Запуск CyberStrike, создание CF-туннеля и подключение с app.cyberstrike.io (~20 сек)
Подключение через app.cyberstrike.io
app.cyberstrike.io — размещённый веб-интерфейс CyberStrike. Вместо локального запуска веб-интерфейса вы можете использовать его для подключения к любому удалённому серверу CyberStrike.
- Откройте app.cyberstrike.io в браузере
- Нажмите на селектор сервера (верхний левый угол)
- Введите URL вашего туннеля (напр.
https://pentest.example.com) - Введите имя пользователя (
cyberstrikeпо умолчанию) и пароль - Зелёный индикатор подтверждает подключение
После подключения вы получаете полный функционал CyberStrike — сессии, агенты, MCP-инструменты, боковые панели и стриминг в реальном времени — всё через ваш туннель.
Info
Локальные AI-провайдеры: Если ваш сервер запускает Ollama или другие локальные LLM, app.cyberstrike.io использует их прозрачно. AI-вычисления происходят на стороне сервера — веб-интерфейс занимается только отображением и вводом.
SCREENSHOT: remote-server-selector.png
Селектор сервера с URL удалённого туннеля, учётными данными и зелёным индикатором
Самостоятельный хостинг веб-интерфейса
Вы можете собрать и развернуть собственный экземпляр веб-интерфейса CyberStrike, а затем направить его на любой сервер CyberStrike.
# Клонирование и сборка веб-интерфейсаgit clone https://github.com/CyberStrikeus/CyberStrike.gitcd CyberStrike/packages/appbun install && bun run buildРазверните папку dist/ на любом статическом хостинге (Vercel, Netlify, Cloudflare Pages и т.д.). Затем настройте CORS на вашем сервере CyberStrike для разрешения вашего домена:
cyberstrike web --cors https://my-pentest-ui.example.comИли в cyberstrike.json:
{ "server": { "cors": ["https://my-pentest-ui.example.com"] }}Архитектура безопасности
CyberStrike реализует несколько уровней безопасности для удалённого доступа:
| Уровень | Защита |
|---|---|
| TLS-шифрование | Cloudflare Tunnel шифрует весь трафик от начала до конца. Никакие данные не передаются открытым текстом через интернет. |
| HTTP Basic Auth | Каждый удалённый запрос требует действительные имя пользователя и пароль. Учётные данные передаются через заголовок Authorization. |
| Обнаружение прокси | Сервер проверяет заголовки CF-Connecting-IP и X-Forwarded-For. Проксированные запросы с loopback всё равно аутентифицируются. |
| Обязательный пароль | cyberstrike serve и cyberstrike web отказываются запускаться без CYBERSTRIKE_SERVER_PASSWORD. |
| Без открытия портов | Cloudflare Tunnel не требует входящих портов. Сервер устанавливает только исходящие соединения к edge Cloudflare. |
| SPA-поток аутентификации | Сервер намеренно не отправляет заголовки WWW-Authenticate для предотвращения браузерных диалогов аутентификации. Веб-интерфейс обрабатывает аутентификацию через собственную форму входа. |
Danger
Никогда не открывайте CyberStrike напрямую в интернет без туннеля или VPN. Всегда используйте Cloudflare Tunnel, обратный прокси с TLS или частную сеть. Всегда устанавливайте надёжный уникальный пароль.
Файл конфигурации
Все опции веб-интерфейса можно задать в cyberstrike.json вместо флагов командной строки:
{ "server": { "port": 4096, "hostname": "0.0.0.0", "mdns": true, "cors": ["https://example.com"] }}Флаги командной строки переопределяют настройки файла конфигурации.