Monday, September 10, 2007

NoScript: Firewall para Scripts en el WWW

JavaScript, Java y Flash tienen una cosa en común: ejecutan código que proviene de un sitio remoto en nuestra computadora. Supuestamente estas tecnologías no deberían leer y escribir código en nuestro disco duro, tampoco interactuar con el Sistema Operativo u otras aplicativos. En teoría con estas tecnologías se puede ejecutar un ataque que aprovecho vulnerabilidades de l sistema, escalar privilegios, buscar puntos de entrada en el sistema (holes).

Se navega por cientos de páginas de Internet y la mayoría utiliza una de estas tecnologías y no nos damos cuenta de lo que se ejecuta. El addon NoScript permite a los usuarios de Firefox navegar por Internet de forma seguro ya que solo se permite la ejecución del código de JavaScript, Java y Flash, en las páginas que le permitimos.

NoScript maneja la misma filosofía del firewall (o la que se debería manejar) la cual es de bloquear todo y permitir solo lo que deseamos permitir. Esta filosofía es evidente gracias a la opción de NoScript Deny Scripts Globally, que bloquea todos los scripts. Después cuando se visita una pagina y confiamos en esa página, entonces hacemos clic en la opción allow pagina.com y todo los scripts que el dominio pagina.com ejecuta. Así mismo la pagina también será adicionada a la lista de trusted sites (sitios confiables). Si no estamos seguro entonces podemos probar utilizar la opción temporally allow pagina.com, lo que permite la ejecución de scripts por mientras que Firefox este abierto, pero no estará ingresado en la lista de trusted sites. Así que al cerrar todas las instancias de Firefox se deja de permitir los scripts en esa pagina.

Los creadores de NoScript continuamente pasan creando actualizaciones y cada vez que hay una nueva Firefox nos avisa. Me ha ocurrido que el mismo día he tenido dos actualizaciones.

NoScript tambien viene con varias opciones divididas en cinco tabs: General, Whitelist, Appearance, Notifications, Advanced. En General encontramos opciones generales sobre el programa como ser permitir todos los scripts, como tomar las paginas si por dominio, con www o http.


En Whitelist, escribimos todas las paginas y/o dominios que estan permitiremos ejecutar código. Podemos escribirlos uno por uno e ingresarlos o crear un archivo de texto con todos los dominios e importarlo. Además con el export podemos hacer un respaldo de nuestra lista, por si deseamos importarlo en otra computadora o si formateamos nuestro sistema podemos cargarlo otra vez.

En Appearance controlamos la apariencia del programa en la barra de firefox así como el menú.



En Notifications configuramos como deseamos recibir los mensajes de que un dominio fue bloqueado, si deseamos un sonido. También podemos seleccionamos si deseamos bloquear XSS. Cross site scripting (or XSS) en resume esta vulnerabilidad permite al un atacante inyectar código malicioso de un sitio en otro sitio diferente. Si desean leer sobre ejemplos y más información puede ver el link anterior de XSS y conocer más. También pueden visitar el FAQ de noscript y conocer más del tema.


En Adavance están las opciones avanzadas, donde se sigue con el tema de XSS. Aquí podemos habilitar toda la proteccion de XSS. Tambien configurar que sera permitido de los sitios que están en la whitelist o trusted y que deseamos bloquear o permitir de los sitios Untrusted. Esto ultimo permite al usuario decidir que define a un usuario Trusted y a un usuario Untrusted.


De regreso al Blogging

Después de pasar “turistiando” por dos semanas en Utila, occidente, norte de Honduras y cinco dias después mudarme de continente, puedo regresar al blogging. Espero que crear interes en mi blog con los posts que vienen. El primero es de un programita que es parte de mi arsenal para navegar en Internet. Se suma a SiteAdvisor (ver uno de mis primero posts para mas sobre el tema), el segundo NoScript y todos se integran con Firefox. Mi siguiente post es ne NoScript, un programa que e utilizado ya por mucho tiempo y me siento muy satisfecho. Creo que sin el no podría navegar por Internet, es como mi firewall para scripts.