🟠
Mobile Application Penetration Testing
  • Inicio
  • General
    • Metodologías y estándares
    • Recursos de aprendizaje
  • Android
    • Aplicaciones vulnerables
    • Emuladores
    • Root
    • Android Debug Bridge (adb)
    • SSH (Secure SHell)
    • Drozer
    • Obtención de app (APK)
    • Análisis estático
      • AndroidManifest.xml
      • Network security config
      • Directorios y archivos
      • Patrones y palabras claves en el código
      • Reversing
        • Aplicaciones nativas
          • Java / Kotlin
        • Aplicaciones híbridas
          • Flutter
          • React Native
          • Xamarin
        • Código nativo / bibliotecas compartidas
      • Ofuscación / Desofuscación
      • Automatizado
    • Análisis dinámico
      • Activities
      • Deep links
      • Content providers
      • Services
      • Anti-root
      • Captura de tráfico de red
        • Burp Suite
        • SSL Pinning
      • Almacenamiento de datos
        • SD card
        • SharedPreferences
        • Bases de datos
      • Logs
      • WebViews
      • Hooking
        • Frida
        • Objection
      • Memory dump
      • Automatizado
    • Firma de app
    • Herramientas
  • iOS
    • Aplicaciones vulnerables
    • Emuladores
    • Jailbreak
    • SSH (Secure SHell)
    • Transferencia de archivos
    • Análisis estático
      • Archivo IPA
      • Info.plist
      • Automatizado
    • Análisis dinámico
      • Anti-jailbreak
      • Biometría
      • Captura de tráfico de red
        • Burp Suite
        • SSL Pinning
      • Almacenamiento de datos
        • Archivos Property List (PList)
        • NSUserDefaults
        • Cache.db
        • Keychain
        • Screenshots
      • Frida
      • Logs
      • Hooking
    • Herramientas
  • Herramientas transversales
    • Frida
    • Frida Gadget
    • Objection
  • Checklist
    • Android application penetration testing
    • iOS application penetration testing
Con tecnología de GitBook
En esta página
  • Instalación y configuración
  • Android
  • iOS
  • Comprobación de ejecución correcta de Frida-server
  • Comandos generales
  • Frida CodeShare

¿Te fue útil?

  1. Herramientas transversales

Frida

https://frida.re/

AnteriorHerramientasSiguienteFrida Gadget

Última actualización hace 3 meses

¿Te fue útil?

Instalación y configuración

Instalación de Frida.

# Instalación de Frida sin entorno virtual de Python
pip3 install frida-tools

# Instalación de Frida en entorno virtual de Python
mkdir frida && cd frida
virtualenv venv-frida
source venv-frida/bin/activate
pip3 install frida-tools

Obtener versión de Frida instalado.

frida --version

Android

1) Descargar Frida-server según la arquitectura del dispositivo Android y versión de Frida instalada previamente.

# Obtener arquitectura del dispositivo Android
adb shell getprop ro.product.cpu.abi

2) Descomprimir y renombrar Frida-server.

unxz <frida-server.xz>
mv <frida-server> frida-server

3) Transferencia de Frida-server al dispositivo Android y asignación de privilegios.

adb push frida-server /data/local/tmp/
adb shell "su -c chmod 755 /data/local/tmp/frida-server"

4) Ejecución de Frida-server.

adb devices -l

# Iniciar Frida-server para conexión desde el dispositivo vía USB
adb shell "su -c /data/local/tmp/frida-server &"
# Iniciar Frida-server para conexión remota
adb shell "su -c /data/local/tmp/frida-server -l <device-IP-address> &"

iOS

Cydia (App Store de tercero)

1) Agregar repositorio de Frida a Cydia (App Store de tercero).

2) Instalar Frida en el dispositivo desde Cydia (App Store de tercero).

  • Cydia -> Buscar -> Frida -> Instalar

Manual

1) Conexión SSH al dispositivo.

ssh root@<device-ip-address>

2) Descarga de Frida-server.

cd /tmp/
wget https://github.com/frida/frida/releases/download/<version>/frida_<version>_iphoneos-arm.deb

3) Instalación de Frida-server.

dpkg -i frida_<version>_iphoneos-arm.deb

4) Ejecución de Frida-server para conexión remota.

# Establecer dirección IP a Frida-server en dispositivo (listen)
frida-server -l <device-IP-address>

Comprobación de ejecución correcta de Frida-server

# Conectarse a Frida-server desde el dispositivo vía USB
# y listar procesos en ejecución
frida-ps -U

# Conectarse remotamente a Frida-server y listar procesos en ejecución
frida-ps -H <device-IP-address>

Comandos generales

# Listar dispositivos
frida-ls-devices

# Listar procesos en ejecución
frida-ps -U
frida-ps -H <device-IP-address>

# Listar aplicaciones en ejecución
frida-ps -Ua
frida-ps -H <device-IP-address> -a

# Listar aplicaciones instaladas
frida-ps -Uai
frida-ps -H <device-IP-address> -ai

# Iniciar un nuevo proceso / aplicación (spawning)
frida -U -f <app-package-name>
frida -H <device-IP-address> -f <app-package-name>

# Atachar a un proceso / aplicación (attaching)
frida -U <app-name>
frida -U -p <PID>
frida -U -F <app-package-name>
frida -H <device-IP-address> <app-name>
frida -H -p <PID>
frida -H <device-IP-address> -F <app-package-name>
  • -U = conectarse a Frida-server desde el dispositivo vía USB.

  • -H = conectarse remotamente a Frida-server.

Frida CodeShare

Cydia -> Fuentes -> Editar -> Añadir -> -> Añadir fuente

https://github.com/frida/frida/releases
https://build.frida.re
https://github.com/frida/frida/releases
https://codeshare.frida.re/