Un dispositivo JTAG può essere collegato a un sistema in esecuzione?

3

JTAG o Joint Test Action Group è uno standard per il debug. Molte schede madri moderne, sia su dispositivi mobili che su desktop e workstation, hanno porte JTAG. Consentono a una CPU di essere controllata come un burattino, principalmente per il debug. Ho ascoltato informazioni contrastanti sull'uso di JTAG. Da un lato, ho sentito che le porte JTAG devono essere inserite, quindi il reset della CPU perché funzioni. È vero o JTAG può essere utilizzato mentre il sistema è acceso e in esecuzione? Se può essere utilizzato mentre il sistema è in esecuzione, quali attenuazioni ci sono per impedire che venga utilizzato come vettore di attacco per dirottare un sistema in esecuzione? Sono particolarmente curioso dell'uso di JTAG sulle moderne schede madri server con CPU Intel, non tanto sui telefoni cellulari. So che devi firmare una NDA per accedere agli strumenti necessari per utilizzare la loro porta JTAG, ma si spera che questa domanda non sia coperta da tali restrizioni.

In altre parole, JTAG supporta hotplugging per controllare una CPU come PCIe, o è più simile a PCI dove devi collegarlo e riavviare il sistema con esso inserito per il debug (e gli attacchi) per funzionare?

    
posta forest 24.04.2016 - 05:39
fonte

1 risposta

1

In realtà, sui moderni processori l'accesso JTAG e il livello di servizio raggiungibile con JTAG sono controllati da fusibili OTP all'interno del SoC, o nel caso di processori Intel con patch alla CPU RTL. So su sistemi di sviluppo, non fusi , è completamente possibile collegarsi a un sistema in esecuzione con un sistema JTAG come T32. Ma nei sistemi di produzione non vedo un problema di sicurezza.

    
risposta data 05.08.2016 - 08:01
fonte

Leggi altre domande sui tag