Pregúntale al Mac Guy: ¿Cuál es el problema con el acceso completo al disco para Mac?

¡Aquí estamos! Otra edición de Ask the Mac Guy. En esta serie, hemos estado hablando de algunos principios básicos sobre la seguridad de macOS, como desmentir mitos comunes de seguridad de macOS y los conceptos básicos para proteger las Mac. Hoy vamos a entrar en más detalle y profundizar en la tecnología de Apple para aprender más sobre el acceso total al disco en Mac.

En otros artículos, he hablado sobre la tecnología que Apple incluye con su producto, es decir, sus herramientas de seguridad integradas. Una de las formas en que Apple intenta mantener seguros a los usuarios es con Transparency, Consent, and Control (TCC). En resumen, TCC es un conjunto de bases de datos SQLite en el disco, y cuando un software desea acceder a partes de tu hardware o software que podrían contener información confidencial o personal, le muestra al usuario una alerta interactiva que requiere que permita o deniegue la solicitud. Esto hace que la aprobación explícita del usuario sea un requisito para que el software acceda al servicio que solicita. Por ejemplo, si soy usuario de Zoom, la primera vez que intento activar mi cámara, macOS me pedirá que permita o no permita que Zoom acceda a mi cámara. Si elijo 'No permitir', entonces Zoom no podrá activar mi cámara. Doy este contexto porque hoy vamos a hablar de una parte muy específica de TCC: un servicio llamado Full Disk Access.

Entender el acceso total al disco en macOS

¿Por qué es importante el acceso total al disco en las Mac? Buena pregunta.

Apple presentó el acceso total al disco (FDA, por sus siglas en inglés) como parte de macOS Mojave para darles a los usuarios mayor control sobre qué aplicaciones pueden acceder a todo el sistema. Esta función es clave para proteger la privacidad del usuario y mantener la seguridad de los datos personales. Cuando está activado, el acceso total al disco en Mac permite que ciertas aplicaciones omitan algunas restricciones de seguridad, lo que les permite leer y escribir archivos a los que otras aplicaciones no pueden acceder.

Ciertas aplicaciones, siendo Zoom un gran ejemplo, no pueden funcionar correctamente ni alcanzar todo su potencial sin permisos específicos de TCC. En algunos casos, ese permiso de TCC es FDA. Esto es aplicable al futuro de Managed ITDR.

El permiso FDA dentro de la base de datos de TCC es posiblemente uno de los servicios más críticos en cuanto a privacidad. Cuando se han revelado formas de evadir TCC, la mayor preocupación suele centrarse en FDA. Hemos visto cómo algún malware sofisticado como XCSSET logró evadir TCC, donde el malware pudo aprovecharse de otros permisos de TCC. Si el malware tuviera acceso total al disco, podría acceder a todos los datos confidenciales del usuario. Esto podría derivar en movimiento lateral en la red, mayores probabilidades de futuros ataques de ingeniería social, espionaje a los usuarios, etc. Por otro lado, si yo fuera un analista del equipo defensivo y necesitara realizar una respuesta a incidentes en un endpoint usando Aftermath, mi Terminal necesitaría acceso total al disco para que mi herramienta de IR pudiera recopilar todos los datos relevantes e importantes del dispositivo y así realizar una investigación adecuada.

En la base de datos de TCC, Apple se refiere al acceso total al disco mediante el campo kTCCServiceSystemPolicyAllFiles. Cuando vemos este campo en la base de datos, puedes ver el cliente que hizo la solicitud.

Picture

Para el usuario final, si vas a System Settings > Privacy & Security > Full Disk Access, puedes ver todas las aplicaciones (clientes, como se les llama en la base de datos) que han solicitado FDA y si el usuario aprobó o denegó la solicitud.

En nuestra segunda edición de Ask the Mac Guy, hablamos sobre FDA en el contexto de las prácticas recomendadas para proteger tu Mac. Ahí hablamos sobre auditar tus permisos de TCC. Una forma, a nivel empresarial, de asegurarte de que no se manipulen es implementar software de gestión de dispositivos móviles (MDM). Existen varios MDM disponibles: Microsoft Intune, Jamf Pro, Addigy, entre otros.

Los MDM tienen más margen de maniobra por parte de Apple en cuanto a TCC y FDA. Los MDM cuentan con una función llamada PPPC (Privacy Preferences Policy Control). Esto permite que los administradores implementen un payload que contiene una serie de pares clave-valor. Tener claves y valores específicos puede otorgarle acceso de TCC al software, como FDA.

