⛏️Outil Drozer
Manuel d'utilisation de l'outi Drozer
Description
Drozer est un framework d'exploitation dédié à Android permettant de faire de l'analyse statique et dynamique via l'installation et la communication avec un agent .apk à installer sur la machine cible et qui va permettre de faire un grand nombre d'interactions allant de la collecte d'informations jusqu'à l'exploitation d'applications.
Installation
Prérequis
Téléchargement et configuration
Rendez vous sur https://github.com/WithSecureLabs/drozer/releases/tag/2.4.4 puis télécharger le fichier drozer-2.4.4-py2-none-any.whl.
Téléchargez ensuite l'agent ici: https://github.com/mwrlabs/drozer/releases/download/2.3.4/drozer-agent-2.3.4.apk
Une fois l'agent téléchargé, on va pouvoir l'installer sur l'appareil Android avec adb comme ceci:
$ adb install agent.apkIl reste ensuite à lancer le serveur dans l'application "drozer Agent" installée en switchant le bouton en bas à droite sur "ON".

L'agent Drozer s'exécute sur le port 31415, il faut donc transférer le port avec la commande ci-dessous pour établir la communication entre le client Drozer et l'agent.
$ adb forward tcp:31415 tcp:31415Vérifier ensuite le bon fonctionnement du serveur en lancant la commande:
$ drozer console connectLister / Rechercher des packages
Dans le shell drozer:
dz> run app.package.list [-f exemple]Renseignements sur un package
dz> run app.package.info -a com.example.targetappLire le fichier AndroidManifest
dz> run app.package.manifest com.example.targetappLister la surface d'attaque d'un package
dz> run app.package.attacksurface com.example.targetappActivities
Lister les activitiés exportées
dz> run app.activity.info -a com.example.targetappLancer une activité
dz> run app.activity.start --component com.example.targetapp com.example.targetapp.MainActivityContent providers
Lister les content providers
dz> run app.provider.info -a com.example.targetappTrouver des URIs
dz> run scanner.provider.finduris -a com.example.targetappLire les fichiers dans le file system
dz> run app.provider.read content://com.example.targetapp...Télécharger le contenu d'un fichier
dz> run app.provider.download content://com.example.targetapp...Requêter un content provider
dz> run app.provider.query content://com.example.targetapp.DBContentProvider/Passwords/ --verticalEnvoyer de nouvelles données à un content provider
dz> run app.provider.insert content://com.example.targetapp.DBContentProvider/Passwords/ --string <DBcolumn> <contenu>
#Types de données
--string
--float
--integer
--long
--short
--booleanMettre à jour le contenu d'un content provider
dz> run app.provider.update content://com.example.targetapp.DBContentProvider/Passwords/ --selection "<DBcolumn>=?" --selection-args <contenu> --string <DBcolumn> <contenu>Supprimer le contenu d'un content provider
dz> run app.provider.delete content://com.example.targetapp.DBContentProvider/Passwords/ --selection "<DBcolumn>=?" --selection-args <contenu>Services
Lister les services
dz> run app.service.info -a com.example.targetappInteractions avec un service
dz> run app.service.send //Permet d'envoyer un message à un service et d'intercepter la réponse
dz> run app.service.start //Permet de lancer un service
dz> run app.service.stop //Permet de stopper un serviceBroadcast Receivers
Lister les broadcast receivers
dz> run app.broadcast.info -a com.example.targetappInteractions avec les broadcast
dz> run app.broadcast.info //Permet d'obtenir des informations sur les boraidcast
dz> run app.broadcast.send //Permet d'envoyer un broadcast avec un intent
dz> run app.broadcast.sniff //Permet d'enregistrer un broadcast reveiver pouvant sniffer des intents particuliersLister les applications debuggable
dz> run app.package.debuggableAutre
Ouvrir un shell sur la machine
dz> run shell.startTélécharger / Envoyer un fichier sur la machine
dz> run tools.file.upload
dz> run tools.file.downloadMis à jour
Ce contenu vous a-t-il été utile ?