hacktricks/mobile-pentesting/ios-pentesting/burp-configuration-for-ios.md

9.9 KiB

Configuración de Burp Suite para iOS

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥


Utiliza Trickest para construir y automatizar flujos de trabajo con las herramientas comunitarias más avanzadas del mundo.
Obtén acceso hoy mismo:

{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}

Instalación del certificado de Burp en iOS físico

Puedes instalar Burp Mobile Assistant para ayudarte a instalar el certificado de Burp, configurar el proxy y realizar SSL Pinning.
O puedes seguir los siguientes pasos manualmente:

  • Configura Burp como el proxy del iPhone en _Configuración** --> **Wi-Fi** --> **Haz clic en la red** --> **Proxy_
  • Accede a http://burp y descarga el certificado
  • Accede a Ajustes --> General --> VPN y administración de dispositivos --> Selecciona el perfil descargado e instálalo (se te pedirá tu código)
  • Accede a Ajustes --> General --> Acerca de --> Configuración de confianza de certificados y habilita PortSwigger CA

Configuración de un proxy de intercepción a través de localhost

Configurar Burp para que actúe como proxy de tu tráfico es bastante sencillo. Suponemos que tanto tu dispositivo iOS como tu ordenador están conectados a una red Wi-Fi que permite el tráfico entre clientes. Si no se permite el tráfico entre clientes, puedes utilizar usbmuxd para conectar Burp a través de USB.

PortSwigger proporciona un buen tutorial sobre cómo configurar un dispositivo iOS para trabajar con Burp y un tutorial sobre cómo instalar el certificado CA de Burp en un dispositivo iOS.

Uso de Burp a través de USB en un dispositivo con Jailbreak

Cuando se realiza un análisis dinámico, es interesante utilizar la conexión SSH para dirigir nuestro tráfico a Burp que se está ejecutando en nuestro ordenador. Empecemos:

Primero necesitamos usar iproxy para hacer que SSH desde iOS esté disponible en localhost.

$ iproxy 2222 22
waiting for connection

El siguiente paso es realizar un reenvío remoto de puerto del puerto 8080 en el dispositivo iOS a la interfaz localhost en nuestra computadora al puerto 8080.

ssh -R 8080:localhost:8080 root@localhost -p 2222

Ahora deberías poder acceder a Burp en tu dispositivo iOS. Abre Safari en iOS y ve a 127.0.0.1:8080 y deberías ver la página de Burp Suite. Este sería también un buen momento para instalar el certificado CA de Burp en tu dispositivo iOS.

El último paso sería configurar el proxy globalmente en tu dispositivo iOS:

  1. Ve a Configuración -> Wi-Fi
  2. Conéctate a cualquier red Wi-Fi (literalmente puedes conectarte a cualquier red Wi-Fi ya que el tráfico de los puertos 80 y 443 se enrutarán a través de USB, ya que solo estamos utilizando la configuración de proxy para la red Wi-Fi para poder establecer un proxy global)
  3. Una vez conectado, haz clic en el pequeño icono azul en el lado derecho de la red Wi-Fi conectada
  4. Configura tu proxy seleccionando Manual
  5. Escribe 127.0.0.1 como Servidor
  6. Escribe 8080 como Puerto

Monitoreo/Captura de red completa

Si necesitas monitorear algo diferente a las comunicaciones HTTP, puedes capturar todo el tráfico del dispositivo con Wireshark.
Puedes capturar de forma remota todo el tráfico en tiempo real en iOS mediante la creación de una Interfaz Virtual Remota para tu dispositivo iOS. Primero asegúrate de tener Wireshark instalado en tu computadora host macOS.

  1. Conecta tu dispositivo iOS a tu computadora host macOS mediante USB.
  2. Necesitarás conocer el UDID de tu dispositivo iOS antes de poder comenzar a capturar. Abre la Terminal en macOS e ingresa el siguiente comando, reemplazando el UDID de tu dispositivo iOS.
$ rvictl -s <UDID>
Starting device <UDID> [SUCCEEDED] with interface rvi0
  1. Inicie Wireshark y seleccione "rvi0" como interfaz de captura.
  2. Filtrar el tráfico con los filtros de captura en Wireshark para mostrar lo que desea monitorear (por ejemplo, todo el tráfico HTTP enviado/recibido a través de la dirección IP 192.168.1.1).
ip.addr == 192.168.1.1 && http

La documentación de Wireshark ofrece muchos ejemplos de Filtros de Captura que deberían ayudarte a filtrar el tráfico para obtener la información que deseas.

Instalación del Certificado de Burp en el Simulador

  • Exporta el Certificado de Burp

En Proxy --> Options --> Export CA certificate --> Certificate in DER format

  • Arrastra y suelta el certificado dentro del Emulador
  • Dentro del emulador, ve a Settings --> General --> Profile --> PortSwigger CA, y verifica el certificado
  • Dentro del emulador, ve a Settings --> General --> About --> Certificate Trust Settings, y habilita PortSwigger CA

Felicidades, has configurado correctamente el Certificado de Burp CA en el simulador de iOS

{% hint style="info" %} El simulador de iOS utilizará las configuraciones de proxy de MacOS. {% endhint %}

Configuración del Proxy en MacOS

Pasos para configurar Burp como proxy:

  • Ve a System Preferences --> Network --> Advanced
  • En la pestaña Proxies, marca Web Proxy (HTTP) y Secure Web Proxy (HTTPS)
  • En ambas opciones, configura 127.0.0.1:8080

  • Haz clic en Ok y luego en Apply


Utiliza Trickest para construir y automatizar flujos de trabajo con las herramientas comunitarias más avanzadas del mundo.
Obtén acceso hoy mismo:

{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