Apple corrige una vulnerabilidad en macOS que permitía evadir Gatekeeper
Apple ha abordado una vulnerabilidad de macOS en las aplicaciones no firmadas basadas en scripts que podrían explotarse para evadir todos los mecanismos de protección de seguridad de macOS incluso en sistemas con parches completos.
Si evaden las comprobaciones de seguridad de notarización automatizadas (que escanean en busca de componentes maliciosos y problemas de firma de códigos), Gatekeeper permite que las aplicaciones se inicien. Gatekeeper es una función de seguridad de macOS diseñada para verificar si las aplicaciones descargadas están certificadas (notariadas) y firmadas por el desarrollador.
Una vez que se inician aplicaciones maliciosas basadas en scripts que apuntan a la vulnerabilidad de evasión (CVE-2021-30853) en el sistema de un objetivo, los atacantes pueden usarlas para descargar e implementar payloads maliciosos de segunda etapa.
Apple abordó esta vulnerabilidad en macOS 11.6 a través de una actualización de seguridad lanzada en septiembre de 2021 que agrega controles mejorados.
Evasión de Gatekeeper con un shebang
El ingeniero de seguridad de Box Offensive, Gordon Long, descubrió la vulnerabilidad de evasión de Gatekeeper CVE-2021-30853 y la reportó a Apple .
Descubrió que las aplicaciones basadas en secuencias de comandos (scripts) especialmente diseñadas descargadas de Internet se iniciarían sin mostrar una alerta. Estas podrían iniciarse aunque se pusieran en cuarentena automáticamente.
La parte “especialmente diseñada” requiere la creación de una aplicación que use un script que comience con un carácter shebang (! #). Sin embargo, se debe dejar el resto de la línea vacía, lo que le dice a la shell de Unix que ejecute el script sin especificar un intérprete de comandos de shell.
Esto conduce a una evasión de Gatekeeper porque el demonio syspolicyd comúnmente invocado automáticamente por la extensión del kernel AppleSystemPolicy para realizar verificaciones de seguridad (firma y certificación) ya no se activa para inspección cuando se inicia un script sin especificar un intérprete.
Básicamente, si el script usaba un shebang (!#) pero no especificaba explícitamente un intérprete, evadiría las comprobaciones de seguridad de Gatekeeper.
Demonio syspolicyd
“El demonio syspolicyd
realiza varias comprobaciones de políticas y, en última instancia, evita la ejecución de aplicaciones que no son de confianza. Por ejemplo, las que no están firmadas o notariadas”, explicó el investigador de seguridad Patrick Wardle.
“Pero, ¿qué pasa si el kext de AppleSystemPolicy decide que el demonio syspolicyd no necesita ser invocado? Bueno, entonces, ¡el proceso está permitido! Y si esta decisión se toma incorrectamente, entonces, tienes una excelente opción para evadir la cuarentena de archivos, Gatekeeper y la certificación”.
Como reveló Wardle, los ciberdelincuentes pueden explotar esta vulnerabilidad engañando a sus objetivos. Engañarán a las víctimas que abran una aplicación maliciosa que también se puede disfrazar como un documento PDF de apariencia benigna.
Estos payloads maliciosos se pueden enviar a los sistemas de los objetivos a través de muchos métodos. Por ejemplo,resultados de búsqueda maliciosos, actualizaciones falsas y aplicaciones troyanizadas descargadas de sitios que enlazan con software pirateado.
Vulnerabilidades similares explotadas por malware
Esta no es la primera vulnerabilidad de macOS corregida por Apple que permitiría a los ciberdelincuentes evadir por completo los mecanismos de seguridad del sistema operativo como Gatekeeper y File Quarantine en Mac con parches completos.
En abril, Apple parcheó una vulnerabilidad de día cero explotada en el entorno por los operadores de malware Shlayer. Shlayer evadía los controles de seguridad automatizados de macOS e implementaba payloads adicionales en Mac comprometidas.
Los ciberdelincuentes de Shlayer comenzaron a apuntar a los usuarios de macOS con malware sin firmar y no certificado. Este malware explotaba la vulnerabilidad de día cero (identificada como CVE-2021-30657 ) a partir de enero de 2021. Esto fue descubierto por el equipo de detección de Jamf Protect .
Microsoft también descubrió una vulnerabilidad de macOS en octubre, denominada Shrootless e identificada como CVE-2021-30892 ). La vulnerabilidad podría usarse para evadir la Protección de Integridad del Sistema (SIP) y realizar operaciones arbitrarias. Asimismo, permitía elevar los privilegios a root e instalar rootkits en dispositivos comprometidos.
“Una aplicación maliciosa puede modificar partes protegidas del sistema de archivos”, dijo Apple en un aviso de seguridad emitido después de corregir la vulnerabilidad de Shrootless.