Microsoft Vista “User Account Control”: autenticazione o approvazione?

Prendo spunto da un articolo di John C. Welch su InformationWeek, segnalatomi da Marina, per affrontare una volta di piu la tematica della sicurezza nell’ambito dei sistemi Microsoft Windows, ed in particolare il nuovo e “rivoluzionario” sistema UAC (User Account Control) introdotto con Windows Vista.

Due parole sull’articolo citato vanno comunque spese. Si tratta di un interessante analisi comparativa tra le funzionalità di Microsoft Windows Vista e quelle di Apple MacOS X, condotta su diversi livelli, incentrandola in particolare sull’usabilità dell’interfaccia grafica, sull’immediatezza del ricavare informazioni, ma anche sulle politiche di aggiornamento delle due aziende.

Non voglio soffermarmi oltre su questi aspetti, piu che approfonditamente trattati nell’articolo, salvo per dire che non mi sarebbe dispiaciuto che in quella comparazione fosse stato affiancato ai due anche un sistema desktop GNU/Linux, come potrebbe esserlo l’ormai onnipresente Ubuntu Linux. Sarebbe certamente uscita sconfitta dalla comparazione con l’interfaccia grafica di MacOS X, a detta di tutti la migliore attualmente sul mercato, ma mi pongo serie domande rispetto a quella di Windows Vista. Sorvoliamo.

Quello su cui voglio incentrare questo post, è (come si evince dal titolo) il “nuovissimo” UAC (è infatti il già noto LUA, Limited User Account), abilitato di default da Microsoft in tutte le versioni del nuovo Windows Vista (alla cui messa in sicurezza ha collaborato anche la NSA).

Si tratta di un sistema che Microsoft spaccia come “la soluzione” a tutti i problemi di sicurezza che hanno caratterizzato Windows XP, che dovrebbe consentire finalmente di introdurre nei sistemi di Redmond un vero sistema di Privilege Separation. Grazie a questo “nuovo ed innovativo” sistema infatti, un utente non privilegiato di Windows Vista potrebbe “innalzarsi di livello”, ottenendo cosi le capacità di eseguire quelle operazioni che necessitano dei privilegi di amministrazione, quali l’installazione di software o la modifica della configurazione di sistema.
Tralasciando per il momento il fatto che questa “tecnologia innovativa” è presente nei sistemi unix praticamente da quando unix è stato inventato, 40 anni fa, la soluzione del problema fornita da Microsoft con questa implementazione sembra portare piu problemi che effettivi risultati.

La prima cosa che va detta, è certamente che il grande problema di Windows XP non stava nella Privilege Separation. Se quando viene rilevato un bug del sistema operativo tale da consentire un accesso amministratore da remoto, e questo bug rimane non patchato anche solo per alcune settimane (cosa che è capitata piuttosto di frequente, con XP), ci sono pochi LUA o UAC che tengano, il sistema è vulnerabile.

Oltretutto, oggi gran parte degli worm in circolazione non hanno bisogno di installarsi o di modificare alcun tipo di configurazione di sistema, e il trovarsi di fronte ad un corretto uso della Privilege Separation non farà altro che indurre i malware-writers ad evitare questo tipo di implementazioni (senza contare che una analisi condatta da Symantec sul sistema UAC ne ha già messo in risalto una serie di problematiche implementative che lo rendono di fatto inutile allo scopo preposto).

Infine, la malsana idea di consentire l’installazione di controlli ActiveX senza bisogno dei privilegi di amministratore (e quindi bypassando di fatto il sistema UAC) rende ancora piu inutile la sua introduzione.

Ma la cosa piu importante da dire, è che Microsoft ha completamente toppato il target. Infatti non si tratta di un sistema di “autenticazione”, ma di un sistema di “approvazione”. L’utente che infatti volesse installare un software, necessitando dei privilegi di amministrazione, si troverebbe di fronte ad una finestra come questa:

Finestra di autorizzazione UAC

Finestra di autorizzazione UAC (foto: InformationWeek)

Popup, richiesta di approvazione, tasti “Continue” e “Cancel”, codice incomprensibile e sistema completamente bloccato fino alla chiusura di questo popup. Nessuna richiesta di password, nulla di nulla. Chiunque abbia accesso al sistema, potrà consentire l’operazione. Perchè? Era cosi difficile introdurre una password da digitare? Inoltre la mancanza di password rende questo popup solo un’altro di quei fastidiosi popup che Windows XP prima e Windows Vista poi, continuano a proporre a ripetizione, inducendo l’utente a sviluppare meccanismi di risposta automatica: alla terza volta che appare, quale sarà il gesto istintivo dell’utente? Hop, click su “Continue”, cosi posso continuare a lavorare.

