
Extension non officielle de frida pour VSCode
Ce projet est une contribution communautaire, non affiliée à l'équipe officielle de Frida. Il est développé et maintenu par @CodeColorist en tant qu'extension open-source pour Visual Studio Code afin d'améliorer l'expérience d'écriture de scripts Frida.
inetcat afin de démarrer un shell SSH)Si vous êtes sous Windows, vous devez laisser iTunes ouvert afin d'interagir avec les appareils iOS via USB.
En raison de PEP0668, vous pouvez rencontrer une erreur lors de l'exécution globale de pip3 install frida-tools.
La méthode recommandée consiste à ouvrir un dossier (espace de travail) dans VSCode, puis à créer et activer un environnement virtuel à l'aide de l'extension Python. Dans ce cas, l'extension utilisera votre environnement virtuel Python actif pour charger les commandes frida.
Vous pouvez également utiliser un gestionnaire de paquets comme pipx ou UV pour l'installer dans $PATH, tout en le maintenant isolé.

Liste les applications et les processus sur les appareils connectés dans un panneau latéral. Clic droit pour attacher, attacher avec des privilèges élevés pour les cibles locales, lancer (spawn), lancer en mode suspendu, tuer des processus, ou copier les informations de l'appareil/processus dans le presse-papiers. Prend en charge les appareils locaux, USB et distants. Les entrées de processus locaux incluent des métadonnées de meilleur effort telles que le chemin de l'exécutable, le propriétaire, le PID parent et les arguments lorsqu'ils sont disponibles.
Parcourez les modules natifs chargés et leurs fonctions exportées pour tout processus attaché. Filtrez les modules par nom, inspectez l'adresse de base, la taille et le chemin, puis sélectionnez les exports pour la génération de hooks.
Explorez les classes et méthodes d'exécution pour Java et Objective-C. Filtrez les classes, basculez entre les méthodes propres et héritées, et sélectionnez en masse les méthodes pour la génération de hooks. Inclut également l'inspection des protocoles Objective-C pour parcourir et analyser les protocoles.
Extraire les en-têtes de classes pour la rétro-ingénierie :
Générer du code de hook Frida à partir des panneaux Modules et Classes :
Interceptor.attach() avec les callbacks onEnter / onLeave pour les fonctions exportéesJava.perform() / Java.use() avec prise en charge des surcharges de méthodesComplétions contextuelles pour les scripts Frida en JavaScript / TypeScript :
ObjC.classes.<ClassName> — complète les noms de classes Objective-CObjC.classes.Foo['<method>'] — complète les sélecteurs de méthodesObjC.classes.Foo.method — complète les sélecteurs de méthodes de classeJava.use('<ClassName>') — complète les noms de classes JavaProcess.getModuleByName('<name>') — complète les noms des modules chargésLe serveur de langage dépend du contexte du processus cible. Vous devez créer un fichier de configuration .vscode/frida.json dans votre espace de travail. Le plus simple est de faire un clic droit sur un processus ou une application dans la barre latérale et de sélectionner Définir la cible LSP, ce qui génère le fichier automatiquement.
.vscode/frida.jsonLe fichier spécifie à quel appareil et à quelle cible le LSP doit s'attacher. Il nécessite un champ device et exactement un des champs app, pid ou process.
Attacher par identifiant d'application (recommandé — lance ou s'attache à l'application) :
{
"device": "local",
"app": "com.example.myapp"
}
Attacher par nom de processus :
{
"device": "local",
"process": "myprocess"
}
Attacher par PID (utile lorsque plusieurs processus portent le même nom) :
{
"device": "local",
"pid": 1234
}
La valeur device correspond à l'identifiant d'appareil Frida — local pour la machine hôte, usb pour un appareil connecté en USB, ou une chaîne host:port pour les appareils distants.
Le LSP surveille ce fichier pour détecter les modifications. Le modifier ou le recréer redémarre automatiquement le serveur de langage avec la nouvelle cible.
Diffusez les journaux d'application en temps réel depuis les processus attachés.
Génère launch.json et tasks.json pour VSCode afin de déboguer les scripts Frida avec des points d'arrêt.
Pour les appareils Android, Ouvrir un shell est un wrapper pour adb shell.
Pour iOS, il fournit un shell SSH sur les appareils jailbreakés. Une configuration des identifiants peut être nécessaire.
Connectez-vous à des appareils Frida distants via host:port directement depuis la barre latérale.