Occhio ai driver

Sicurezza

La bassa attenzione verso le problematiche di sicurezza dei programmatori delle utility software, che consentono d’interfacciare il sistema operativo con periferiche hardware, potrebbe in alcuni casi generare pericolose debolezze

Difetti come i buffer overflow in grado di generare pericolose vulnerabilità, e ormai quasi completamente eliminati dal codice delle applicazioni critiche e dai sistemi operativi, sembrano sopravvivere nel codice dei driver che normalmente accompagnano ogni periferica hardware. E’ per questo motivo che i fornitori di sistemi operativi e i produttori di hardware dovrebbero destinare maggiori risorse al controllo del codice che costituisce i device-driver distribuiti con Windows e Linux, alla ricerca di eventuali difetti. I programmatori di queste utility software sembrano seguire regole un po’ differenti rispetto a quelle comunemente utilizzate dai loro colleghi, che si occupano dello sviluppo di altre parti del sistema operativo. La loro attenzione è infatti dedicata al rispetto di altri standard che non siano quelli strettamente legati alla sicurezza del sistema. Inoltre, quasi sempre, lo sviluppo dei device-driver è affidato direttamente al produttore della periferica, introducendo così un elemento estraneo alla complessa struttura di un sistema operativo e al grande numero di componenti software che lo compongono. David Maynor un ricercatore del gruppo di analisi delle vulnerabilità Internet Security Systems’ X-Force ha dichiarato che il codice che compone i driver non è sicuro, e ad esserne colpiti non sono solo i sistemi Windows ma anche quelli Linux. Un controllo automatico del codice del kernel Linux 2.6.9. eseguito dal produttore software Coverity ha infatti verificato che, mentre la qualità complessiva del codice del sistema è sicuramente migliorata, più del 50 % dei difetti rilevati si concentravano nei device driver. Molti dei difetti emersi dall’analisi non impattavano direttamente sulla sicurezza del sistema, ma la percentuale registrata dava un’indicazione abbastanza precisa della qualità del codice di queste utility. I problemi di sicurezza legati ai driver non si limitano solo alle vulnerabilità dirette che possono introdurre nel sistema, ma anche ai possibili conflitti con applicazioni critiche che possono causare il blocco o il malfunzionamento dei server e dei sistemi nevralgici. E’ anche vero che un’applicazione di per sé sicura, se in conflitto con alcuni driver installati nel sistema può generare delle vulnerabilità sfruttabili. Inoltre, i difetti dei driver possono risultare più pericolosi di quelli che colpiscono le normali applicazioni poiché nella maggior parte dei casi appartengono allo stesso kernel. Inoltre, alcuni driver come quelli USB, quelli grafici o quelli audio hanno accesso diretto alla memoria DMA e potrebbero essere utilizzati per sovrascrivere la memoria di sistema e comprometterne il funzionamento. Non è un caso quindi che Service Pack 2, l’ultimo aggiornamento di Microsoft per Windows Xp, comprenda una funzione che può prevenire l’utilizzo delle vulnerabilità dei driver per attaccare il sistema. Conosciuta con l’acronimo DEP (Data Execution Prevention), questa funzione può impedire l’esecuzione di dati inseriti in memoria da codice maligno. I produttori hardware potrebbero quindi aggiungere il supporto a questa funzione nei loro driver aumentandone il livello di sicurezza. Un’altra soluzione che può essere adottata per diminuire il grado di rischio, potrebbe essere quella di scegliere solamente device-driver certificati e riconosciuti dal produttore del sistema operativo sul quale dovranno essere installati.

Autore: ITespresso
Clicca per leggere la biografia dell'autore  Clicca per nascondere la biografia dell'autore