El investigador descubrió que podía obtener acceso no autorizado a la cámara a través de un documento compartido de iCloud que también podía «hackear todos los sitios web que hayas visitado.»
Un investigador que demostró a Apple cómo sus cámaras web pueden ser secuestradas a través de un fallo universal de scripting entre sitios (UXSS) de Safari ha sido premiado con lo que, al parecer, es una recompensa récord de 100.500 dólares por el fallo. El fallo podría ser utilizado por un adversario como parte de un ataque para obtener acceso completo a todos los sitios web visitados por la víctima.
El descubridor del fallo es Ryan Pickren, fundador de la plataforma de intercambio de pruebas de concepto BugPoC y antiguo ingeniero de seguridad de Amazon Web Services. No es la primera vez que encuentra bugs que le permiten burlar las cámaras de Apple: En 2020, descubrió una vulnerabilidad en el navegador Safari que podía utilizarse para espiar los iPhones, iPads y ordenadores Mac utilizando sus micrófonos y cámaras, simplemente convenciendo a un objetivo para que hiciera clic en un enlace malicioso.
En esta ocasión, según Pickren, ha encontrado una serie de fallos -en Safari 15 y en iCloud Sharing- que podrían llevar de nuevo a un acceso no autorizado a la cámara, lo que permitiría de nuevo lanzar un ataque desde un sitio malicioso.
Pero su hallazgo más reciente es peor: también podría permitir que un documento compartido de iCloud «hackeara todos los sitios web que has visitado», dijo, y podría robar los permisos para usar multimedia, es decir, el micrófono, la cámara y la pantalla compartida.
Pickren informó de que el mismo hackeo podría dar lugar a que un atacante obtuviera acceso completo a todo el sistema de archivos de un dispositivo, explotando los archivos webarchive de Safari, que son los archivos que Safari crea como alternativa al HTML cuando guarda un sitio web localmente.
Pickren presentó los fallos a Apple el pasado mes de julio. El fabricante del iPhone corrigió los problemas a principios de este mes y posteriormente concedió la recompensa de 100.500 dólares a Pickren.
Los Bugs
Los problemas se encuentran en ShareBear, una aplicación para compartir archivos de iCloud que se encuentra entre bastidores y que avisa a los usuarios cuando intentan abrir un documento compartido por primera vez, y sólo por primera vez. Como los usuarios no vuelven a ver la pantalla una vez que han aceptado la solicitud de abrir el archivo, Pickren descubrió que cualquiera que tenga acceso al archivo puede alterar su contenido después de que esto ocurra.
«ShareBear entonces descargará y actualizará el archivo en la máquina de la víctima sin ninguna interacción o notificación del usuario», explicó Pickren en su escrito técnico. «En esencia, la víctima ha dado permiso al atacante para plantar un archivo polimórfico en su máquina y el permiso para lanzarlo remotamente en cualquier momento».
Estos tres pasos están involucrados en el uso de ShareBear para descargar y abrir un archivo webarchive:
- Engañar a la víctima para que dé permiso para plantar el archivo polimórfico;
- Convertir un archivo de imagen con formato .PNG – dio el ejemplo de puppies.png – en un binario ejecutable («evil.dmg) después de que el usuario haya accedido a abrirlo;
- El binario desencadena una cadena de exploits que aprovecha otros fallos descubiertos en Safari para hacerse con el micrófono o la cámara web de la máquina, o incluso para robar archivos locales.
Etapas del ataque a ShareBear. Fuente: Ryan Pickren.
Pickren identificó cuatro errores de día cero, de los cuales los siguientes han recibido números de seguimiento CVE:
- CVE-2021-30861: Un problema de lógica en Webkit, calificado como 5,5 de criticidad, que Apple abordó con una gestión de estados mejorada en macOS Monterey 12.0.1. El fallo podría permitir que una aplicación maliciosa se salte las comprobaciones realizadas por Gatekeeper: una función de seguridad de macOS que intenta reducir la probabilidad de ejecutar malware de forma inadvertida al aplicar la firma de código y verificar las aplicaciones descargadas antes de permitir su ejecución.
- CVE-2021-30975: Un problema en el editor de scripts de macOS Monterey con una puntuación de criticidad base de Alta – 8,6 – que puede permitir que un complemento de scripts OSAX malintencionado eluda las comprobaciones de Gatekeeper y sortee las restricciones de la caja de arena. Apple abordó el problema deshabilitando la ejecución de JavaScript al ver un diccionario de scripts.
«Este proyecto fue una interesante exploración de cómo un fallo de diseño en una aplicación puede permitir que otros fallos no relacionados se vuelvan más peligrosos», concluyó Pickren. «También fue un gran ejemplo de cómo, incluso con macOS Gatekeeper activado, un atacante puede lograr muchas travesuras engañando a las aplicaciones aprobadas para que hagan cosas maliciosas».