Mi chiedo allora: la tanto decantata “sicurezza” dei sistemi Windows con l’avvento dell’innovativo Vista, deriva dall’uso dell’UAC? No, perchè nel qual caso la situazione sarà ancora piu preoccupante che con Windows XP, in quanto questo meccanismo di risposta istintiva si proietterà come un tornado sui popup di qualsiasi tipo, inclusi quelli che spesso e volentieri gli utenti senza blocca-popup si vedono apparire sul Web, con conseguenze che non oso neppure immaginare…

Questo, da parte di Microsoft, mi sembra un suicidio solo di poco inferiore a quello dell’idea che per proteggere i contenuti digitali sotto DRM, un driver di periferica (quello della scheda video) venga automaticamente disabilitato (o ridotto di funzionalità) a fronte di un bug che consenta un accesso non verificato a questi contenuti, in attesa che il produttore rilasci una versione aggiornata di questo driver in modo tale da risolvere il problema di sicurezza.
Ora voi vi immaginate, oggi, NVidia che rilascia un driver per una scheda TNT2 Riva di 5 anni fa, perchè un paio di aziende hanno tutti i monitor inchiodati a 640×480 in quanto il driver della citata scheda video potrebbe consentire un accesso non autorizzato al contenuto di un mp3 protetto da DRM?

Non ho parole…

Annunci

3 pensieri su “Microsoft Vista “User Account Control”: autenticazione o approvazione?

  1. Paperino

    Questa è la finestra tipica che ti appare quando ti logghi come Administrator. Se ti loggassi come utente normale (pratica consigliabile) ti comparirebbe la finestrella di richiesta della password di Administrator. Di più: c’è un’opzione, che per motivi di usabilità è normalmente spenta, che ogni volta che c’è una richiesta di elevation prima della conferma/password il sistema richiede la pressione dei tasti CTRL+ALT+DEL: opzione che sicuramente piacerà ai più paranoici.
    A differenza di Linux, che ha una implementazione molto simile, non c’è il superbit: da questo punto di vista (Vista :)) l’implementazione può considerarsi “nuova”. Una volta elevato se hai necessità di rilanciare la stessa applicazione le credenziali ti vengono richieste di nuovo: in questo caso si è preferito un po’ di sicurezza in più.
    Nel mondo di Windows la backward compatibility è sacra: non siamo Apple che si può permettere di rompere il 90% delle applicazioni passando da una versione all’altra (per non parlare degli sviluppatori) per cui ogni misura che può incidere notevolmente sulla usabilità/compatibilità viene attentamente pesata. A tale riguardo sono da incorniciare questi due post di Allchin (http://windowsvistablog.com/blogs/windowsvista/archive/2007/01/23/security-features-vs-convenience.aspx) e Russinovich (http://blogs.technet.com/markrussinovich/) che spiegano un po’ della filosofia dietro queste scelte che possono sembrare opinabili.
    In quanto al driver TNT2 Riva, sei convinto che ci si possa installare Vista in first place? 🙂

    Rispondi
  2. alt-os Autore articolo

    Ciao Paperino 🙂
    Mi aspettavo di beccare una tuo commento a questo post, prima o poi 😛
    In realtà la soluzione del UAC mi piace. Almeno mi piace piu di quello che c’era in XP. Il problema rimane nell’educazione degli utenti, che non devono usare il sistema come amministratori, cliccare “si” su qualsiasi cosa appaia loro davanti, e via dicendo.

    Di questo non si può certo incolpare Microsoft (oggi). Il mio personale punto di vista, poi, è quello che l’accesso come utente non privilegiato andrebbe impostato di default…

    Comprendo poi sicuramente il problema della retrocompatibilità. Capisco benissimo e condivido. Solo a volte, una “discontinuità” può giovare a molti aspetti. Tra XP e Vista il salto è importante, per molti vorrà dire nuovo hardware… non sarebbe stata una buona occasione per modificare qualcosa in piu?

    Rispondi
  3. paperino

    Un paio di note:
    non mi sembra che neanche Ubuntu usi LUA di default (oppure peggio ancora assegna la stessa password sia a root che all’utente). Ho l’impressione che alla fine sia una questione di usabilità.
    Tra l’altro l’elevation OTS non garantisce security boundaries per cui alla fine non c’è tutta questa “sicurezza” in più a discapito dell’usabilità. Vedremo fra un paio d’anni quando i più importanti ISV si saranno adeguati cosa succede

    Rispondi

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...