中文 | English
ZAFrida UI - Plugin Frida per PyCharm
Versione attuale: 0.3.8

Principali aggiornamenti 0.3.8
- Il pannello Session separa "Dispositivo" e "Modalità di connessione" in due righe di selezione indipendenti: la riga Device elenca solo i dispositivi reali, la riga Mode seleziona USB / Remote / Gadget e l'endpoint. Il port forwarding adb per il loopback Remote/Gadget, Force Stop e Open App agiscono sempre sul telefono attualmente selezionato, senza più utilizzare erroneamente dispositivi storici.
- Alla prima apertura e all'aggiornamento dei dispositivi viene avviato automaticamente il server adb se non in esecuzione, senza dover più eseguire manualmente
adb devices.
- Quando un dispositivo salvato non è online viene mostrato il segnaposto "Non connesso" e le operazioni correlate vengono bloccate; se è connesso un solo dispositivo USB viene automaticamente utilizzato quello con un avviso nella Console.
- Sotto la riga Mode viene mostrato il routing adb/frida effettivamente eseguito; in modalità Gadget il nome del pacchetto Target è di sola lettura ma selezionabile e copiabile.
- L'API HTTP
/state include il nuovo risultato di parsing connection; device-select --host è ancora utilizzabile ma deprecato, per gli endpoint usare mode-set --host/--port.
Principali aggiornamenti 0.3.7
- Ogni ZAFrida Project può selezionare o condividere in modo indipendente l'ambiente Python/Frida, utilizzando per impostazione predefinita l'interprete del progetto PyCharm corrente, con supporto per ambienti locali venv, Conda, uv, Poetry, Pipenv, Hatch e altri.
- Ridisegnata la UI di Session e le Project Settings, con visualizzazione completa delle informazioni su versione del plugin, Python e Frida, e ottimizzazione del pannello log adattivo e trascinabile e dello stato della sessione.
- Supporto completo per
.js / .ts, Frida 16/17, cambio di ambiente multi-progetto e i tre flussi di connessione USB, Remote e Gadget.
- Rafforzate le capacità dell'API HTTP locale, della CLI e dello Skill in cinese per il ripristino dei dispositivi, l'attesa della sessione e i log incrementali; rimosso il livello di adattamento MCP duplicato e instabile.
Introduzione al progetto
Strumento grafico Frida progettato per PyCharm/IntelliJ
ZAFrida UI è un plugin di operazioni grafiche per Frida integrato in PyCharm e nella serie di IDE JetBrains. È pensato per risolvere i problemi delle operazioni da riga di comando di Frida, spesso macchinose, e della gestione disordinata degli script, offrendo un set completo di interfaccia UI interattiva per gestire dispositivi, processi, script e log.
Il punto di forza principale è il suo sistema di gestione template "a caselle di controllo": l'utente può, selezionando/deselezionando, inserire dinamicamente frammenti di codice nello script principale o commentarli, realizzando così un assemblaggio "a blocchi" degli script di Hook. Allo stesso tempo, il plugin integra una completa gestione a progetti (zafrida-project.xml), che supporta il rapido cambio di configurazioni multi-dispositivo e multi-ambiente.
ZAFrida non sostituisce Frida, ma funge da potente interfaccia UI per frida-tools, integrandosi senza soluzione di continuità con il vostro ambiente Python e Frida esistente.
Wiki semplificata: ZAFrida UI Wiki semplificata (BBS) (questa è una Wiki più semplice)
Tutorial d'uso dettagliato: ZAFrida UI Wiki tutorial d'uso dettagliato
Dimostrazione

Guida rapida
- Installare il plugin: cercare "ZAFrida" nel marketplace dei plugin dell'IDE oppure installare da disco.
- Configurare l'ambiente predefinito: per impostazione predefinita viene utilizzato il Python Interpreter del progetto PyCharm corrente; in
Settings globale -> Tools -> ZAFrida restano solo i valori predefiniti di nome/percorso degli strumenti.
- Creare un progetto: clic destro nella vista del progetto ->
New Frida Project.
- Se il progetto richiede una versione diversa di Frida, aprire
Project Settings di ZAFrida, selezionare l'interprete Python o la directory dell'ambiente e cliccare Test.
- Scrivere/selezionare lo script: nel pannello Run selezionare il proprio
agent.js o agent.ts.
- Debug dell'Hook:
- Connettere il dispositivo (USB o Remote o Gadget).
- Selezionare il processo o il nome del pacchetto di destinazione.
- Cliccare Run.
- Usare i template: passare alla scheda
Templates e selezionare le funzionalità Hook desiderate (ad esempio "SSL Pinning Bypass"); il codice verrà automaticamente iniettato nel vostro script.
- Automazione Skills (opzionale): disattivata per impostazione predefinita. Andare in
Settings/Preferences -> ZAFrida -> Skills HTTP API, selezionare Enable Skills per avviare automaticamente l'API locale (oppure Start/Stop manuale), posizioni di CLI e template:
- Skill e CLI principale:
skills-template/zafrida-http-control/
- Launcher compatibile con il vecchio percorso:
skills-cli/zafrida_skill_cli.py
Codice QR del gruppo di scambio
Funzionalità
-
Gestione dispositivi e processi
Integra frida-ls-devices e frida-ps, supporta l'aggiornamento della lista dispositivi con un clic, la visualizzazione dei processi in esecuzione, delle App in esecuzione o delle applicazioni installate.
-
Connessione multi-modalità
Supporto completo delle modalità USB / Remote / Gadget, con Host e Port remoti personalizzabili, senza dover comporre manualmente complessi parametri da riga di comando.
-
Esecuzione interattiva di script (Run / Attach)
- Supporto delle due azioni di esecuzione Run (Spawn predefinito) e Attach, e non di un semplice "cambio di modalità".
- Supporto di Force Stop per terminare forzatamente l'applicazione di destinazione.
- Output di log della console integrato, con salvataggio automatico dei log nella directory del progetto
zafrida-logs/.
-
Menu contestuale dell'editor JS / TypeScript (importante)
- Nell'area di modifica dei file Frida
.js o .ts, con il clic destro è possibile selezionare direttamente:
- Run Frida Script: esegue il file corrente come script principale (Spawn predefinito).
- Attach Frida Script: inietta il file corrente come script di attach nel processo di destinazione già in esecuzione.
- Prima dell'esecuzione il file corrente viene salvato automaticamente e si passa automaticamente allo ZAFrida Project a cui appartiene lo script.
- Adatto per PoC rapide, verifica di Demo, modalità Gadget o iniezione immediata in processi già in esecuzione.
- Scorciatoie:
- Windows / Linux:
Ctrl + Alt + S
- macOS:
⌘ + ⌥ + S