Skip to main content

Cyberstrike is now open source! AI-powered penetration testing for security professionals. Star on GitHub

Web

CyberStrike может работать как веб-приложение в вашем браузере, предоставляя полный опыт AI-оценки безопасности без необходимости терминала.

SCREENSHOT: web-ui-overview.png

Веб-интерфейс с боковой панелью сессий, панелью чата и просмотром файлов

Начало работы

Запустите веб-интерфейс командой:

Terminal window
cyberstrike web

Это запускает локальный сервер на 127.0.0.1 (порт 4096 по умолчанию) и открывает CyberStrike в вашем браузере по умолчанию.

Caution

Безопасность: Если CYBERSTRIKE_SERVER_PASSWORD не установлен, сервер будет незащищён. Это допустимо для локального использования, но обязательно при сетевом доступе.

Info

Windows: Запускайте эту команду из WSL, а не из PowerShell, для корректной интеграции с файловой системой и терминалом.

Конфигурация

Порт

Terminal window
cyberstrike web --port 4096

По умолчанию система автоматически выбирает свободный порт.

Имя хоста

Terminal window
# Только localhost (по умолчанию)
cyberstrike web --hostname 127.0.0.1
# Доступ из сети
cyberstrike web --hostname 0.0.0.0

Обнаружение mDNS

Включите обнаружение в локальной сети. Автоматически устанавливает hostname в 0.0.0.0.

Terminal window
cyberstrike web --mdns

С пользовательским доменом:

Terminal window
cyberstrike web --mdns --mdns-domain myproject.local

CORS

Разрешение кросс-доменных запросов с определённых доменов:

Terminal window
cyberstrike web --cors https://example.com

Аутентификация

Terminal window
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 одновременно с общими сессиями:

Terminal window
# Терминал 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 не требуется:

Terminal window
# Терминал 1: Запуск CyberStrike с паролем
CYBERSTRIKE_SERVER_PASSWORD=your-secret cyberstrike web --port 4096
# Терминал 2: Создание быстрого туннеля
cloudflared tunnel --url http://localhost:4096

cloudflared выводит публичный URL вида https://random-words.trycloudflare.com. Поделитесь этим URL вместе с учётными данными для доступа к CyberStrike из любого браузера.

Caution

Пароль обязателен. CyberStrike отказывается запускаться в серверном режиме без CYBERSTRIKE_SERVER_PASSWORD. Это ограничение по дизайну — сервер не запустится без него.

Именованный туннель с пользовательским доменом

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

Terminal window
# Терминал 1: Запуск CyberStrike с паролем
CYBERSTRIKE_SERVER_PASSWORD=your-secret cyberstrike web --port 4096
# Терминал 2: Однократная настройка
cloudflared tunnel login
cloudflared tunnel create cyberstrike
cloudflared tunnel route dns cyberstrike pentest.your-domain.com
# Запуск туннеля
cloudflared tunnel run --url http://localhost:4096 cyberstrike

Caution

Замените 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, сохраняющийся между перезапусками.

Для проверки настройки:

Terminal window
# Проверка статуса подключения туннеля
cloudflared tunnel info cyberstrike
# Проверка DNS-разрешения
dig pentest.your-domain.com CNAME

Info

Установка cloudflared: brew install cloudflared (macOS), apt install cloudflared (Debian/Ubuntu) или загрузите с Cloudflare.

Как работает аутентификация с туннелями

Middleware аутентификации CyberStrike учитывает туннели. Хотя cloudflared подключается с 127.0.0.1, сервер обнаруживает прокси-заголовки и обеспечивает аутентификацию:

  1. cloudflared пересылает запросы из интернета на localhost:4096
  2. Добавляет заголовки CF-Connecting-IP и X-Forwarded-For к каждому запросу
  3. CyberStrike обнаруживает эти заголовки и считает запрос удалённым
  4. Применяется HTTP Basic Auth — веб-интерфейс запрашивает имя пользователя и пароль
  5. Прямые локальные запросы (без прокси-заголовков) пропускают аутентификацию для удобства

Это означает, что локальные подключения через cyberstrike attach работают без пароля, а весь туннельный трафик требует учётных данных.

VIDEO: remote-tunnel-demo.mp4

Запуск CyberStrike, создание CF-туннеля и подключение с app.cyberstrike.io (~20 сек)

Подключение через app.cyberstrike.io

app.cyberstrike.io — размещённый веб-интерфейс CyberStrike. Вместо локального запуска веб-интерфейса вы можете использовать его для подключения к любому удалённому серверу CyberStrike.

  1. Откройте app.cyberstrike.io в браузере
  2. Нажмите на селектор сервера (верхний левый угол)
  3. Введите URL вашего туннеля (напр. https://pentest.example.com)
  4. Введите имя пользователя (cyberstrike по умолчанию) и пароль
  5. Зелёный индикатор подтверждает подключение

После подключения вы получаете полный функционал CyberStrike — сессии, агенты, MCP-инструменты, боковые панели и стриминг в реальном времени — всё через ваш туннель.

Info

Локальные AI-провайдеры: Если ваш сервер запускает Ollama или другие локальные LLM, app.cyberstrike.io использует их прозрачно. AI-вычисления происходят на стороне сервера — веб-интерфейс занимается только отображением и вводом.

SCREENSHOT: remote-server-selector.png

Селектор сервера с URL удалённого туннеля, учётными данными и зелёным индикатором

Самостоятельный хостинг веб-интерфейса

Вы можете собрать и развернуть собственный экземпляр веб-интерфейса CyberStrike, а затем направить его на любой сервер CyberStrike.

Terminal window
# Клонирование и сборка веб-интерфейса
git clone https://github.com/CyberStrikeus/CyberStrike.git
cd CyberStrike/packages/app
bun install && bun run build

Разверните папку dist/ на любом статическом хостинге (Vercel, Netlify, Cloudflare Pages и т.д.). Затем настройте CORS на вашем сервере CyberStrike для разрешения вашего домена:

Terminal window
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"]
}
}

Флаги командной строки переопределяют настройки файла конфигурации.