
MESH v0.2.0-beta
Зашифрованная одноранговая mesh-сеть VPN для удаленной мобильной криминалистики, обеспечивающая беспроводное получение данных через ADB и libimobiledevice, мониторинг сети и обнаружение вторжений через NAT и брандмауэры.
MESH — это сетевой инструмент для поддержки удалённого логического сбора данных с мобильных устройств.
MESH предоставляет аналитикам прямой, зашифрованный путь к мобильным устройствам для беспроводной отладки, мониторинга сети и криминалистического сбора, даже если эти устройства находятся за NAT, брандмауэрами или ограничительными мобильными сетями. Он строит частный оверлей, благодаря которому удалённое устройство ведёт себя так, как если бы оно находилось в той же локальной подсети. Для этого не требуются центральные VPN-серверы, проброс портов и постоянная инфраструктура для поддержки или защиты. Это обеспечивает простой и лёгкий удалённый мониторинг сети и сбор данных через Интернет совместно с такими инструментами, как MVT и AndroidQF.
Что он делает
- Удалённая мобильная криминалистика через ADB Wireless Debugging и libimobiledevice: запускайте WARD, MVT, AndroidQF и другие инструменты ADB/iOS так, как если бы устройство было локальным.
- Удалённый мониторинг сети: захват PCAP и система обнаружения вторжений Suricata через тот же зашифрованный mesh.
Что он не делает
- MESH предоставляет сетевые возможности, необходимые для удалённого сбора, но не является инструментом сбора.
- Мы включаем AndroidQF и MVT в состав пакета.
Как он укреплён
- Прямой транспорт WireGuard «точка-точка», если существует прямой путь.
- Опциональный AmneziaWG для маскировки WireGuard от DPI и национальных брандмауэров.
- Автоматический переход на зашифрованные HTTPS-ретрансляторы, когда UDP заблокирован.
Сети (Mesh) эфемерны и контролируются аналитиком: подключайте устройства, собирайте данные, затем разрушайте сеть. Ничего не остаётся работать, что помогает избежать отслеживания активности.
[!IMPORTANT] Публичная альфа: В настоящее время находится в публичной альфа-версии и активно разрабатывается. Проведён полный сторонний пентест, и все основные уязвимости исправлены. Возможны изменения и критические обновления. Для работы требуется определённый уровень технической экспертизы. Сообщайте об ошибках или проблемах безопасности через GitHub Issues.
Быстрый старт
Полная документация:
https://docs.meshforensics.org/
Предварительные требования
- Git
- Docker Engine с плагином Compose V2 (
docker compose, не устаревшийdocker-compose). Инструкция по установке. - Task (go-task) для оркестрации сборки и интерактивной настройки. Инструкция по установке. Краткая версия:
- Linux:
sudo snap install task --classic - macOS:
brew install go-task
- Linux:
[!NOTE] Большинство операций во время выполнения работают с обычным
docker compose, но интерактивные задачи настройки (управление.env, шаблоны конфигурации, ротация ключей аутентификации) требуют go-task.
1. Клонирование репозитория
git clone https://github.com/BARGHEST-ngo/mesh.git
cd MESH
2. Запуск управляющей плоскости
task build
task controlPlane
task controlPlane проведёт вас через интерактивную настройку и запустит все необходимые службы. Для большинства пользователей выбор Ephemeral с Automatic доменом — рекомендуемый путь: он не требует настройки сервера или DNS.
Выберите тип развёртывания. Эфемерная управляющая плоскость работает на вашей рабочей станции и доступна через Интернет по защищённому туннелю. Постоянная управляющая плоскость запускается на выделенном сервере, доступном из Интернета, которым вы управляете.
Выберите домен. Выбор Automatic позволяет MESH автоматически предоставить публичный HTTPS-адрес. Выберите Manual, если хотите использовать собственный домен.
Введите API-ключ. Если вы выбрали Automatic домен, вам будет предложено ввести API-ключ. Его предоставит команда Barghest — свяжитесь с нами, чтобы запросить доступ.
Подтвердите конфигурацию. Просмотрите сгенерированные настройки перед запуском MESH.
Если эти настройки неверны или настройка была прервана, удалите .env и снова выполните task controlPlane.
CONTROL_PLANE_TYPE=Ephemeral
PROXY_DOMAIN_TYPE=Automatic
MESH_SUBDOMAIN=<random 10 character slug>
FRP_AUTH_TOKEN=<secret token>
CONTROL_PLANE_URL=https://<slug>.tunnels.meshforensics.app
LOGIN_URL=https://<slug>.tunnels.meshforensics.app
Контейнеры запускаются, и генерируется API-ключ. Как только все службы станут работоспособными, MESH выведет одноразовый API-ключ для входа в веб-интерфейс.
Control plane API key (enter this in the web UI to log in):
<SECRET API KEY>
3. Доступ к веб-интерфейсу
Перейдите по URL вашей управляющей плоскости и введите API-ключ при запросе для входа.
https://<slug>.tunnels.meshforensics.app
Веб-интерфейс обслуживается по HTTPS с сертификатом, автоматически выпущенным Let's Encrypt.
[!IMPORTANT] По умолчанию ACL разрешает узлам каждой сети общаться друг с другом. Для продуктивных развёртываний следует использовать ограничительные политики. Измените их через вкладку ACL.
Теперь ваша сеть MESH готова принимать узлы.
Смотрите документацию по регистрации узлов и рабочим процессам криминалистики.
4. Разрушение сети
task down уничтожает сеть MESH, отключая всех пользователей, и, если вы выбрали Ephemeral развёртывание с Automatic доменом, эти данные и все следы удаляются и становятся недоступными.
Краткое описание архитектуры
MESH — это сильно модифицированный форк протокола Tailscale, но ему не требуется инфраструктура Tailscale.

