In tutte le moderne CPU intel è presente la tecnologia Intel’s Management Engine (ME). Alla conferenza Embedded Linux, un dipendente di Google ha rivelato che all’interno di ME è presente un intero sistema operativo, chiamato Minix, e che Google sta lavorando ad un modo per rimuoverlo.
La cosa divertente è che, vista la presenza di Minix su ogni sistema Intel, questo rende probabilmente il sistema operativo sviluppato da Tanenbaum il più distribuito al mondo. Tanenbaum ha anche scritto una lettera aperta ad Intel, in cui scrive che sarebbe stato cortese renderlo almeno partecipe della scelta di Intel.
La tecnologia ME è un sistema di livello hardware eseguito all’interno delle CPU intel, che consiste in un firmware con codice proprietario eseguito su un microprocessore apposito. Essendo un sistema chiuso e proprietario, non si hanno molte informazioni riguardo a ME. Non si sa esattamente neanche dove sia possibile trovare fisicamente il chip.
Il chip però, sembra avere accesso alla maggior parte dei dispositivi integrati nel circuito. Può inoltre accedere alla RAM di sistema usando DMA.
Queste ragioni però, non sono il motivo per cui Google vuole rimuovere ME dalle CPUs Intel. Codice a basso livello eseguito indipendentemente dal sistema è necessario per avere alcune feature come il network boot e il wake-from-USB. Questo tipo di firmware è infatti dato per scontato in hardware recente.
Ciò che preoccupa Google, è la complessità di ME. Ad esempio, ha destato l’interesse pubblico la presenza di una vulnerabilità all’interno di un’altra tecnologia di intel, Active Management Technology (AMT), che è un software che viene eseguito da ME. ME però, è un intero sistema operativo.
Ronald Minnich, autore del talk alla conferenza, ha evidenziato che il sistema operativo in questione è una versione chiusa del sistema operativo open-source MINIX. Il problema quindi, sono le conseguenze che derivano da questa scelta: la capacità di creare un web-server, un file system, drivers per accesso a USB e disco fisso etc. Non è chiaro se nella versione attualmente distribuita MINIX presenti queste capacità.
Il sistema operativo di ME, viene eseguito in parallelo con il sistema operativo installato ed in esecuzione, e con (probabilmente) la capacità di accedere alle stesse risorse hardware del sistema in esecuzione.
Nessun sistema è sicuro, e nessuno potrà mai esserlo: ci saranno sempre bugs e persone capaci di sfruttarle. Un (altro) sistema operativo non aggiornabile e nascosto nel nostro sistema, offre altre vie d’accesso secondario. Se un hacker trovasse un modo per caricare del codice malevolo all’interno di questo sottosistema, le possibilità sarebbero infinite. Inoltre, come sottolineato da Tanenbaum stesso nella sua lettera, speriamo che Intel abbia scritto patch e testato a fondo il sistema prima di distribuirlo visto che Minix è nato come progetto di studio e non come sistema operativo sicuro.