Sistemas Operativos Móviles: Android e iOS#

Los sistemas operativos de dispositivos móviles están optimizados para su funcionamiento en dispositivos pequeños y portátiles. Esto se traduce en:

  • Poseen menos requerimientos de hardware (procesador, memoria y especialmente energía)
  • Sus interfaces están adaptadas para la operación con teclados pequeños o pantallas táctiles.

Históricamente#

  • En el año 1984 apareció el primer PDA (asistentes digitales personales) llamado Psion Organiser, con apariencia similar a la de una calculadora y funcionalidades de programación, agenda, sistema de archivos, calculadora y organización, pero no contaba con un sistema operativo propiamente tal.
  • En los años 90, los sistemas operativos de teléfonos móviles eran generalmente de tipo embedded. No eran actualizables y no existía posibilidad de instalar aplicaciones. Sin embargo, los PDA sí contaban con opciones de upgrade de software. Algunos ejemplos:
  • Apple Newton de 1993. Como pueden ver en el artículo, no le fue muy bien, pero contaba con software externo y reconocimiento de escritura.
  • Palm Pilot 1000 y 5000 de 1996 Dispositivo de la empresa Palm con pantalla táctil y stylus. Tenían memoria RAM y ROM intercambiable y se sincronizaban con los datos del computador a través de una conexión Serial. La siguiente imagen del usuario 80sCompaqPC muestra visualmente cómo es un Pilot. Palm Pilot 1000
  • En los 2000 se masificaron en entornos empresariales dispositivos con red móvil que además tenían funcionalidades de PDA. Algunas marcas eran BlackBerry, Windows CE y Nokia S30/S40/Symbian.
    • El caso de aplicaciones más conocidas a mediados de la década fue el de las aplicaciones J2ME o Java Platform Micro Edition. Eran relativamente portables.
  • Desde 2007 con el lanzamiento del iPhone e iPod Touch, los sistemas operativos de teléfonos móviles se han estandarizado bastante.
    • Android fue comprado por Google, manteniendo su desarrollo open core.
    • Durante unos pocos años, Microsoft intentó potenciar su sistema operativo móvil (Windows Phone) con Nokia. No le fue muy bien.

Este gráfico de Statista (ahora tras paywall) muestra la importancia de de Symbian OS y Series 40 (de Nokia) hasta el 2012, momento en que Android despegó en popularidad. Por su parte, iOS se ha mantenido estable en participación de mercado.

Masividad de SOs Móviles

A continuación veremos algunas consideraciones de seguridad relacionadas con los sistemas operativos de teléfonos móviles modernos.

Sistema de permisos#

  • Tanto en Android como iOS, las API para acceder a recursos internos están divididas en categorías.

Solicitud de permisos

El objetivo de lo anterior es evitar que aplicaciones accedan a recursos a los que no deberían acceder para su funcionamiento normal.

Uno de los casos más comunes de mal uso de permisos es el de las aplicaciones de préstamos abusivos. Estas aplicaciones se difunden en canales de publicidad y piden un montón de permisos (cámara, ubicación, lista de contactos, entre otros). Luego, usan esta información para extorsionar a las víctimas indicando que conocen a su familia o que cuentan con datos comprometedores de ellos.

Algunos modelos de amenaza móviles#

A continuación enumeramos algunas variables que pueden determinar los posibles modelos de amenaza de dispositivos móviles:

Amenaza Física#

  • Estado del dispositivo: Apagado, encendido antes del primer desbloqueo, encendido después del primer desbloqueo pero bloqueado, desbloqueado.
  • Tipo de adversario: Con control total por tiempo indefinido, con control por tiempo limitado, con control del canal de comunicación, con control de una aplicación en el dispositivo.
  • Amenazas de código ejecutado: Uso de permisos de forma distinta a la anunciada, explotación de bugs en el OS para escalar privilegios(Rooting), reemplazo de aplicaciones por defecto para mensajería y llamadas, lectura de contenido de pantalla con permisos de accesibilidad, inyección de eventos e intents en el sistema.
  • Amenazas de red: Las mismas que cualquier otro dispositivo conectado (las veremos en 🌐 Seguridad de Redes): MITM, Packet Sniffing, Tracking con IP o MACs.

