Utilisation du Frida intégré¶
FIRERPA intègre la dernière version de Frida, vous n'avez donc pas besoin de démarrer frida-server vous-même. Notre Frida intégré est déjà équipé de divers patchs de dissimulation open-source ainsi que de fonctionnalités de dissimulation supplémentaires que nous avons ajoutées, vous n'avez donc pas à vous soucier de la détection de Frida. Si notre Frida intégré est détecté, cela signifie que presque tous les frida-server que vous pouvez télécharger subiront le même sort. Vous pouvez donc l'utiliser en toute confiance, sans vous préoccuper de ces détails.
Astuce
Attention
Utilisation via le code¶
Avec l'API client de FIRERPA, il vous suffit d'utiliser d.frida comme ci-dessous pour obtenir une instance connectée à frida-server, sans avoir à construire la connexion vous-même avec la bibliothèque Frida.
conn = d.frida
conn.enumerate_processes()
Bien sûr, si vous souhaitez comprendre son implémentation sous-jacente, vous pouvez également vous référer au code suivant.
# Obtenir le token dynamique
token = d._get_session_token()
manager = frida.get_device_manager()
conn = manager.add_remote_device("192.168.0.2:65000", token=token)
conn.enumerate_processes()
Pour la suite, tout dépend de la manière dont vous l'utiliserez. Vous avez maintenant obtenu l'instance avec succès.
Utilisation via la ligne de commande¶
L'utilisation via la ligne de commande peut être un peu plus complexe, car nous devons également garantir la sécurité de votre appareil. Nous tenons également à vous rappeler de ne pas vous laisser limiter par les commandes trouvées dans d'autres articles. Vous devez noter que de nombreuses commandes Frida dans les articles incluent un paramètre -U. Nous ne l'utilisons pas ici, donc si vous ne parvenez pas à vous connecter, assurez-vous que votre commande suit strictement l'exemple.
Avant de commencer, nous tenons à mentionner qu'il est fortement recommandé d'utiliser les commandes telles que frida, frida-itrace, frida-trace, frida-ps via le bureau à distance. Dans cet environnement, vous n'avez aucune opération supplémentaire à effectuer ; il vous suffit d'exécuter frida sans fournir d'autres paramètres de connexion comme -U, -H, etc.

Puisque vous lisez ceci, cela signifie que vous souhaitez toujours utiliser la commande depuis votre ordinateur. Maintenant, vous devez rassembler quelques informations en fonction de votre installation. Si votre FIRERPA a été démarré avec un certificat de service, vous devez préparer ce fichier. De plus, vous devez avoir l'adresse IP de l'appareil à connecter et le port du service FIRERPA (65000 par défaut). Notez que ce n'est pas le port 27042 de Frida, mais bien le port du service FIRERPA. Il vous suffit de vous connecter à FIRERPA.
Tout d'abord, vous devez utiliser l'API pour obtenir le token actuel. Ce token est une chaîne de 16 caractères fixes, comme czvpyqg82dk0xrnj. Nous comprenons que cette méthode peut être fastidieuse et nous pourrions y apporter des améliorations à l'avenir. C'est aussi pourquoi nous vous avons recommandé plus haut d'utiliser les commandes Frida via le bureau à distance.
token = d._get_session_token()
print (token)
Maintenant que vous avez obtenu un token via l'interface ci-dessus, supposons qu'il s'agisse de czvpyqg82dk0xrnj. Commençons à écrire la commande Frida.
Pour tous les outils en ligne de commande officiels de Frida, il suffit par défaut d'ajouter les paramètres -H 192.168.0.2:65000 et --token xxxxxxxxxxxxxxxx, comme dans l'exemple ci-dessous. Attention, attention, attention, il n'y a pas de paramètre -U ici.
frida -H 192.168.0.2:65000 -f com.android.settings --token xxxxxxxxxxxxxxxx
Si votre serveur FIRERPA a également été démarré avec un certificat de service, vous devez ajouter le paramètre --certificate à la commande.
frida -H 192.168.0.2:65000 -f com.android.settings --certificate /path/to/lamda.pem --token xxxxxxxxxxxxxxxx
Vous l'avez peut-être remarqué, il n'y a que trois différences : -U est remplacé par -H car nous nous connectons via le réseau et non par USB ; le paramètre --token est ajouté ; et si le serveur utilise un certificat de service, le paramètre --certificate est également ajouté. C'est pour garantir la sécurité de votre appareil et empêcher tout accès non autorisé.
Utilisation via la ligne de commande (objection)¶
Pour d'autres outils comme objection, les paramètres mentionnés ci-dessus sont généralement disponibles. Cependant, la plupart des outils non standards n'implémentent pas complètement ces paramètres. Actuellement, nous avons seulement patché objection, sans affecter son utilisation originale. Comme objection n'a pas été mis à jour depuis longtemps, nous ne soumettons pas le patch au projet source. Vous pouvez télécharger notre patch objection-1.11.0-command-patch.diff et l'appliquer au répertoire de code de votre installation d'objection (vous pouvez trouver le chemin d'installation avec la commande pip3 show objection).
Ensuite, vous pouvez l'utiliser de la manière suivante. Comme vous pouvez le voir, seul le paramètre --token a été ajouté.
objection -N -h 192.168.0.2 -p 65000 --token xxxxxxxxxxxxxxxx explore
Ou si le serveur a été démarré avec un certificat de service, vous devez également ajouter --certificate à la commande.
objection -N -h 192.168.0.2 -p 65000 --certificate /path/to/lamda.pem --token xxxxxxxxxxxxxxxx explore
Exposer les interfaces de l'application¶
Cette section a été déplacée vers le chapitre Utiliser Frida pour exporter des interfaces.