
Estensione non ufficiale di frida per VSCode
Repository | Issues | Installa
Questo è un progetto contribuito dalla community, non affiliato al team ufficiale di Frida. È sviluppato e mantenuto da @CodeColorist come estensione open-source per Visual Studio Code per migliorare l'esperienza di scripting con Frida.
inetcat per avviare una shell SSH)Se sei su Windows, devi tenere aperto iTunes per interagire con i dispositivi iOS tramite USB.
A causa della PEP0668, potresti riscontrare un errore eseguendo pip3 install frida-tools a livello globale.
Il metodo consigliato è aprire una cartella (workspace) in VSCode, quindi creare e attivare un ambiente virtuale tramite l'estensione Python. In questo caso, l'estensione userà il tuo venv Python attivo per caricare i comandi frida.
In alternativa, puoi usare un gestore di pacchetti come pipx o UV per installarlo in $PATH, mantenendolo comunque isolato.

Elenca app e processi sui dispositivi connessi in un pannello laterale. Fai clic con il tasto destro per agganciare, agganciare con privilegi elevati per target locali, avviare, avviare in modalità sospesa, terminare processi o copiare le informazioni su dispositivo/processo negli appunti. Supporta dispositivi locali, USB e remoti. Le voci dei processi locali includono metadati best-effort come percorso dell'eseguibile, proprietario, PID padre e argomenti quando disponibili.
Sfoglia i moduli nativi caricati e le loro funzioni esportate per qualsiasi processo agganciato. Filtra i moduli per nome, ispeziona indirizzo di base, dimensione e percorso, quindi seleziona gli export per generare hook.
Esplora classi e metodi di runtime sia per Java che per Objective-C. Filtra le classi, passa tra metodi propri ed ereditati e seleziona più metodi per la generazione di hook. Include anche l'ispezione dei protocolli Objective-C per sfogliare e analizzare i protocolli.
Estrai gli header delle classi per il reverse engineering:
Genera codice Frida per hook dai pannelli Moduli e Classi:
Interceptor.attach() con callback onEnter / onLeave per funzioni esportateJava.perform() / Java.use() con supporto per gli overload dei metodiCompletamenti sensibili al contesto per script Frida in JavaScript / TypeScript:
ObjC.classes.<ClassName> — completa i nomi delle classi Objective-CObjC.classes.Foo['<method>'] — completa i selettori di metodoObjC.classes.Foo.method — completa i selettori dei metodi di classeJava.use('<ClassName>') — completa i nomi delle classi JavaProcess.getModuleByName('<name>') — completa i nomi dei moduli caricatiIl language server dipende dal contesto del processo target. Devi creare un file di configurazione .vscode/frida.json nel tuo workspace. Il modo più semplice è fare clic con il tasto destro su un processo o un'app nella barra laterale e selezionare Imposta target LSP, che genera automaticamente il file.
.vscode/frida.jsonIl file specifica a quale dispositivo e target il language server deve collegarsi. Richiede un campo device e esattamente uno tra app, pid o process.
Aggancio tramite identificatore dell'app (consigliato — avvia o aggancia l'app):
{
"device": "local",
"app": "com.example.myapp"
}
Aggancio tramite nome del processo:
{
"device": "local",
"process": "myprocess"
}
Aggancio tramite PID (utile quando più processi condividono lo stesso nome):
{
"device": "local",
"pid": 1234
}
Il valore device corrisponde all'ID del dispositivo Frida — local per la macchina host, usb per un dispositivo connesso via USB, oppure una stringa host:port per dispositivi remoti.
Il language server monitora questo file per rilevare modifiche. Modificarlo o ricrearlo riavvia automaticamente il language server con il nuovo target.
Mostra in tempo reale i log applicativi dei processi agganciati.
Genera launch.json e tasks.json di VSCode per eseguire il debug di script Frida con punti di interruzione.
Per i dispositivi Android, Apri Shell è un wrapper per adb shell.
Per iOS fornisce una shell SSH su dispositivi jailbroken. Potrebbe essere necessario configurare le credenziali.
Connettiti a dispositivi Frida remoti tramite host:port direttamente dalla barra laterale.