Cybersecurity News
Mostrando entradas con la etiqueta ios. Mostrar todas las entradas
Mostrando entradas con la etiqueta ios. Mostrar todas las entradas

Pentesting de aplicaciones móviles: iOS. Parte 2

Buenas a todos, en el post de hoy continuaremos con nuestra cadena de artículos sobre pentesting de aplicaciones móviles en iOS, hablando sobre la instalación de Burp para comenzar a interceptar peticiones, paso en el que nos quedamos en el último post.

Partiendo de nuestro acceso al dispositivo como usuario root, vamos a instalar desde Cydia los siguientes elementos:
  • BigBoss: Que contiene una lista de herramientas de línea de comandos muy útiles del tipo wget, unrar, less, etc.
  • adv-cmds: Que incluye algunos comandos avanzados del tipo finger, fingerd, last, lsvfs, md, y ps.
  • IPA Installer Console: Que permite instalar y extraer IPAs desde la consola de comandos.
  • cycript: Que permite inyectar código en procesos, entre otras cosas.




A continuación, lo siguiente que necesitaremos hacer será instalarnos algún proxy de interceptación como Burp, una de las herramientas más utilizadas en pentesting para la interceptación de peticiones. Para más información sobre Burp Suite Scanner os remitimos a su página oficial:


Ahora entraremos desde el termnal iOS al sitio web: "http://burp", configurando previamente el proxy de Burp:


Permitimos los ajustes que nos indica:



 Posteriormente instalaremos el perfil de Burp:


Ahora entraremos en Ajustes / General / Información /Ajustes de confianza de los certificados, tal y como se puede ver en la siguiente ventana, donde el certificado aun no es de confianza:



Y lo activaremos con el check pertinente:



Con todo esto ya estaremos listos para comenzar a interceptar las peticiones de nuestras APPs con Burp desde un ordenador.


Eso es todo por hoy, ¡nos vemos en el próximo post!




Pentesting de aplicaciones móviles: iOS. Parte 1

Realizar un hacking ético sobre una aplicación móvil es una tarea técnica que requiere de una serie de tecnologías y procedimientos diferentes a las de los pentests web tradicionales. 

La arquitectura de estas aplicaciones suele ser por lo general similar a las de un front web, realizando una comunicación con un back-end donde se almacenan los datos necesarios para el funcionamiento normal de la aplicación, sus configuraciones y demás datos relevantes.

El problema que presentan las APPs para smartphones a la hora de realizar un hacking ético es que los móviles no nos brindan las capacidades suficientes para acceder a esas aplicaciones a nivel de código, tráfico de red, etc., tan necesarias en un pentest, por lo que seguimos manteniendo la necesidad de conectarnos de alguna manera a un ordenador. A este problema se ve sumado que por norma general los smartphones vienen protegidos, sin permisos de super usuario, lo que imposibilita llevar sus capacidades hasta el límite que necesitamos en el mundo de la ciberseguridad. Es por ello, que se requiere disponer de terminales con permisos totales, es decir, root en Android y jailbreak en iOS.

Android es un sistema operativo más abierto, por lo que es relativamente sencillo adquirir en el mercado terminales con usuario Root de origen. Así mismo, también es sencillo escalar privilegios mediante alguna vulnerabilidad conocida.

iOS por el contrario es un sistema muy cerrado, en el que conseguir un jailbreak no es trivial. Son pocos los exploits que salen al mercado, y no siempre son tan rápidos como necesitaríamos. Además, en el día a día del pentesting, las APPs que van saliendo se hacen incompatibles con versiones anteriores de iOS, por lo que constantemente tendremos que disponer de los últimos iPhone/iPad, ya que la obsolescencia programada de los sistemas operativos impide contar con un iPad 4 con iOS 11, por ejemplo.

A día de hoy, la mejor opción para el pentesting de aplicaciones iOS es la versión 10.3.3. Dispone de jailbreak tethered y semi-tethered para versiones de 32 y 64 bits y conseguir un iPhone 5 o superior, o un iPad 4 o superior es relativamente sencillo. 

Tras conseguir un terminal iOS con permisos de super usuario, necesitaremos instalar OpenSSH, para poder conectarnos desde un PC por ssh al dispositivo. Para esta labor podremos contar con Cydia.

Una vez instalado OpenSSH, veréis como el puerto 22 de vuestro terminal iOS ha sido abierto:


Ahora podremos conectarnos por SSH al dispositivo con el usuario "root" y la password "alpine":




Una vez dentro del terminal como usuario Root, procederemos a instalar la APP en sí que necesitamos auditar.

El próximo día hablaremos sobre la instalación de Burp para comenzar a interceptar peticiones de las APPs iOS que pentestearemos.

¡Saludos!