Considerando lo importante de la información en estos dispositivos, sus vulnerabilidades tipo 0-day suelen ser súper bien pagadas. El sitio Zerodium mostraba esto en el 2019:

Costo de vulnerabilidades en 2019, móviles son mucho más caras

¿Quién compra vulnerabilidades? 🤔

Métodos de acceso#

  • Suele usar al menos de dos tipos: Algo que sabes y algo que eres.
  • Los mecanismos biométricos son cada vez más comunes, y bien implementados combinan comodidad con confiabilidad.

Con respecto a “Algo que sabes”, algunos sist. operativos móviles bloquean ciertos códigos fáciles de adivinar: * ¿Cuáles son los códigos fáciles según iOS?

Algunas vulnerabilidades#

Si tienes un iPhone y presionas 5 veces el botón de bloqueo mientras está apagado, requerirá obligatoriamente el PIN para ser desbloqueado, dificultando un desbloqueo forzoso con tu cara/huella.

Mecanismos de seguridad en hardware#

Los dispositivos móviles fueron los que masificaron el uso de “chips seguros” que separaban la información sensible (claves, datos biométricos, llaves privadas) del resto de la información, almacenándola en un chip especial (TPM)

  • Desde el iPhone 6, Apple incluye un Secure Enclave en sus dispositivos.

    • Almacena datos encriptados, como PIN, info de TouchID/FaceID y llaves privadas criptográficas que no se pueden extraer (solo se entrega una API para firmar y validar)
    • OS no puede acceder a la memoria del chip (chip tiene su propio OS)
    • El comportamiento del chip solo puede ser modificado por Apple (a no ser que se encuentre una vulnerabilidad en él)
  • En el caso de los Android, cada fabricante tiene sus versiones de chip seguro: Google Pixel usa chips Titan y Samsung usa Secure Element.

Similar al Secure Boot de Escritorio, los móviles usan una cadena de confianza para determinar si el sistema operativo fue modificado.

Paso a paso del proceso de boot en iOS

Así funciona el proceso de cifrado de datos en el Secure Enclave de Apple:

Secure Enclave

Si Apple firma un firmware malicioso, ¿tenemos como protegernos?

Se le ha solicitado históricamente a Apple desarrollar backdoors para sus dispositivos con objetivos de recuperar evidencia en investigaciones policiales. Apple se ha rehusado a colaborar.. En el caso del 2016, el FBI mostró que no necesita apoyo de las empresas fabricantes para romper la seguridad en dispositivos.

Sandboxing#

Sandboxing en Android

Las aplicaciones corren en sandboxes o entornos casi completamente aislados (a no ser que se les den permisos para interactuar entre sí o con el sistema de archivos general). Esto disminuye el potencial impacto de una aplicación vulnerable o fraudulenta, siempre y cuando los permisos otorgados sean los adecuados.

App Stores#

Las App Stores son una forma fácil y rápida de acceder a “aplicaciones oficiales” y generalmente seguras. Ellas permiten conocer antes de instalar la aplicación los permisos que ella requerirá, las condiciones de privacidad de los servicios y si la aplicación posee pagos internos o no.

  • En Android, originalmente se podían instalar aplicaciones desde cualquier fuente fácilmente (a esto se le llama sideloading). Desde marzo de 2026 es necesario esperar 24 horas para instalar una aplicación que no esté en la app store si no se es un desarrollador verificado.
  • En iOS, hasta hace poco solo podían instalarse aplicaciones desde la App Store oficial. La Unión Europea obliga a fabricantes de dispositivos a proveer alternativas a sus App Store en sus países integrantes. Apple cumple con esta normativa, pero solo en los países que lo exigen.

¿Estoy seguro/a si solo uso App Store?#

Lamentablemente, no porque una aplicación esté en una App Store (Oficial o no) significa que es segura. Han habido muchos casos de malware distribuido a través de App Stores Oficiales (en general Android):

  • Juegos de Google Play (2018):
  • Xamalicious (2023): Campaña detectada por McAffee en la que aplicaciones implementadas con Xamarin (Framework de código abierto para hacer apps de Android e iOS) transforman dispositivos móviles en zombies de un Command and Control.
  • Aplicaciones de préstamos abusivos: Mencionadas más arriba, suelen ser reportadas por reguladores nacionales (CMF) pero no siempre son dadas de baja rápidamente.

