Todo lo que debes saber sobre la nueva vulnerabilidad día cero de iPhone

ActualidadiPhonevulnerabilidad

La empresa de ciberseguridad ZecOps acaba de publicar una entrada de blog que se llama “You’ve Got (0-click) Mail!“.

De acuerdo con el artículo, la empresa recientemente hizo una investigación forense sobre iPhones que aparentemente habían sido atacados.

En los móviles encontraron que había correos electrónicos sospechosamente construidos, que databan de enero de 2018, que parecían tener como objetivo algún tipo de error desconocido de iOS.

Avanzando rápidamente a través de lo que sin duda era un montón de espeleología de código máquina, ZecOps descubrió que los correos electrónicos sospechosos eran, de hecho, una trampa deliberada.

Sólo ver o abrir esos correos, sin hacer clic en nada del email en sí, podría causar uno de los dos diferentes bloqueos en la aplicación de correo de Apple, y los bloqueos eran provocados por el contenido en el correo electrónico que casi con seguridad no surgió por casualidad.

Por ejemplo, varios de los llamados indicadores de compromiso (IO) publicados por ZecOps incluyen las cadenas de texto AAA… AAA.

Cuando las cadenas de As aparecen en contenido sospechoso, y luego los números que salen como 0x4141 … 4141 en hexadecimal aparecen en volcados provocados por ese contenido sospechoso (0x41414141 es el código ASCII para AAAA), estamos ante algo muy parecido a una prueba de concepto.

La cadena AAA … AAA se usa muy comúnmente en la búsqueda de errores porque es fácil de escribir; es una cadena válida de letras mayúsculas ASCII puras; destaca notablemente en forma binaria como 0x4141 … 4141; y, al menos en los chips Intel, la cadena en sí misma se descompone ordenadamente en una secuencia de instrucciones de código de máquina de un solo byte (operaciones de INC RCX en Intel de 64 bits, como sucede) que no se meten con la memoria.

En las propias palabras de ZecOps, la compañía se ha formado la opinión de que un grupo de ataque desconocido “compró el exploit de un tercero investigador en forma de prueba de concepto (POC) y lo utilizó tal cual o con pequeñas modificaciones (de ahí las cadenas 4141..41)”.

Rastreando y analizando las caídas que provocaron los mensajes trampa, los investigadores descubrieron no uno sino dos diferentes errores de desbordamiento de memoria en la biblioteca de manejo de mensajes utilizada por la aplicación de correo electrónico de Apple.

Los mensajes de correo electrónico modernos suelen estar formateados como texto en un formato llamado MIME, abreviatura de Multipurpose Internet Mail Extensions.

MIME permite que los correos electrónicos se dividan en varias partes, incluyendo el cuerpo del mensaje, imágenes incrustadas y archivos adjuntos como imágenes, videos y documentos.

Resulta que la biblioteca de procesamiento MIME de Apple mantiene sus datos en la memoria hasta que alcanza un cierto tamaño de datos (2 Mbytes, aparentemente), después de lo cual se guarda en el disco y se accede a él cuando es necesario.

Esta es una técnica de programación común. Ayuda a asegurar no sólo que los pequeños objetos de datos puedan ser procesados rápidamente, sino también que los grandes no atasquen el resto del dispositivo consumiendo demasiada RAM.

Los errores de los que hablamos están relacionados con el punto en el que la biblioteca del software MIME cambia de almacenar datos de mensajes en la RAM a almacenarlos en el disco.

Irónicamente, la primera vulnerabilidad que encontraron no les pareció muy útil a los atacantes por sí sola, parece haber sido un efecto secundario no intencionado de la segunda vulnerabilidad que descubrieron, la cual consideran que es en la que los atacantes confiaban.

ZecOps reveló los problemas a Apple en febrero de 2020, y fue capaz de proporcionar un PoC a finales de marzo de 2020 para ayudar a Apple a solucionar el error.

¿Debemos preocuparnos?

La buena noticia es que Apple ya ha desarrollado una solución para la próxima versión de iOS, actualmente denominada 13.4.5 Beta, pero como el nombre de la versión indica, esta todavía no es una versión completa oficial.

La otra buena noticia es que, aunque estos nuevos bugs son técnicamente vulnerabilidades de día cero, y aunque al menos un grupo de ataque parece haberlos usado como un componente en ataques dirigidos, aparentemente no son explotables por sí mismos.

Como dice ZecOps:

P: ¿Requiere la vulnerabilidad información adicional para tener éxito?

R: Sí, un atacante necesitaría filtrar una dirección de la memoria para evitar el ASLR. No nos centramos en esta vulnerabilidad en nuestra investigación.

ASLR, por supuesto, es la aleatorización de la disposición del espacio de direcciones, por la cual el sistema operativo evita usar lugares de memoria predecibles para cargar código y datos.

Esto significa que incluso si los atacantes remotos pueden introducir contenido peligroso en la RAM – lo que a menudo se llama código de shell en la jerga – tienen poca o ninguna idea de dónde acabará, por lo que no pueden transferir de forma fiable el control sobre él para hacerse cargo de la aplicación. (Lo más probable es que la aplicación simplemente se caiga).

Además, los atacantes necesitarían una vulnerabilidad secundaria a nivel del núcleo para obtener el control a nivel del sistema y así escapar de las restricciones de la aplicación vulnerable.

Por supuesto, las aplicaciones de correo electrónico suelen contener muchos datos jugosos personales, por lo que un compromiso de doble vulnerabilidad de la aplicación de correo electrónico por sí sola sigue siendo un resultado que vale la pena para cualquier atacante.

¿Qué hacer?

Como hemos mencionado, la buena noticia es que un parche permanente está previsto cuando la versión actual de iOS (13.4.5) salga de su versión Beta.

Así que estate atento a la próxima actualización de iOS de Apple y asegúrate de obtenerla tan pronto como esté lista.

La otra buena noticia es que estos agujeros no parecen ser directamente explotables, por lo que su divulgación pública durante el actual programa Beta no es una invitación directa a los ladrones para empezar a atacar a los iPhones de todo el mundo.

Si estás preocupado porque crees que el perfil de tu empresa se alinea con las posibles víctimas a las que se alude en el artículo del blog de ZecOps, podrías considerar cambiar a una aplicación de correo electrónico diferente hasta que salga la próxima actualización de iOS.

Gmail y Outlook, por ejemplo, tienen sus propias aplicaciones de correo electrónico que puedes usar en lugar de la de Apple, incluso si esto significa usar dos o más aplicaciones en lugar de dejar todos tus mensajes a la aplicación integrada del iPhone.

Aunque la propia aplicación de correo electrónico de Apple viene con iOS, puede ser eliminada de tu dispositivo (a diferencia de las aplicaciones principales como Safari, Phone y Messages).

Para eliminar una app, mantén presionado cualquier ícono de app hasta que todos tus íconos comiencen a temblar (esa es la señal de que puedes moverlos), y cualquier app que se pueda borrar aparecerá con un botón [X] en la esquina superior izquierda.

Puedes reinstalar las aplicaciones de sistema eliminadas a través del App Store en cualquier momento; la aplicación de correo electrónico incorporada se llama simplemente “Mail by Apple”.

 

Leave a Reply

Your email address will not be published.