Descifrando el funcionamiento del chip T2 de Apple

El chip T2 de Apple integra varios de los controladores que gestionan muchas de las características de los nuevos Mac como por ejemplo algunos componentes del sistema como la señal de imagen, audio, SSD, etc. Pero además, incluye muchas mejoras orientadas a la seguridad como Secure Enclave (que protege los datos del TouchID o Secure Boot para la gestión de arranque del equipo. Con este nuevo documento del que vamos a hablar ya comenzamos a obtener una nueva y mejor visión de su funcionamiento general.
En este primer paper de DUO (ahora adquirido por CISCO) ya se explicaba en detalle la arquitectura de los iMac Pro de finales del 2017 y los MacBook Pro de 2018 y su relación con el chip T2 incluyendo el ya mencionado Secure Boot y el cifrado de los discos. En este otro whitepaper, esta vez estaba centrado en Secure Boot donde también se publicaba la preocupación que el chip T2, ejecutando BridgeOS, podría ser vulnerable a algún tipo de ataque de larga duración.

Figura 1. AES crypto engine dedicada integrada en los chips T2. Fuente.
Finalmente, aparece este nuevo paper a raíz de esa preocupación por los servicios expuestos por BridgeOS. La única forma de averiguarlo es entendiendo en detalle como macOS se comunica con el chip T2, conocer los servicios e identificar la capa de transporte además de descifrar los protocolos utilizados. Ese es justo el objetivo del documento el cual tiene el siguiente contenido:

01. Introduction
02. RemoteXPC
03. Exposed T2 Services
04. Communication Transport
05. Decoding Message Layers
06. XPC Wrapper Fields and Behavior
07. XPC Object Decoding
08. Exploring The Sysdiagnose Server
09. Conclusion
010. Tooling

La investigación se centra en  XPC (un método de comunicación entre procesos  a bajo nivel) ya que es el mecanismo con el cual macOS se comunica con el chip T2. No hay mucha documentación sobre cómo funcionan las comunicaciones (y los mensajes que procesa) XPC  y además parece que T2 utiliza incluso una variante del mismo.  Utilizando este canal de comunicaciones a bajo nivel, se analizan los paquetes del tráfico de red entre el cliente macOS y el chip T2, llegando incluso a poder ofrecer alguna que otra funcionalidad extra.

Figura 2. Campos del XPC Wrapper. Fuente
Una vez entendido el funcionamiento de la comunicación básica entre el chip T2 y macOS y leer sus mensajes, la parte final (punto 08) se enfoca en algo mas interesante, crear nuestros propios mensajes e interactuar directamente con el chip T2. Esto se realiza con el comando sysdiagnose -c el cual permite generar ejemplos de tráfico de red. Las arquitecturas sobre la cual se ha realizado la investigación son los MacBook Pro de finales de 2017 y el Macbook Pro de 2018.
Un interesante y profundo paper que descifra algunos de los misterios del complejo chip T2 el cual ya está integrado prácticamente en todos los nuevos dispositivos Apple. Lectura muy técnica a la vez que recomendable.

Powered by WPeMatico

Gustavo Genez

Informático de corazón y apasionado por la tecnología. La misión de este blog es llegar a los usuarios y profesionales con información y trucos acerca de la Seguridad Informática.