El peligro de AdBlock: los bloqueadores de anuncios permiten ejecutar código en nuestro navegador
Un investigador ha revelado un posible peligro de peligro de AdBlock: este y otros bloqueadores se pueden usar para ejecutar código.
16 abril, 2019 12:44Noticias relacionadas
Para muchos internautas, contar con un bloqueador de anuncios es imprescindible hoy en día. En la mayoría de los casos, es simplemente porque no quieren ver la publicidad que tanto se ha extendido en la Web; para páginas como Omicrono, esta publicidad es vital para sobrevivir y seguir manteniendo la web, pero afortunadamente cada vez hay más gente que desactiva el bloqueador en las páginas a las que quiere ayudar.
El otro gran motivo es la seguridad. Estos bloqueadores son extensiones que, una vez instaladas en el navegador, se basan en unas listas para indicar al navegador qué es lo que no debería cargar. Así, por ejemplo, si entramos en una página y esta indica que quiere conectarse a un servidor conocido por espiar al usuario, la extensión puede bloquearlo.
La última función de AdBlock Plus puede poner en peligro a los internautas
Sin embargo, y como cada vez que instalamos algo en nuestro ordenador o navegador, estas extensiones también pueden abrir un vector de ataque diferente; es algo que ha descubierto el investigador de seguridad Armin Sebastian. Su estudio se ha centrado en el funcionamiento de tres bloqueadores muy populares: AdBlock, AdBlock Plus y uBlock.
Esas tres extensiones tienen en común que usan un nuevo opción en los filtros, implementado inicialmente por AdBlock Plus pero luego adoptado por AdBlock y uBlock (ambas pertenecen a la misma compañía). Es gracias a esta opción que un atacante podría ejecutar código en nuestro navegador; saltándose las protecciones que normalmente tienen gracias al acceso que estas extensiones tienen.
El problema está en la opción $rewrite, que fue implementada el pasado julio de 2018. El propietario de una lista de bloqueo puede usar esta opción para reemplazar peticiones realizadas por el navegador para que, en vez de eso, cargue otra dirección URL diferente. En un principio, esta función se implementó para eliminar el rastreo, redirigiendo las peticiones de tal manera que sea inocuo para el usuario; incluso cuenta con una medida de seguridad, que obliga a cargar sólo contenido que venga del mismo dominio que estamos visitando.
El peligro de AdBlock, ejecutar código en nuestro navegador
Sin embargo, eso no significa que no se pueda aprovechar, como ha demostrado Sebastian. El truco está en usar páginas que permiten la carga de código usando XMLHttpRequest y que no restrinjan las redirecciones. Esta página hará de intermediario para que el atacante pueda ejecutar código en el navegador sin restricciones.
Sebastian ha usado Google Maps como ejemplo, pero hay muchas más páginas; si el atacante sabe qué páginas solemos visitar, el ataque será mucho más sencillo, por supuesto. El ataque implica modificar la lista que usan los bloqueadores para bloquear o redirigir peticiones; por ejemplo, si alguien consigue control sobre estas listas.
Este exploit permitiría a un atacante con control sobre estas listas (que la mayoría de usuarios ni siquiera sabe que existen) ejecutar código en nuestro navegador sin limitaciones. Google se ha desentendido de este problema, ya que aunque sus páginas pueden ser usadas para ejecutar este ataque, son las extensiones las que lo permiten.