Введение¶
FIRERPA — это универсальная платформа управления устройствами для Android. Сервер работает непосредственно на устройстве, без дополнительных зависимостей среды выполнения; адаптирован под несколько поколений Android, работает как с Root, так и без него. ПК-клиент управляет устройствами через библиотеку Python, объединяя возможности автоматизации UI, удалённого администрирования, перехвата трафика, обратной разработки с помощью Hook, сетевого прокси, распределённой сетевой организации, AI Agent / MCP в единый сервис и API. По сравнению с использованием разрозненных самописных скриптов и различных инструментов, таких как Appium, mitmproxy, frida-server, adb, uiautomator2, преимущество FIRERPA заключается в едином источнике возможностей, унифицированной конфигурации, сквозной интеграции процессов и пригодности для длительной работы на нескольких устройствах и инженерного управления.
Подсказка
В этом разделе описывается позиционирование платформы FIRERPA и её ключевые возможности. Для установки и начала работы продолжите чтение раздела Быстрый старт.
Удалённый рабочий стол и потоковая трансляция экрана в реальном времени¶
FIRERPA предоставляет удалённый рабочий стол на основе браузера, позволяя просматривать и управлять экраном устройства в реальном времени без установки специализированного клиента на ПК; поддерживается доступ как в локальной сети, так и через интернет. Канал трансляции экрана поддерживает кодирование MJPEG и H.264, а также программный и аппаратный бэкенды. В зависимости от вычислительных возможностей устройства и состояния сети можно регулировать частоту кадров (до 60 кадров/с), масштабирование разрешения, битрейт и качество изображения, что значительно снижает использование полосы пропускания и повышает плавность в условиях слабой сети. Дополнительно поддерживается передача WebRTC с возможностью настройки STUN/TURN-серверов, что улучшает прохождение NAT и сквозную задержку; это подходит для сценариев удалённой отладки через публичный интернет и между регионами.
Удалённый рабочий стол поддерживает одновременное подключение нескольких пользователей, что удобно для совместного устранения неполадок, демонстраций и обучения. Поддерживается двунаправленный обмен буфером обмена и передача аудио в реальном времени (Android 10+). В том же веб-интерфейсе интегрированы терминал, загрузка файлов перетаскиванием, просмотр и скачивание каталогов и другие возможности администрирования; для повседневных операций достаточно одного порта. Встроен визуальный инспектор макета: подсветка элементов, навигация клавишей Tab, отображение координат и RGB, экспорт дерева XML-макета. Это позволяет непосредственно в удалённом рабочем столе проверять селекторы и логику автоматизации, значительно сокращая цикл «посмотрел на экран → написал скрипт».
Удалённый рабочий стол и RPC-интерфейс поддерживают сквозное шифрование TLS и контроль доступа по сертификатам сервиса; можно задать пароль для входа в WebUI, чтобы снизить риски при публикации в интернет. Возможности удалённого рабочего стола могут быть встроены в собственное веб-приложение через WebSocket (видео в реальном времени, сенсорное управление, терминал, кнопки и т. д.), а интеграция между разными источниками настраивается через параметр allow_origin, что удобно для превращения возможностей управления реальными устройствами в продукт.
Автоматизация UI¶
FIRERPA предоставляет полноценную систему автоматизации на основе селекторов, поддерживающую распространённые способы сопоставления, такие как text, resourceId, description, scrollable, а также цепочки child / sibling для работы с повторяющимися элементами, сложной иерархией или элементами без явных признаков. На уровне элементов поддерживаются снятие скриншотов, ожидание появления/исчезновения, получение координат углов/центра, проверка exists и другие тонкие операции; реализованы ввод Unicode, прокрутка жестом step, быстрая прокрутка fling, прокрутка до конца и другие взаимодействия. Возможно сосуществование с другими службами специальных возможностей на Android 8.0+, расширен поиск узлов WebView, что повышает успешность автоматизации гибридных приложений.
Монитор интерфейса (Watcher) позволяет в реальном времени отслеживать изменения UI и автоматически выполнять клики, нажатия клавиш или подсчёт при выполнении заданных условий. Это удобно для автоматического пропуска всплывающих окон с соглашениями, уведомлений об обновлениях, рекламных страниц и других мешающих процессов. Поддерживается комбинирование нескольких условий Selector и независимый запуск/остановка событий; можно подсчитывать количество появлений мимолётных экранов.
Виртуальный экран (Virtual Display) — одна из отличительных возможностей FIRERPA: на устройстве можно создать независимый фоновый дисплей, запускать в нём приложения и скрипты автоматизации, не мешая работе основного экрана. Например, виртуальный экран в фоне автоматически обрабатывает сообщения, а на основном экране по-прежнему можно смотреть видео или работать вручную. API виртуального экрана практически идентичен API основного устройства: существующие скрипты d.xxx можно плавно переключить на vd.xxx; Watcher также можно ограничить действием только в виртуальном экране. WebUI поддерживает отображение и переключение нескольких экранов: в удалённом рабочем столе можно выбирать, каким дисплеем управлять или какой просматривать. Это подходит для фонового удержания процессов, параллельных задач и смешанного сценария «ручная работа на переднем плане + автоматическая в фоне».
Для сценариев без стандартного дерева View (игры, самодельные интерфейсы) FIRERPA предлагает возможности OCR и сопоставления изображений. OCR поддерживает paddleocr, easyocr и пользовательские HTTP-бэкенды; в кластерных сценариях вычислительные ресурсы для распознавания можно централизовать на сервере, чтобы не загружать модель на каждом ПК. Поддерживается ускорение GPU и различные режимы сопоставления текста. Сопоставление изображений выполняется на стороне устройства (шаблонное сопоставление или SIFT), не потребляя ресурсы ПК; SIFT более устойчив к повороту, масштабированию и изменению освещения. Кроме того, доступна возможность мультитач: запись траекторий, воспроизведение, конструирование в коде и бинарная сериализация, что позволяет выражать сложные жесты и значения силы нажатия.
С точки зрения архитектуры FIRERPA использует клиент-серверную модель, что по сравнению с решениями типа AutoJS, где скрипты выполняются на самом устройстве, лучше подходит для централизованного управления, контроля версий и кластерного администрирования; легче, чем Appium; стабильнее, чем uiautomator2 в сценариях с несколькими устройствами. FIRERPA позиционируется как функциональное надмножество распространённых решений автоматизации Android: автоматизация, перехват трафика, Hook и администрирование могут быть связаны в одной платформе с помощью кода, без необходимости переключаться между несколькими инструментами.
Перехват трафика и MITM¶
FIRERPA предоставляет возможность MITM-перехвата в один клик: автоматическая установка системного корневого сертификата, настройка прокси, обработка различий между версиями Android и автоматическое восстановление сетевого состояния устройства при выходе — без ручной установки сертификатов и переключения прокси. Поддерживается глобальный перехват, перехват по имени пакета, изменение пакетов в реальном времени, общий веб-интерфейс mitmweb, а также перехват международного трафика через заданный канал с помощью вышестоящего HTTP-прокси. Встроена обработка понижения QUIC для уменьшения влияния QUIC на перехват. Даже если ПК и устройство могут общаться только через один порт FIRERPA (например, ADB connect, frp-переадресация), перехват всё равно возможен, что подходит для сложных сетевых топологий.
Помимо готовых скриптов, все возможности MITM доступны через API: установка/удаление системных корневых сертификатов совместима с форматами mitmproxy, Fiddler, Charles и другими; процесс перехвата можно встроить в конвейер автоматизации и выполнять в одной задаче с UI-операциями и Frida Hook. Предоставляется startmitm.exe для Windows, не требующий Python, что снижает порог входа.
Сеть, прокси и организация сетей¶
FIRERPA на стороне устройства предоставляет полные прокси-возможности: поддержка HTTP / HTTPS / SOCKS5 / Shadowsocks (несколько алгоритмов шифрования), проксирование на уровне приложений (включая несколько пользователей), проксирование DNS, проксирование UDP, обход локальной сети, сосуществование с OpenVPN, а также автоматическое подключение к заданному прокси при запуске сервиса. Прокси поддерживает IPv6 и UDP, что адаптирует к более сложным сетевым условиям.
HTTP-мостовой прокси устройства (tunnel2) предоставляет возможности обратного прокси: если направить HTTP-прокси ПК или браузера на телефон, трафик будет выходить через сетевой интерфейс телефона, внешний IP совпадёт с IP телефона; можно выбрать Wi-Fi или 4G (rmnet) в качестве исходящего интерфейса. Это удобно для совместной отладки, международного бизнеса, пула IP-адресов нескольких устройств и т. п.
Встроен клиент OpenVPN, поддерживающий аутентификацию по сертификатам, имени пользователя и паролю, а также смешанную. Может сосуществовать с системным прокси. Прилагаются Docker-образ OpenVPN и скрипт генерации конфигурации, автоматически создающий код подключения на стороне устройства и конфигурацию автозапуска, что снижает вероятность ошибок при ручном написании конфигурации OpenVPN. Встроен клиент frp: с помощью конфигурации fwd.* можно переадресовывать сервисы устройства на публичный сервер; поддерживается шифрование и TLS.
Реализовано обнаружение сервисов mDNS: после включения сервисы, такие как удалённый рабочий стол, доступны по доменному имени {device_id}.local; можно прикреплять TXT-метаданные (модель, ABI, идентификатор устройства и т. д.), что удобно для массового обнаружения и управления устройствами в локальной сети.
Frida и обратная разработка¶
FIRERPA включает последнюю версию Frida, не требуя отдельного развёртывания frida-server. В терминале удалённого рабочего стола можно напрямую использовать команды frida без громоздких параметров -U, -H и т. п. Встроены открытые патчи скрытия Frida и собственные возможности скрытия, которые постоянно обновляются для противодействия детектированию. Подключение использует токенную аутентификацию и безопасно выполняется через порт FIRERPA. Предоставляются патчи objection и инструменты-обёртки для java-bridge Frida 17.x, снижающие затраты на миграцию при официальных изменениях.
Поддерживается персистентность скриптов Frida: после краха или выхода приложения скрипт может автоматически внедряться заново; поддерживается автономная персистентность в YAML, мониторинг каталогов и горячее обновление. RPC Frida можно отобразить на методы Python, а также вызывать удалённо через HTTP + JSON-RPC 2.0; выполнение возможно в потоке JVM, главном потоке UI или в чистом JS-контексте. Данные, испускаемые через emit в скрипте, могут отправляться в HTTP / Redis / RabbitMQ(MQTT) с прикреплением метаданных устройства и приложения; поддерживаются сжатие zlib, повторные попытки HTTP и TLS для MQTT.
ADB, SSH и встроенный терминал¶
FIRERPA предоставляет встроенный ADB-сервис, независимый от системного ADB, позволяя подключаться по беспроводной сети с высокими привилегиями без включения режима разработчика, что помогает избегать детектирования «параметров разработчика». Модуль Magisk может предустанавливать adb_keys для авторизации по умолчанию. Встроен сервис SSH и служебные скрипты ssh.sh / scp.sh для удалённого выполнения команд и передачи файлов.
Встроенный терминал предустанавливает часто используемые инструменты анализа: strace, ltrace, tcpdump, scapy, fsmon, frida-tools, MemDumper и другие, а также интегрирует экосистему Python: Crypto, cv2, unicorn, capstone, keystone, redis, grpc и т. д. sqlite3 поддерживает wxsqlite / sqlcipher / sqlcrypto, что открывает путь к чтению зашифрованных баз данных WeChat, WeCom, приложений Alibaba и других. Встроенный терминал унифицирован с удалённым рабочим столом, SSH и ADB, позволяя выполнять анализ и самоконтроль непосредственно на устройстве, уменьшая переключение между ПК и устройством.
Распределённое управление и управление несколькими устройствами¶
Платформа Pigeon + hub-bridge (信鸽) от FIRERPA предоставляет централизованное решение для подключения нескольких устройств. Поддерживается единое управление локальными и удалёнными устройствами и доступ P2P, что подходит для сценариев «устройство дома, человек вдали» и совместной работы нескольких машин. hub v3 использует SAPI для унифицированных запросов и может одновременно подключаться к локальным и удалённым устройствам. Помимо Hub, поддерживаются два варианта самостоятельного развёртывания: frp-переадресация и организация сети OpenVPN; документация и Docker-комплекты прилагаются.
Начиная с версии 9.0 поддерживается сквозное соединение P2P Bridge и встроенная распределённая система задач; с версии 7.50 предоставляется услуга сетевой подписки, позволяющая обойтись без самостоятельного развёртывания frp/OpenVPN. В целом платформа рассчитана на массовое количество устройств, длительную работу в режиме онлайн, работу без присмотра: облачные фермы телефонов, фермы реальных устройств, кластеры эмуляторов.
AI / MCP / Agent¶
FIRERPA включает сервер MCP (путь API /mcp/), работающий по протоколу streamable-http. Поддерживаются вызовы инструментов (tool call), чтение ресурсов (resource read), подсказки (prompts), уведомления о прогрессе и журналирование. Возможно подключение к MCP-клиентам, таким как Claude, Cursor. Предоставляются официальные модули расширения MCP; пользовательские плагины можно размещать в ~/modules/extension.
Встроена команда agent, которая подключается к любому API, совместимому с OpenAI, + tool call и управляет устройством на естественном языке; поддерживается режим визуального анализа Vision. Предоставляется семантический исполнитель задач OpenAI. Можно комбинировать с crontab для выполнения запланированных AI-задач, встраивая возможности больших языковых моделей в конвейер автоматизации на реальных устройствах.
Системное управление и расширения¶
FIRERPA предоставляет более 160 API на Python, охватывающих операции с приложениями, файловый ввод-вывод, выполнение команд, состояние устройства, WiFi, прокси, OpenVPN, перезагрузку и выключение, журналы сервисов и многое другое. setprop позволяет записывать ro.* системные свойства, доступные только для чтения; API настроек позволяет читать и изменять яркость, режим разработчика и другие системные параметры; SELinux поддерживает создание доменов, переключение в permissive и детализированные правила allow/disallow. Поддерживаются все API для клонированных приложений (multi-user), тихое предоставление/отзыв разрешений, запуск неэкспортированных Activity, отключение приложений для экономии ресурсов.
Предоставляются возможности бинарного патчинга (шестнадцатеричные шаблоны с подстановочными знаками, пути glob, режим dryrun), а также сбор метрик времени выполнения: диск, батарея, CPU, память, сетевой ввод-вывод. Поддерживается воспроизведение WAV-аудио и API внутреннего хранилища. На устройстве интегрирован tflite-runtime с возможностью использования аппаратных вычислений, поддерживается инференс на стороне устройства.
Виртуальное окружение Debian позволяет запускать полноценный Debian с apt прямо на устройстве: компилировать BPF, разворачивать OpenSSH, устанавливать произвольные Python-зависимости, преодолевая ограничение встроенного терминала, где нельзя использовать pip/apt.
Развёртывание, безопасность и управление¶
FIRERPA поддерживает несколько способов установки: развёртывание в один клик через приложение (Root или Shizuku), автозапуск через модуль Magisk, ручную распаковку и встраивание в прошивку (ROM). Платформа рассчитана на круглосуточную работу 7×24. В приложении можно автоматически генерировать сертификаты сервиса; Magisk-архив может предустанавливать конфигурацию properties, сертификат lamda.pem и adb_keys. Все параметры поведения централизованно управляются через конфигурацию сервиса в формате ini: порт, параметры WebUI, сертификаты, OpenVPN, gproxy, frp, tunnel2, cron, sshd, adb, mdns и т. д. WebUI поддерживает визуальное редактирование, режим Raw-текста и горячую перезагрузку сервиса (Reload Service), а также загрузку конфигурации с удалённого файлового сервера.
Поддерживается запуск под двумя учётными записями: root и shell. Обеспечивается совместимость с архитектурами arm64, armeabi-v7a, x86, x86_64; работает на реальных устройствах, эмуляторах LDPlayer/NOX, Redroid, WSA, AVD, облачных телефонах и других средах. Пути деинсталляции стандартизированы, в системе не остаётся мусорных файлов. Эксклюзивная блокировка API предотвращает конфликты нескольких клиентов за одно устройство. Политика конфиденциальности явно указывает, что не собираются личные данные, такие как контакты, SMS, геолокация; поддерживается офлайн-авторизация.
Долгосрочное развитие¶
FIRERPA непрерывно развивается более 6 лет, покрывая исправления совместимости с Android 14–16. Постоянно совершенствуются многопользовательский удалённый рабочий стол, стандартизированное API касаний, протокол MCP, версии и скрытность Frida, прокси IPv6/UDP, P2P Bridge, распределённые задачи и другие аспекты.
Ключевое преимущество FIRERPA не в какой-то отдельной функции, а в интеграции на одном Android-устройстве, в одном сервисе и в одном Python-клиенте таких возможностей, как удалённый рабочий стол (WebRTC/H.264/многопользовательский), автоматизация UI (включая виртуальный экран, Watcher, OCR, сопоставление изображений, мультитач), перехват трафика в один клик, встроенная Frida, полнофункциональный прокси и организация сетей VPN/frp/P2P, ADB/SSH/встроенный терминал, AI MCP/Agent, системное управление, виртуальный Debian, постоянное хранилище KV, шифрование скриптов. Благодаря этому тестирование безопасности, анализ соответствия, восстановление протоколов, массовое управление и автоматизированные бизнес-процессы могут выполняться в едином конвейере, а не собираться из множества инструментов.