29 de maig de 2007

resource:// i accedir als arxius de l'ordinador, nova vulnerabilitat

Actualitzat el 30 de maig
resource:// és un comandament que permet navegar pels arxius de l'ordinador escrivint una adreça al navegador. És semblant a file://, però permetent explotar-ho des d'una web.

resource://gre/greprefs/security-prefs.js
Aquest codi anterior permet llegir l'arxiu security-prefs.js de la carpeta d'instal·lació del Firefox (en un Windows), tan sols escrivint-ho a la barra d'adreces.

Escrivint el codi ../ o ..\ es podria navegar per tots els arxius de l'ordinador perquè aquests codis el que permeten és pujar de directori.*

*Per comprovar-ho dirigiu-vos a qualsevol carpeta, a la barra on hi ha la ubicació afegiu-hi ..\ (Windows) o ../ (Linux). Veureu que al pulsar Enter anireu un directori amunt.

Mozilla ja va preveure aquesta possibilitat i va blocar navegar amb aquests dos codis. El que no va tenir en compte és que es poden substituir per ..%5C (Windows) o per ..%2F (Linux). Així escrivint una simple adreça a la barra de direccions es pot accedir a tots els nostres arxius sense que el Firefox ho pugui aturar.

Per fer la comprovació escriviu a la vostra barra d'adreces:
resource:///..%5C..%5C (Windows)
resource:///..%2F..%2F (Linux)
Així accedireu als arxius del vostre ordinador situats dos directoris amunt del de la instal·lació del Firefox. Podeu veure com passa a l'Ubuntu:



En resum, aquesta vulnerabilitat no permetria que un codi JavaScript l'executés, però si algun altre recurs que utilitzés resource:GRE o des d'una extensió. Paral·lelament no seria possible que des de Internet aconseguissin els nostres arxius; podrien, això sí, penjar el navegador o fins i tot el sistema operatiu manipulant alguns fitxers. També es podria explotar des d'un arxiu .zip.

Ja està registrat a Bugzilla: 367428(en).

Aquesta vulnerabilitat afecta al Firefox 2.0.0.3 i moltes versions anteriors (es pot veure la llista aquí(en)); i hi haurà una sol·lució parcial pel Firefox 2.0.0.4. Mozilla en tenia constància des del gener. Sembla ser que per a Windows ja hi hauria sol·lució però no per a Linux i Mac. Actualment l'única manera d'estar segur seria amb l'extensió NoScript(en) ben configurada.

Es pot trobar una demostració d'un codi aprofitant aquesta vulnerabilitat aquí(en).

Cap comentari:

Publica un comentari a l'entrada