El compromiso de Apple con la privacidad del usuario es bien conocido. Uno de los componentes clave de sus controles de privacidad es el framework de Transparencia, Consentimiento y Control (TCC). Al observar la diferencia en seguridad entre macOS y Windows, hay muchas diferencias grandes y distinguibles, así como otras más sutiles.
Lanzado en macOS Mojave 10.14, TCC es una de las principales diferencias en cuanto a cómo macOS maneja los datos confidenciales del usuario. La base de datos de TCC cumple un papel crucial al garantizar que los usuarios tengan control sobre los permisos de acceso otorgados a las aplicaciones en sus dispositivos.
Qué es
TCC significa Transparencia, Consentimiento y Control, y es un framework desarrollado por Apple para gestionar el acceso a datos confidenciales del usuario en macOS. El objetivo principal de TCC es darles a los usuarios transparencia sobre cómo las aplicaciones acceden a sus datos y los usan.
Para obtener visibilidad de los permisos de TCC, los usuarios pueden ir a Configuración del sistema y hacer clic en Privacidad y seguridad. En este panel, puedes ver la gran mayoría de los permisos de TCC. Esto incluye, entre otros, las aplicaciones que han solicitado acceso a la cámara o al micrófono, a los datos de ubicación y a archivos y carpetas específicos como el Escritorio o Documentos.
Dónde está
Como se mencionó, TCC es en realidad una base de datos que vive en el disco. Hay varias bases de datos de TCC en macOS: una por usuario, y también una a nivel de raíz.
~/Library/Application Support/com.apple.TCC/TCC.db
/Library/Application Support/com.apple.TCC.db
Una de las principales diferencias entre estas dos bases de datos es que algo como Acceso total al disco (uno de los permisos más conocidos) solo se encuentra en la Library raíz. La razón es que este permiso puede dar acceso a ciertas configuraciones administrativas para todos los usuarios del dispositivo. Para otorgar Acceso total al disco (FDA), un usuario deberá ingresar su contraseña de administrador para otorgar o revocar el acceso. En ese momento, ese cambio se refleja en la base de datos ubicada, en este caso, en el directorio raíz.
Aspectos clave
Preferencias de Privacidad y seguridad
El framework de TCC está integrado en el panel de Preferencias de Privacidad y seguridad de macOS. Esta configuración permite a los usuarios revisar y modificar los permisos otorgados a las apps para acceder a datos confidenciales como la ubicación, la cámara, el micrófono, los contactos, el calendario y más.
Consentimiento del usuario
TCC garantiza que las aplicaciones deban pedir el consentimiento explícito de los usuarios antes de acceder a ciertos tipos de datos. Cuando una app intenta acceder a información confidencial, un cuadro de diálogo del sistema le pide al usuario que otorgue o niegue el permiso. Este proceso le da al usuario control sobre sus datos y evita el acceso no autorizado.
Base de datos por diseño
La base de datos de TCC mantiene un registro de los permisos que el usuario otorgó a cada aplicación. Esta base de datos incluye detalles sobre la app, el tipo de datos a los que solicitó acceso y la respuesta del usuario (permitir o denegar). La base de datos estructurada garantiza que las preferencias del usuario se respeten de forma consistente en todo el sistema.
Cifrado
Apple pone un fuerte énfasis en la seguridad de los datos del usuario. La base de datos de TCC está cifrada para proteger la información almacenada del acceso no autorizado. Esto garantiza que, incluso si un dispositivo se ve comprometido, la privacidad del usuario se mantenga intacta.
Análisis en un entorno aislado
TCC funciona junto con la función de análisis en un entorno aislado de las aplicaciones en macOS y iOS. Esta función restringe el acceso de una app al sistema y a otras aplicaciones, lo que añade una capa adicional de seguridad. TCC garantiza que las apps solo puedan acceder a los datos para los que recibieron el consentimiento explícito del usuario.
Problemas
Con los años, han surgido algunos problemas aquí y allá con la introducción de TCC. Ahora bien, creo que estas dificultades valen la pena dado el valor y la privacidad que ofrece TCC; sin embargo, vale la pena mencionar algunas de estas dificultades para los usuarios.
Por un lado, TCC es otro permiso más sobre el que los usuarios deben actuar. Ya sea que hablemos de la fatiga de notificaciones o de los problemas que esto puede traer a los desarrolladores de software, esto sí genera nuevas dificultades. Si hablamos de la instalación de software a nivel individual, no creo que haya cambios sustanciales. La historia podría ser así: un usuario instala un nuevo antivirus en su computadora, y ese producto lo guía para aprobar el acceso total al disco. O bien, un usuario instala Zoom y luego tiene que hacer clic en el botón Aprobar para usar la cámara, el micrófono o compartir pantalla.
Sin embargo, en cuanto empezamos a intentar implementar este software en varios dispositivos, digamos en un entorno corporativo, la complejidad empieza a aumentar exponencialmente. Si la empresa usa un MDM para implementar su software, deberá crear un nuevo payload de PPPC para implementarlo en sus dispositivos y otorgar estos permisos de inmediato, para que los usuarios no tengan que hacer el trabajo manual de hacer clic y aprobar. Si, en cambio, una empresa no usa un MDM, entonces esto queda a cargo del usuario. De nuevo, esto suma complejidad adicional a lo que debería ser el simple acto de instalar software.
Además, la introducción de un nuevo mecanismo de seguridad puede, en sí misma, generar nuevas preocupaciones de seguridad. Investigadores de seguridad de macOS como Csaba Fitzl o Wojciech Reguła han obtenido varios CVE al encontrar formas de eludir los protocolos y mecanismos de TCC.
Conclusión
La base de datos de Transparencia, Consentimiento y Control (TCC) de Apple es un elemento clave en el compromiso de la empresa con la privacidad del usuario, pero como con cualquier función nueva, hay matices a considerar. Sin embargo, al darles a los usuarios un control transparente sobre sus datos, TCC garantiza que la privacidad siga siendo una prioridad máxima en el ecosistema de Apple.
A medida que la tecnología sigue avanzando, frameworks como TCC cumplen un papel crucial para mantener el delicado equilibrio entre la innovación y la protección del usuario.