Por ejemplo, si quiero darle al agente de Huntress permisos de acceso total al disco, crearía un payload en mi MDM y lo enviaría al endpoint. Para verlo, revisaría System Settings > Profiles.

Picture

Esta imagen muestra cómo se le otorga al agente de Huntress acceso total al disco usando el identificador de paquete com.huntresslabs.www.

Vale la pena destacar lo útil que puede ser un MDM al implementar software o trabajar con aplicaciones y software en macOS. Puede implementar software en varios dispositivos a la vez, además de otorgar permisos a las aplicaciones, sin necesidad de estar físicamente frente al dispositivo.

Si alguna vez te interesa explorar más a fondo las bases de datos de TCC en el sistema (una a nivel raíz y otra para cada usuario), puedes hacerlo desde la Terminal o el CLI que prefieras. Aunque el esquema de estas dos bases de datos es idéntico, lo que contienen es diferente. La base de datos de TCC a nivel raíz, ubicada en /Library/Application Support/com.apple.TCC/TCC.db, contiene información más confidencial, como acceso total al disco, capturas de pantalla o monitoreo de entrada. La base de datos de TCC por usuario, ubicada en ~/Library/Application Support/com.apple.TCC/TCC.db, contiene los permisos de acceso al micrófono, acceso a la cámara, acceso a carpetas (Escritorio, Descargas, etc.), datos de ubicación, y más.

Si revisamos nuestra base de datos local de TCC, podemos ver una lista de qué aplicaciones (según su identificador de paquete), qué solicitaron y qué acción se tomó. Aquí, el comando que ejecuto es:

sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db

Esto abrirá la base de datos de TCC de mi usuario (~); luego, ejecuto el siguiente comando de SQLite.

SELECT client, service, auth_value, auth_reason, datetime(last_modified, "unixepoch") FROM access ORDER BY last_modified DESC;

Esto también puede aplicarse al acceso total al disco, y puedes encontrar mucha más información sobre TCC en nuestro blog Built-In macOS Security Tools.

Preguntas frecuentes

¿Qué es el acceso total al disco para Mac?

El acceso total al disco para Mac es una función de seguridad que permite que ciertas aplicaciones seleccionadas accedan y modifiquen archivos del sistema que normalmente están restringidos. Esta configuración es fundamental para las apps que necesitan un acceso profundo al sistema para funcionar correctamente, como las herramientas de seguridad y el software de respaldo.

¿Cómo doy acceso total al disco en mi Mac?

Para dar acceso total al disco en tu Mac, ve a Configuración del sistema > Privacidad y seguridad > Acceso total al disco. Desde ahí, puedes agregar o quitar aplicaciones, asegurándote de que solo las apps confiables tengan este nivel de acceso.

¿Cuáles son los riesgos de no gestionar bien los permisos de acceso total al disco?

Si los permisos de acceso total al disco no se gestionan bien, pueden generar riesgos de seguridad graves. Las apps maliciosas podrían acceder a todos tus datos confidenciales, lo que podría provocar filtraciones o incluso permitir que los hackers se muevan con más libertad por tu red. Esto también podría exponerte a ataques más dirigidos o a espionaje. Por eso, es muy importante asegurarte de que solo tus apps confiables tengan este nivel de acceso para mantener tu Mac protegida.

¿Cómo pueden las herramientas de gestión de dispositivos móviles (MDM) mejorar la gestión del acceso total al disco en las Mac?

Las herramientas MDM como Jamf Pro o Microsoft Intune hacen que gestionar el acceso total al disco en las Mac sea mucho más fácil, sobre todo para las empresas. Te permiten configurar y controlar los permisos de forma remota, así no tienes que estar físicamente frente a cada dispositivo. Con MDM, puedes aplicar rápidamente la configuración correcta para asegurarte de que solo las apps confiables tengan acceso total al disco, manteniendo todo seguro y conforme sin complicaciones. Es una forma eficiente de mantener la seguridad de tus Mac en todos tus dispositivos.

Reflexiones finales

Cuando las aplicaciones no funcionan como se espera, asegurarse de que la aplicación tenga los permisos adecuados o necesarios, como el acceso total al disco, debería ser un paso común de solución de problemas. Esto suele confundir a los administradores y a los usuarios finales, y puede causar frustraciones en cuanto a la usabilidad. El diseño de Apple busca ayudar a restringir que las aplicaciones se extralimiten, y aunque está lleno de días cero, de verdad creo que la intención detrás de esto fue honesta y bien pensada.

También te podría interesar