¿Se puede conectar un dispositivo JTAG a un sistema en ejecución?

3

JTAG, o Joint Test Action Group, es un estándar para la depuración. Muchas placas base modernas, tanto en dispositivos móviles como en computadoras de escritorio y estaciones de trabajo tienen puertos JTAG. Permiten controlar una CPU como un títere, principalmente para la depuración. He escuchado información contradictoria sobre el uso de JTAG. Por un lado, he escuchado que los puertos JTAG deben insertarse, luego se reinicia la CPU para que funcione. ¿Es esto cierto o puede usarse JTAG mientras el sistema está encendido y en ejecución? Si se puede usar mientras el sistema está en ejecución, ¿qué mitigaciones existen para evitar que se use como un vector de ataque para secuestrar un sistema en ejecución? Tengo una curiosidad especial por el uso de JTAG en las placas base de los servidores modernos con CPU Intel, no tanto en los teléfonos móviles. Sé que tiene que firmar un NDA para acceder a las herramientas necesarias para usar su puerto JTAG, pero espero que esta pregunta no esté cubierta por tales restricciones.

En otras palabras, ¿admite JTAG la conexión en caliente para controlar una CPU como PCIe, o es más como una PCI donde tienes que enchufarla y reiniciar el sistema con ella insertada para que la depuración (y los ataques) funcione?

    
pregunta forest 24.04.2016 - 05:39
fuente

1 respuesta

1

En realidad, en los procesadores modernos, el acceso a JTAG y el nivel de servicio que se puede alcanzar con JTAG se controlan mediante fusibles OTP dentro del SoC, o en el caso de procesadores Intel con parches para la CPU RTL.Así, en sistemas de desarrollo, no fusionados , es totalmente posible conectarlo a un sistema en ejecución con un sistema JTAG como T32. Pero en los sistemas de producción no veo un problema de seguridad.

    
respondido por el juansolsona 05.08.2016 - 08:01
fuente

Lea otras preguntas en las etiquetas