Caputra de pantalla de aplicación de préstamos abusivos

Malware en móvil#

Algunos ejemplos de malware en Android:

  • DroidDream (2011) Malware en Android 2.2 que recolectaba datos locales y los enviaba a un servidor remoto, además de descargar archivos y aplicaciones.
  • Zitmo (2011) Versión móvil del malware Zeus (Zeus in the Mobile). A partir de una campaña en dispositivos de escritorio, se incentiva al usuario a instalar un “certificado” en un dispositivo móvil, el que en realidad es una aplicación.
  • Vault 7 (2013-2016): Herramientas usadas por la CIA para acceder a equipos móviles.
  • KingRoot (hasta Android 5): Es un mecanismo de root de dispositivos móviles que aparentemente incluía adware adicional al proceso de root.

En iOS, el malware autoinstalable es muy poco común. En The Apple Wiki hay algunos ejemplos de herramientas maliciosas disponibles para la plataforma, la mayoría usadas por gobiernos o actores de amenaza para acceder al contenido de sus usuarios.

En ambos casos, si el actor de amenaza del que uno quiere defenderse es un APT o un gobierno de forma dirigida, es muy difícil protegerse, dado que este tipo de actores podría contar con vulnerabilidades de tipo 0-day para acceder a la información en el dispositivo. Un ejemplo de proveedor de este tipo de herramientas es Cellebrite.

Rooting y Jailbreaking#

Consiste en aprovecharse de alguna vulnerabilidad en el sistema operativo para conseguir permisos mayores a los que el fabricante esperaba.

El paso a paso de casi todos los métodos de root es el siguiente:

  • Se ejecuta un exploit que permite escalar privilegios a superusuario o se desactiva una funcionalidad de seguridad crítica (como revisión de firmas en código ejecutado)
  • Se instala una aplicación que intermedia las solicitudes de root de otras aplicaciones
  • (A veces,) se desarrolla un mecanismo de persistencia para que el root perdure entre actualizaciones.

Para rootear Androids se puede usar una guía como esta.

Algunas personas rootean sus dispositivos para conseguir control completo sobre ellos, otras para instalar aplicaciones piratas. En ambos casos, se está habilitando una opción para que las aplicaciones se salten varios de los controles de los que hemos hablado en esta sección.

La recomendación general es no rootear dispositivos que tienen datos sensibles. Si el dispositivo es una tablet vieja que quiero usar como dashboard con una visualización del tiempo para la semana, da un poco lo mismo rootear o no, pero si el dispositivo tiene instaladas aplicaciones bancarias o de MFA, lo mejor es evitarlo.

Generalmente los teléfonos más modernos no son fácilmente rooteables (o requieren desactivar un montón de medidas de seguridad para serlo), lo que es un pro desde el punto de vista de seguridad.

Mitigaciones#

Para disminuir el impacto de ser afectado por una situación que ponga en riesgo los datos o la privacidad de sus usuarios:

  • Usar dispositivos sin vulnerabilidades conocidas: Lamentablemente, los dispositivos más antiguos (más de 4 años) suelen ser afectados por vulnerabilidades que los fabricantes ya no parchan o que son imparchables por software, lo que los vuelve fácilmente desbloqueables por algunos tipos de actores de amenaza.
  • Usar sistemas operativos actualizados y oficiales: Para el caso de las vulnerabilidad
  • Usar sistemas operativos seguros Los Google Pixel (y futuramente algunos Lenovo) pueden usar el sistema operativo Graphene OS, que no depende de Google y posee valores por defecto mucho más seguros que un Android tradicional. Además, este sistema operativo tiene otras configuraciones orientadas a evitar acceso no autorizado de información, como el uso de Duress PINs que si son ingresados al desbloquear, el equipo se formatea inmediatamente. Esto ha sido consdierado como ilegal en algunos países del norte de nuestro continente, conocidos por malas prácticas de revisión fronteriza
  • Evitar el rooteo del dispositivo móvil primario: Rootear un dispositivo puede ser útil para tomar control sobre él, pero el atacante también podrá acceder a más datos y más fácilmente que si el dispositivo no estuviese en ese estado.

Otras referencias:#