
zafrida-ui v0.3.7
Окно инструмента Frida UI внутри PyCharm / JetBrains IDE.
中文 | English
ZAFrida UI - PyCharm Frida Plugin
Текущая версия: 0.3.8
Основные обновления 0.3.8
- В панели Session «устройство» и «режим подключения» разделены на две независимые строки выбора: строка Device содержит только реальные устройства, строка Mode выбирает USB / Remote / Gadget и конечные точки. Проброс adb-портов для Remote/Gadget loopback, Force Stop, Open App всегда применяются к текущему выбранному телефону и больше не используют по ошибке предыдущее устройство.
- При первом открытии и обновлении устройств автоматически запускается неработающий adb server, больше не нужно вручную выполнять
adb devices. - Если сохранённое устройство не в сети, отображается заглушка «не подключено» и блокируются связанные операции; при подключении только одного USB-устройства оно автоматически выбирается с уведомлением в Console.
- Под строкой Mode отображается фактически используемый маршрут adb/frida; в режиме Gadget имя пакета Target доступно только для чтения, но его можно выделить и скопировать.
- В HTTP API
/stateдобавлен результат разбораconnection;device-select --hostпо-прежнему доступен, но устарел, для конечных точек используйтеmode-set --host/--port.
Основные обновления 0.3.7
- Каждый ZAFrida Project может независимо выбирать или совместно использовать окружение Python/Frida, по умолчанию используется интерпретатор текущего проекта PyCharm, поддерживаются локальные окружения venv, Conda, uv, Poetry, Pipenv, Hatch и другие.
- Переработаны Session UI и Project Settings, полностью отображается информация о версиях плагина, Python и Frida, оптимизированы адаптивная и перетаскиваемая панель логов и состояние сессии.
- Полная поддержка
.js/.ts, Frida 16/17, переключения между окружениями нескольких проектов, а также трёх процессов подключения: USB, Remote, Gadget. - Усилены локальный HTTP API, CLI и китайский Skill в части восстановления устройств, ожидания сессии и инкрементальных логов; удалён дублирующий и нестабильный слой адаптера MCP.
Описание проекта
Графический инструмент Frida, созданный специально для PyCharm/IntelliJ
ZAFrida UI — это плагин графической работы с Frida, интегрированный в PyCharm и линейку IDE JetBrains. Он призван решить проблемы громоздкой работы с Frida через командную строку и беспорядочного управления скриптами, предоставляя полноценный набор UI-интерфейсов для управления устройствами, процессами, скриптами и логами.
Ключевая особенность — система шаблонов в стиле «флажков»: пользователь может, устанавливая или снимая флажки, динамически вставлять фрагменты кода в основной скрипт или закомментировать их, реализуя «блочную» сборку Hook-скриптов. Кроме того, плагин включает полноценное проектное управление (zafrida-project.xml), поддерживающее быстрое переключение между конфигурациями множества устройств и окружений.
ZAFrida не заменяет Frida, а служит мощной UI-оболочкой для frida-tools, бесшовно интегрируясь с вашим существующим окружением Python и Frida.
Упрощённая Wiki: ZAFrida UI упрощённая Wiki (BBS) (это более простая Wiki) Подробное руководство: ZAFrida UI подробное руководство Wiki
Демонстрация

Быстрый старт
- Установка плагина: найдите "ZAFrida" в магазине плагинов IDE или установите с диска.
- Настройка окружения по умолчанию: по умолчанию используется Python Interpreter текущего проекта PyCharm; глобальные
Settings->Tools->ZAFridaсохраняют только значения по умолчанию для имён/путей инструментов. - Создание проекта: правый клик в представлении проекта ->
New Frida Project.- Если этому проекту нужна другая версия Frida, откройте ZAFrida
Project Settings, выберите интерпретатор Python или каталог окружения и нажмитеTest.
- Если этому проекту нужна другая версия Frida, откройте ZAFrida
- Написание/выбор скрипта: выберите ваш
agent.jsилиagent.tsв панели Run. - Отладка Hook:
- Подключите устройство (USB, Remote или Gadget).
- Выберите целевой процесс или имя пакета.
- Нажмите Run.
- Использование шаблонов: переключитесь на вкладку
Templatesи отметьте нужные функции Hook (например, "SSL Pinning Bypass") — код автоматически внедрится в ваш скрипт. - Автоматизация Skills (опционально): по умолчанию отключена. Перейдите в
Settings/Preferences -> ZAFrida -> Skills HTTP API, отметьтеEnable Skillsдля автоматического запуска локального API (также можно вручнуюStart/Stop), расположение CLI и шаблонов:- Skill и основной CLI:
skills-template/zafrida-http-control/ - Лаунчер для совместимости со старым путём:
skills-cli/zafrida_skill_cli.py
- Skill и основной CLI:
QR-код группы общения
Возможности
-
Управление устройствами и процессами
Интеграцияfrida-ls-devicesиfrida-ps, поддержка обновления списка устройств одним нажатием, просмотр запущенных процессов, работающих приложений или установленных приложений. -
Многопользовательские режимы подключения
Полная поддержка режимов USB / Remote / Gadget, поддержка пользовательских удалённых Host и Port, без ручного составления сложных параметров командной строки. -
Интерактивный запуск скриптов (Run / Attach)
- Поддержка двух действий выполнения — Run (по умолчанию Spawn) и Attach, а не простого «переключения режима».
- Поддержка Force Stop для принудительной остановки целевого приложения.
- Встроенный вывод логов в консоль с автоматическим сохранением логов в каталог проекта
zafrida-logs/.
-
Контекстное меню редактора JS / TypeScript (важно)
- Правый клик в области редактирования файла Frida
.jsили.tsпозволяет напрямую выбрать:- Run Frida Script: выполнить текущий файл как основной скрипт (по умолчанию Spawn).
- Attach Frida Script: внедрить текущий файл как присоединяемый скрипт в уже запущенный целевой процесс.
- Перед выполнением текущий файл автоматически сохраняется и происходит автоматическое переключение на ZAFrida Project, которому принадлежит скрипт.
- Подходит для быстрых PoC, проверки Demo, режима Gadget или мгновенного внедрения в уже запущенный процесс.
- Горячие клавиши:
- Windows / Linux:
Ctrl + Alt + S - macOS:
⌘ + ⌥ + S
- Windows / Linux:
- Правый клик в области редактирования файла Frida
-
Вставка Snippets из контекстного меню редактора
- В контекстном меню редактора JS / TypeScript доступен пункт ZAFrida Frida Snippets.
- Вставка часто используемых фрагментов кода Frida одним нажатием, например:
- обёртка
Java.perform - шаблон Hook метода Java
- Native Hook через
Interceptor.attach
- обёртка
- Процесс вставки следует IDE WriteCommandAction, безопасно отменяется/повторяется.