Microsoft ActiveX



ActiveX è il nome della tecnologia sviluppata da Microsoft che rappresenta la naturale evoluzione della precedente OLE (Object Linking & Embedding) e risponde all'esigenza, molto avvertita, di disporre di un set di funzionalità esteso in grado di favorire la rapida realizzazione e distribuzione di documenti di carattere composito.

L'utilizzo di questa tecnologia rende possibile l'implementazione di particolari "controlli" in possesso di funzionalità specifiche i quali, una volta realizzati, possono essere letteralmente incorporati all'interno di altre applicazioni od ambienti differenti al fine di permettere lo sfruttamento delle loro caratteristiche tipiche.

Naturalmente, trattandosi di una tecnologia ormai consolidata, l'elenco delle applicazioni che garantiscono il completo supporto agli ActiveX è veramente ampio ed in questa lista non poteva di certo mancare il browser Microsoft Internet Explorer, fatto quest'ultimo che ha suscitato non poche perplessità a causa degli inevitabili problemi che l'uso degli ActiveX pone in termini di sicurezza.

In effetti l'impiego di questa tecnologia in un ottica distribuita come quella di Internet comporta, di fatto, lo scaricamento e l'esecuzione sul lato client di porzioni di codice senza che ciò si accompagni all'esistenza di meccanismi di sicurezza simili a quelli previsti, ad esempio, per le applet Java, con tutte le conseguenze negative che ne derivano nell'ipotesi in cui il codice sia stato volutamente confezionato in modo da svolgere operazioni dannose sul computer dell'utente.

Per comprendere al meglio le implicazioni di questo meccanismo ricordiamo che quando il browser si imbatte in una pagina Web contenente un controllo ActiveX, incorporato mediante l'uso dei tag <object></object> , per prima cosa verifica attraverso l'esame del registro di configurazione se il controllo è disponibile sul sistema locale: se esso risulta presente allora la pagina viene visualizzata con il contestuale caricamento del controllo nello spazio della memoria del browser e la successiva esecuzione del codice mentre, nell'ipotesi contraria, l'ActiveX viene scaricato ed installato seguendo le istruzioni presenti all'interno dello stesso tag <object>.

La debolezza intrinseca insita in questo automatismo ha spinto Microsoft ad introdurre dei correttivi individuati nell'adozione della tecnologia Authenticode che, in breve, permette agli sviluppatori di firmare i controlli attraverso l'uso della crittografia e la successiva validazione da parte di Internet Explorer e di un entità terza (in genere Verisign Corporation).

Attraverso questo ulteriore meccanismo gli utenti dovrebbero essere "assicurati" circa la genuinità della fonte da cui proviene un determinato controllo ActiveX ed impiegarlo senza remore ma, purtroppo, esiste anche il rovescio della medaglia, una scappatoia che consente di aggirare facilmente la procedura di controllo della firma da parte di Authenticode e consiste nell'abilitazione del flag cd. "safe for scripting".

In presenza di questo flag nessun tipo di avvertimento viene fornito quando l'ActiveX è eseguito nel contesto del browser web con la conseguente esposizione del sistema dell'utente a rischi di intuibile portata, considerevolmente aumentati dalla presenza di due fattori critici:

  • l'estrema facilità con la quale risulta possibile impostare il flag, considerato che, a tal fine, è sufficiente che il controllo implementi l'interfaccia IObjectSafety oppure che esso sia contrassegnato come "sicuro" nel registro di configurazione di Windows tramite l'aggiunta alle "Implemented Categories" della chiave 7DD95801-9882-11CF-9FA9-00AA006C42C4;
  • la circostanza data dal fatto che in alcuni casi i componenti sono in grado di eseguire operazioni "privilegiate" sul sistema locale come la lettura e la scrittura sul disco;

Naturalmente non sono mancate valide dimostrazioni della vulnerabilità insita nel trattamento dei controlli cosiddetti "safe" da parte di Internet Explorer e tra queste vanno citate principalmente quella di Georgi Guninski (http://www.guninski.com), relativa ai controlli Scriptlet.Typelib e Eyedog.ocx forniti con Internet Explorer 4 e versioni precedenti, ed un altra relativa invece al ben più recente controllo OUA installato di default insieme con la suite Microsoft Office 2000 (http://www.l0pht.com/advisories/ouahack/index.html).
Per entrambe le vulnerabilità la Microsoft ha rilasciato delle patch risolutive disponibili agli indirizzi http://www.microsoft.com/technet/security/bullettin/ms99-032.asp e

http://officeupdate.microsoft.com/2000/downloadDetails/Uactlsec.htm ma, purtroppo, va ricordato che questi rilasci risolvono soltanto i problemi specifici riscontrati con questi controlli e non pongono riparo ai possibili abusi che possono presentarsi per tutti gli altri ActiveX.

Ultimi articoli Sicurezza

Nmap: tecniche per evadere un firewall

Vediamo come sfuggire ai controlli di un firewall utilizzando Nmap.

Sfruttare vulnerabilità XSS con BeEF

Usiamo BeEF per automatizzare lo sfruttamento di vulnerabilità Cross...

Trojan Flashback: rimuoverlo da Mac OS X

Individuiamo e rimuoviamo il trojan Flashback da Mac OS X

Individuare vulnerabilità in Joomla con JoomScan

Usiamo JoomScan per verificare la sicurezza di Joomla e la presenza...

XSS: attacchi avanzati

Approfondiamo le vulnerabilità Cross Site Scripting analizzando...

Altri articoli

Guide Sicurezza

Guida SQL Injection con Sqlmap

Scopriamo se le nostre applicazioni web sono vulnerabili alle SQL...

Guida sicurezza applicazioni Web

Le tecniche di attacco più comuni, i metodi per verificare la...

Guida Sicurezza wireless

Quali sono i pericoli di sicurezza di una rete senza filo e quali...

Altre guide

Newsletter @Sicurezza

Ogni lunedì, direttamente nella tua e-mail: approfondimenti e bollettini su virus, vulnerabilità e sicurezza informatica.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Amministratore di Reti Windows Server 2008

11 Giugno 2012 a Milano
Disponibilità: 5 Posti

Nessun corso previsto