
» continua
In queste settimane si è sollevata una polemica relativamente alle responsabilità relative a bug collegati con la scorretta gestione degli URI. In particolare, Juergen Schmidt, ricercatore presso Heise Security, ha fatto presente come secondo lui Internet Explorer 7 trasmetta URI non validi e potenzialmente pericolosi a Windows XP. In particolare, Schmidt ha spiegato come Internet Explorer 7 accetti da altre applicazioni URL contenenti il simbolo percentuale ("%").
Il carattere percento viene utilizzato in un meccanismo di codifica quando in un URI è necessario rappresentare un carattere che assume un significato speciale in determinati contesti e che quindi creerebbe problemi. Un punto esclamativo può essere codificato, per esempio, in %21, un apostrofo in %27, i due punti con %3A.
A causa di una lacuna nella gestione degli URI, diversi ricercatori hanno verificato come, ad esempio, utilizzando un URI contenente il carattere non valido % (mailto:test%../../../../windows/system32/calc.exe".cmd), l'applicazione "vulnerabile" esegua un comando non richiesto dall'utente (in questo caso verrebbe avviata la Calcolatrice di Windows). Interessate dal problema sono apparse applicazioni conosciutissime come Adobe Acrobat 8.1, Miranda 0.7 e Netscape 7.1.
Microsoft stessa ammette di aver scoperto un espediente che può essere utilizzato da parte di malintenzionati per compiere azioni potenzialmente dannose sul sistema dell'utente.
Che cos'è l'URI?
URI è acronimo di Uniform Resource Identifier: un indirizzo che, in forma
compatta, consente di identificare una qualsiasi risposta come una pagina web,
un documento, un'immagine, un indirizzo e-mail e così via. Gli URI sono
definiti utilizzando una specifica sintassi, facente riferimento all'uso di
differenti protocolli. URL (Uniform Resource Locator) e URN
(Uniform Resource Name) possono essere considerati sottoinsiemi di URI.
L'indirizzo http://searchsecurity.techtarget.it/ è un URI che identifica una risorsa - ovvero la home page di http://searchsecurity.techtarget.it/ - e che implica la possibilità di ottenere una rappresentazione della risorsa stessa (in questo caso una serie di tag HTML che consentono di comporre la struttura della pagina principale del sito) attraverso l'uso del protocollo HTTP.
Il termine "indirizzo Internet" in effetti non può essere definito in modo formale: viene solitamente utilizzato, per semplificare anche se non correttamente, come sinonimo per URL o URI e, generalmente, ci si riferisce all'utilizzo dei protocolli http: o https:.
Uno URN è un particolare URI che consente di individuare una risorsa mediante un nome, memorizzato in un particolare dominio denominato "namespace" (spazio dei nomi, appunto). Uno URN permette di riferirsi ad una risorsa senza dare informazioni sulla sua collocazione o sulla sua rappresentazione, differentemente rispetto a quanto visto con gli URL.
Uno URI si compone di più parti: uno schema che fornisce informazioni sul protocollo usato (ad esempio, http:, ftp:, mailto:) ed una serie di dati, aggiunti in successione, che dipendono dallo specifico schema. Sintassi e semantica di queste ultime informazioni sono determinate dalle specifiche dello schema che viene impiegato.
IANA, organismo che tra l'altro si occupa dell'assegnazione di indirizzi IP a livello mondiale, ha pubblicato lo schema dei vari URI.
Alcuni software possono utilizzare e registrare sul sistema altri protocolli utilizzando un proprio schema URI, ad esempio il callto: di Skype.
Quello degli URI "maligni", collegato all'utilizzo di una o più applicazioni che non ne prevedono un'adeguata gestione, è purtroppo destinato a diventare uno dei grimaldelli preferiti per aggressori e sviluppatori di malware.
