Según nuestra experiencia anterior con Android y los documentos disponibles en Internet, solo mencionaba la interceptación del tráfico de aplicaciones basado en el navegador. Algunos de los artículos mencionaban aplicaciones nativas, pero esas aplicaciones eventualmente se comunican a través del protocolo HTTP. Lea aquí para la interceptación de tráfico para aplicaciones basadas en HTTP.
Escenario de desafío
La aplicación nativa funciona perfectamente cuando no hay ningún proxy configurado en el emulador y está conectado a Internet a través de wi-fi. En el momento en que cambiamos la configuración de APN del emulador de Android, la aplicación se detiene y arroja un «error de red» sin más detalles.
La solución
Inicialmente, queríamos capturar y modificar el tráfico como lo hacemos con las aplicaciones web normales de Android y aplicar casos de prueba de seguridad de aplicaciones web. Después de investigar el problema durante bastante tiempo, nos pusimos manos a la obra para depurar Android con tcpdump. Esto nos permitió crear un archivo pcap y, a continuación, realizar un análisis con Wireshark de la forma habitual de analizar el tráfico.
Los escalones
Inicie el emulador de Android usando emulator.exe en /tools/emulator.exe
Ejecute el comando:
emulator.exe avd avd_name -tcpdump apptraffic.pcap
Este comando iniciará tu emulador en una ventana nueva y transferirá todo el tráfico enviado y recibido a un apptraffic.pcap archivo.
A continuación, el archivo se puede importar a wireshark para su posterior análisis. Esta es una captura de pantalla:
Con un análisis cuidadoso de los paquetes TCP, puede detectar la dirección IP y el puerto del servidor. Para filtrar aún más el resultado y capturarlo solo para un uso específico del puerto, cambie a continuación:
emulator.exe avd avd_name -tcpdump apptraffic.pcap puerto 10004
Suscríbase a nuestro boletín hoy mismo y mejore sus conocimientos con información valiosa. ¡Es rápido, fácil y gratuito!