MacOS 0day activamente explotado permite a los piratas informáticos tomar capturas de pantalla de Mac infectadas

Manos enguantadas manipulan una computadora portátil con una calavera y tibias cruzadas en la pantalla.

Los piratas informáticos malintencionados han estado explotando una vulnerabilidad en versiones completamente actualizadas de macOS que les permitía tomar capturas de pantalla en Mac infectadas sin tener que obtener primero el permiso de las víctimas.

El día cero fue explotado por XCSSET, un malware descubierto por la empresa de seguridad Trend Micro el pasado agosto. XCSSET usó lo que en ese momento eran dos días cero para infectar a los desarrolladores de Mac con malware que robaba cookies y archivos del navegador; puertas traseras inyectadas en sitios web; robó información de Skype, Telegram y otras aplicaciones instaladas; tomó capturas de pantalla; y archivos cifrados y mostró una nota de rescate.

Un tercer día cero

Las infecciones llegaron en forma de proyectos maliciosos que el atacante escribió para Xcode, una herramienta que Apple pone a disposición de forma gratuita para los desarrolladores que escriben aplicaciones para macOS u otros sistemas operativos de Apple. Tan pronto como se abriera y construyera uno de los proyectos XCSSET, TrendMicro dijo que el código malicioso se ejecutaría en las Mac de los desarrolladores. Un proyecto de Xcode es un repositorio de todos los archivos, recursos e información necesarios para crear una aplicación.

En marzo, los investigadores de SentinelOne encontraron una nueva biblioteca de código troyano en la naturaleza que también instaló el malware de vigilancia XCSSET en Mac para desarrolladores.

El lunes, investigadores de Jamf, un proveedor de seguridad para usuarios empresariales de Apple, dijeron que XCSSET ha estado explotando un día cero que no había sido detectado hasta hace poco. La vulnerabilidad residía en el Marco de control y consentimiento de transparencia, que requiere permiso explícito del usuario antes de que una aplicación instalada pueda obtener permisos del sistema para acceder al disco duro, micrófono, cámara y otros recursos sensibles a la privacidad y la seguridad.

XCSSET había estado explotando la vulnerabilidad para que pudiera eludir las protecciones de TCC y tomar capturas de pantalla sin requerir permiso del usuario. Apple corrigió CVE-2021-30713 (ya que se rastrea la vulnerabilidad) el lunes con el lanzamiento de macOS 11.4.

La vulnerabilidad fue el resultado de un error lógico que permitió que XCSSET se ocultara dentro del directorio de una aplicación instalada que ya tenía permiso para tomar capturas de pantalla. El exploit permitió que el malware heredara los permisos de captura de pantalla, así como otros privilegios controlados por TCC.

Aprovechar las aplicaciones para padres

“Algunos desarrolladores diseñan aplicaciones con aplicaciones más pequeñas dentro de ellas”, dijo el investigador de Jamf, Jaron Bradley, en una entrevista. “Esto no es inaudito. Pero parece haber existido un error en la lógica del sistema operativo cuando se trata de cómo se manejan los permisos de TCC en tal situación “.

Para ubicar aplicaciones de las que XCSSET podría aprovechar, el malware verificó los permisos de captura de pantalla de una lista de aplicaciones instaladas.

“Como era de esperar, la lista de ID de aplicaciones que están dirigidas son todas las aplicaciones a las que los usuarios conceden regularmente el permiso para compartir pantalla como parte de su funcionamiento normal”, escribió Bradley en un correo. “Luego, el malware usa el siguiente comando mdfind, la versión basada en la línea de comandos de Spotlight, para verificar si los ID de aplicación están instalados en el dispositivo de la víctima”.

Jamf

La publicación explicaba cómo funcionaba el flujo del AppleScript responsable del exploit:

  1. El módulo de captura de pantalla XCSSET AppleScript se descarga desde el servidor de comando y control (C2) del autor del malware (en la carpeta ~ / Library / Caches / GameKit).
  2. Con el comando osacompile, el módulo de captura de pantalla se convierte en una aplicación basada en AppleScript llamada avatarde.app. Cuando cualquier AppleScript se compila de esta manera, se coloca un ejecutable llamado “applet” en el directorio / Contenidos / MacOS / del paquete de aplicaciones recién creado y el script que ejecutará el applet se puede ubicar en / Contenidos / Recursos / Scripts / main. scpt.
  3. Luego, el binario plutil modifica el Info.plist recién creado, cambiando la configuración de preferencia LSUIElement a true. Esto permite que la aplicación se ejecute como un proceso en segundo plano, ocultando su presencia al usuario.
  4. A continuación, se descarga un icono en blanco y se aplica a la aplicación.
  5. Por último, la aplicación recién creada se coloca dentro de la aplicación de donante ya existente utilizando el siguiente código:

Por ejemplo, si la aplicación de reuniones virtuales zoom.us.app se encuentra en el sistema, el malware se ubicará así:

/Applications/zoom.us.app/Contents/MacOS/avatarde.app

Si la computadora de la víctima ejecuta macOS 11 o superior, firmará la aplicación avatarde con una firma ad-hoc, o una firmada por la propia computadora.

Una vez que todos los archivos estén en su lugar, la aplicación personalizada se superpondrá a la aplicación principal, que en el ejemplo anterior es Zoom. Esto significa que la aplicación maliciosa puede tomar capturas de pantalla o grabar la pantalla sin necesidad de consentimiento explícito del usuario. Hereda esos permisos de TCC directamente de la aplicación principal de Zoom. Esto representa una preocupación de privacidad considerable para los usuarios finales.

Durante las pruebas de Jamf, se determinó que esta vulnerabilidad tampoco se limita a los permisos de grabación de pantalla. Se pueden transferir varios permisos diferentes que ya se han proporcionado a la aplicación del donante a la aplicación creada de forma malintencionada.

Jamf

Ahora que Apple ha solucionado la vulnerabilidad, TCC funciona de la manera que pretendía Apple, con un mensaje de diálogo que solicita a los usuarios que abran las preferencias del sistema para permitir la aplicación o simplemente hagan clic en el botón denegar que se muestra en la ventana emergente.

No es probable que XCSSET infecte Mac a menos que haya ejecutado un proyecto Xcode malicioso. Eso significa que es poco probable que las personas se infecten a menos que sean desarrolladores que hayan utilizado uno de los proyectos. La publicación de Jamf proporciona indicadores de una lista de compromisos que las personas pueden usar para determinar si han sido infectadas.

Leave a Reply

Your email address will not be published. Required fields are marked *