Da qualche anno i chipset di Intel includono al loro interno dei Management Engine ovvero dei piccoli microprocessori che funzionano indipendentemente dalla CPU e dal sistema operativo. All'interno di questi Management Engine può essere eseguito software di vario genere.
Intel utilizza questa configurazione per tenere aggiornato il firmware dei propri chipset in modo che l'utente sia sempre al riparo da possibili minacce provenienti da bug del firmware. Ad esempio i Management Engine Intel montano di serie MINIX, un piccolo sistema operativo che è progettato per permettere al produttore di caricare i pacchetti per l'update del firmware.
Tuttavia capita spesso che dopo un certo periodo di tempo gli aggiornamenti smettano di arrivare perché il costruttore smette semplicemente di svilupparli. Per questo motivo la Electronic Frontier Foundation ha più volte chiesto ad Intel e ad altri produttori che adottano sistemi simili di permettere all'utente di disabilitare il Management Engine.
In questi giorni si è tenuta l'Embedded Linux Conference Europe e Ronald Minnich, software developer di Google, ha tenuto un'interessante conferenza dedicata ai Management Engine illustrando le funzionalità di MINIX: l'obbiettivo finale è quello di sostituire MINIX con un sistema Linux cosi da poter evitare che il Management Engine diventi una porta d'accesso al sistema per utenti malintenzionati.
L'uso di sistemi come MINIX per i Management Engine solleva numerose questioni morali, se da un lato è giusto da parte di Intel implementare sistemi che assicurino l'aggiornamento del firmware, appunto per una questione di sicurezza, è anche vero però che tali piattaforme dovrebbero essere quanto più trasparenti possibili e non occultate, sopratutto l'utente dovrebbe averne sempre il pieno controllo.
All'interno di MINIX sono avviati di solito diversi servizi tra i quali:
- TCP/IP networking stacks (4 e 6);
- File systems;
- Drivers (disk, net, USB, mouse);
- Web servers.
Inoltre MINIX ha potenzialmente accesso a tutte le password locali, alla Rete ed è possibile che rimanga attivo anche quando la postazione è spenta.
L'architettura X86 divide i programmi in vari "rings" ovvero anelli di privilegi. A seconda della sua posizione nella scala gerarchica un programma gode di una certa dose di permessi per accedere alle risorse e all'hardware del sistema. I normali programmi stanno nel ring 3, i ring 1 e 2 di solito non vengono utilizzati, mentre il sistema operativo opera sul ring 0. I Bare-metal hypervisors, come ad esempio Xen, lavorano su ring -1, UEFI si trova su ring -2 mentre MINIX si trova sul ring -3, dunque ha più privilegi e accesso alle risorse dell'utente stesso.
L'utente non può vedere MINIX, non può controllarlo e sopratutto non può tenere informazioni segrete a MINIX. Quest'ultimo aspetto non interessa unicamente ai singoli utenti, ma anche alle grandi corporation che si affidano ad Intel per la propria infrastruttura.