中文 | English
ZAFrida UI - PyCharm Frida Plugin
Versão atual: 0.3.7

Principais atualizações da 0.3.7
- Cada ZAFrida Project pode selecionar ou compartilhar de forma independente o ambiente Python/Frida, usando por padrão o interpretador do projeto PyCharm atual, com suporte a ambientes locais como venv, Conda, uv, Poetry, Pipenv, Hatch, etc.
- Session UI e Project Settings redesenhados, exibindo completamente as informações de versão do plugin, Python e Frida, com painel de logs adaptável e arrastável e estado da sessão otimizados.
- Suporte completo a
.js / .ts, Frida 16/17, alternância entre múltiplos ambientes de projeto, e fluxos de conexão USB, Remote e Gadget.
- API HTTP local, CLI e Skill em chinês aprimorados com recuperação de dispositivo, espera de sessão e capacidade de logs incrementais; camada de adaptação MCP duplicada e instável removida.
Introdução ao projeto
Ferramenta gráfica Frida projetada para PyCharm/IntelliJ
ZAFrida UI é um plugin de operação gráfica Frida integrado ao PyCharm e às IDEs da família JetBrains. Ele visa resolver os problemas de operações de linha de comando Frida tediosas e gerenciamento confuso de scripts, fornecendo um conjunto completo de interfaces de UI para gerenciar dispositivos, processos, scripts e logs.
O destaque principal está no seu sistema de gerenciamento de templates "baseado em caixas de seleção": os usuários podem marcar/desmarcar para inserir dinamicamente trechos de código no script principal ou comentá-los, permitindo a montagem de scripts Hook "tipo bloco de montar". Além disso, o plugin inclui gerenciamento completo baseado em projetos (zafrida-project.xml), com suporte a alternância rápida entre múltiplos dispositivos e configurações de ambiente.
ZAFrida não substitui o Frida, mas atua como um poderoso shell de UI para frida-tools, integrando-se perfeitamente ao seu ambiente Python e Frida existente.
Wiki simplificada: ZAFrida UI Wiki simplificada (BBS) (esta é a Wiki mais simples)
Tutorial detalhado: ZAFrida UI Wiki de tutorial detalhado
Demonstração

Início rápido
- Instalar o plugin: Pesquise por "ZAFrida" no marketplace de plugins da IDE ou instale via disco.
- Configurar o ambiente padrão: Usa por padrão o Python Interpreter do projeto PyCharm atual; as configurações globais
Settings -> Tools -> ZAFrida mantêm apenas os valores padrão de nome/caminho da ferramenta.
- Criar projeto: Clique com o botão direito na visualização do projeto ->
New Frida Project.
- Se o projeto precisar de uma versão diferente do Frida, abra o ZAFrida
Project Settings, selecione o interpretador Python ou o diretório do ambiente e clique em Test.
- Escrever/selecionar script: No painel Run, selecione seu
agent.js ou agent.ts.
- Depuração de Hook:
- Conecte o dispositivo (USB, Remote ou Gadget).
- Selecione o processo alvo ou nome do pacote.
- Clique em Run.
- Usar templates: Alterne para a aba
Templates, marque as funções de Hook desejadas (ex.: "SSL Pinning Bypass") e o código será injetado automaticamente no seu script.
- Automação Skills (opcional): Desativada por padrão. Vá em
Settings/Preferences -> ZAFrida -> Skills HTTP API, marque Enable Skills para iniciar automaticamente a API local (também é possível iniciar/parar manualmente Start/Stop). CLI e localização dos templates:
- Skill e CLI principal:
skills-template/zafrida-http-control/
- Iniciador de compatibilidade de caminho antigo:
skills-cli/zafrida_skill_cli.py
QR Code do grupo de discussão
Recursos
-
Gerenciamento de dispositivos e processos
Integra frida-ls-devices e frida-ps, com suporte a atualização da lista de dispositivos com um clique, visualização de processos em execução, apps em execução ou aplicativos instalados.
-
Conexão em múltiplos modos
Suporte completo aos modos USB / Remote / Gadget, com Host e Porta remotos personalizáveis, sem necessidade de montar manualmente parâmetros complexos de linha de comando.
-
Execução interativa de scripts (Run / Attach)
- Suporta as ações Run (Spawn por padrão) e Attach, em vez de uma simples "alternância de modo".
- Suporta Force Stop para forçar a parada do aplicativo alvo.
- Saída de logs integrada no console, com salvamento automático dos logs no diretório do projeto
zafrida-logs/.
-
Menu de contexto do editor JS / TypeScript (importante)
- No editor de arquivos Frida
.js ou .ts, clique com o botão direito e selecione diretamente:
- Run Frida Script: executa o arquivo atual como script principal (Spawn por padrão).
- Attach Frida Script: injeta o arquivo atual como script anexado no processo alvo já em execução.
- Antes da execução, o arquivo atual é salvo automaticamente e o ZAFrida Project ao qual o script pertence é ativado automaticamente.
- Ideal para PoCs rápidos, validação de demos, modo Gadget ou injeção imediata em processos já em execução.
- Atalhos:
- Windows / Linux:
Ctrl + Alt + S
- macOS:
⌘ + ⌥ + S
-
Inserção de Snippets no menu de contexto do editor
- Oferece ZAFrida Frida Snippets no menu de contexto do editor JS / TypeScript.
- Insira trechos de código Frida comuns com um clique, por exemplo:
- Estrutura de encapsulamento
Java.perform
- Template de Hook de método Java
- Native Hook com
Interceptor.attach
- A inserção segue o WriteCommandAction da IDE, permitindo desfazer/refazer com segurança.
-
Sistema de templates dinâmicos (inovação central)
- Templates de Hook comuns para Android / iOS integrados (ex.: SSL Pinning Bypass, Method Hook, Native Hook).
- Controle por caixa de seleção: marcar insere o código, desmarcar comenta o código automaticamente, sem necessidade de edição manual.
- Suporte a templates personalizados, com pré-visualização em tempo real do código do template na IDE.
-
Design separado Run Script + Attach Script
- Suporta o Run Script principal e um Attach Script independente em coexistência.
- Ideal para desacoplar "Hooks de inicialização" da "lógica de injeção em tempo de execução", facilitando depuração complexa e manutenção de longo prazo.