ActiveX Kill Bit: disabilitazione selettiva degli ActiveX in Internet Explorer

Come sapete, le funzionalità di Internet Explorer possono essere estese utilizzando dei componenti aggiuntivi, gli ActiveX, che possono essere sviluppati da Microsoft o da terze parti.

Come ci ricorda Feliciano,

[...] gli ActiveX hanno da sempre rappresentato una sorta di tallone di achille per Internet Explorer per un motivo molto semplice: di fatto esprimono l'eterno, delicato, equilibrio da raggiungere tra ricchezza di funzionalità ed esigenze di maggiore sicurezza

  • gli ActiveX sono di fatto dei componenti pensati per estendere le funzionalità del browser e quindi per arricchirlo: la loro esistenza ha di fatto avvantaggiato tutto il mercato delle aziende che sviluppano software per il web...
  • d'altra parte incorporare nel tuo sistema un componente sviluppato da una parte terza su cui Microsoft non può effettuare un controllo di qualità non è il massimo dal punto di vista della sicurezza: ...ma il modello è nato quando la sicurezza non era una preoccupazione riconosciuta fuori dalle università [...]

Nel corso degli anni Microsoft si è impegnata per aumentare la sicurezza del Sistema Operativo riducendo anche i rischi dovuti agli ActiveX, introducendo ad esempio in Windows Vista e Windows Server 2008 il "Protected Mode" di Internet Explorer: una modalità che sfrutta il "Mandatory Integrity Control" di Windows Vista e Windows Server 2008 e fa girare Internet Explorer 7.0 con un set di permessi e di privilegi estremamente ridotto all'interno del sistema. (Se volete approfondire questi argomenti, vi consiglio di vedere la sessione "Le novità del Kernel di Windows Server 2008" e scaricare da qui la presentazione.)

Come ci ha illustrato Feliciano, Internet Explorer 8.0 avrà altre nuove funzionalità di sicurezza, che andranno a ridurre ulteriormente il rischio dovuto all'installazione e all'utilizzo degli ActiveX, abilitando la "Data Execution Prevention" anche per Internet Explorer 8.0 e gli ActiveX e gli Add-on da lui caricati, riducendo il rischio di attacchi buffer overrun, e ad esempio limitando l'installazione degli ActiveX all'interno del profilo del singolo utente o autorizzandone l'utilizzo solo in particolari siti.

Per ridurre il rischio di attacchi (soprattutto se si utilizza Internet Explorer 6.0 o Internet Explorer 7.0 senza il Protected Mode) a volte è necessario disabilitare alcuni ActiveX con problemi di sicurezza particolari. Internet Explorer: Disabilitazione ActiveXAd esempio, il Security Bulletin MS08-23 contiene le indicazioni per la disabilitazione dell'ActiveX "Yahoo! Music Jukebox".

Un singolo utente può disabilitare un controllo ActiveX dalle opzioni di Internet Explorer. Ad esempio in Internet Explorer 7.0 è possibile entrare nelle Opzioni, Programmi, Gestione add-on, e da lì è possibile disabilitare o disinstallare i singoli controlli.

Se pensiamo però ad uno scenario aziendale, non è pensabile di effettuare questa operazione in modo manuale su tutti i pc, ma è necessario utilizzare le Group Policy per gestire la configurazione di Internet Explorer in modo centralizzato.

Tramite Group Policy un amministratore di rete può definire le impostazioni di sicurezza di Internet Explorer, inserire dei siti web tra i "Trusted Sites", impedire agli utenti di modificare le impostazioni di sicurezza del browser e così via. In particolare, per quanto riguarda gli ActiveX, è possibile disabilitarli in modo selettivo dal registry, utilizzando il "Kill Bit".

Cos'è il "Kill Bit"?

Ogni controllo ActiveX ha un identificatore univoco associato, il CLSID e, per ciascun controllo esiste anche una chiave nel registro di sistema, sotto "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility", identificata dal CLSID.

Internet Explorer ActiveX Kill Bit 

I Kill Bit sono i valori che la chiave "Compatibility Flags" può assumere. In particolare, conoscendo il CLSID associato ad un controllo ActiveX, è possibile disattivare il controllo ActiveX stesso,  impostando la chiave "Compatibility Flags" al valore HEX 400 (valore DEC 1024).

Un amministratore di sistema, una volta che ha a disposizione il CLSID di un controllo ActiveX (ricavato ad esempio da un Security Bulletin) può utilizzare gli Administrative Templates in una Group Policy per configurare il Kill Bit nella chiave di registry corrispondente, disattivando così il componente ActiveX su tutte le macchine in modo centralizzato.

Ovviamente, anche un singolo utente può ricorrere alla modifica del Kill Bit per la disattivazione di un controllo ActiveX, ma il suo utilizzo è pensato proprio per facilitare questa operazione in scenari con più computer.

Per chi è interessato all'argomento, consiglio questi approfondimenti:

Renato