Header Ads

Header ADS

Subestimando a #Javascript III - Localmente

En muchísimos lugares en el día de hoy podemos encontrar accesos de WiFi totalmente gratuitos, identificados en muchos Bares y demás lugares, si bien esto es algo normal, también existen esas conexiones que aparentan estar mal configuradas y permiten el acceso publico a internet, a todos nos paso en algún momento que cuando buscamos una red WiFi encontramos que el vecino no requiere contraseña para usar internet.

¿ pero el vecino, es realmente quien creemos ?
¿ y que pasaría si algún usuario malicioso tomase control del WiFi al que nos conectamos habitualmente ?
¿ como esto puede afectarnos en relación a Javascript ?

Alcance de Javascript

Como dijimos en los artículos anteriores de "Subestimando a Javascript I" y "Subestimando a Javascript II – NSA National Security Agency", Javascript es un lenguaje que correctamente usado puede dotar de vida a nuestros websites/webapps, pero usándolo incorrectamente, puede permitir que empresas externas tengan posibilidades de espiar nuestros usuarios, robar credenciales de acceso, cambiar la forma en que se ve nuestro sitio, etc.

Atacando de local(host)

Ahora bien, sabemos que internet es una red de redes, y entre nuestra computadora de escritorio y Google hay mas de una conexión, esto decanta en que cuando nos conectamos a internet desde un WiFi publico, confiamos 100% en que todo el contenido viene de internet y no de otro lugar, para eso se usan diversos protocolos que nos ayudan a verificar todo esto, un ejemplo de ello es HTTPS (http://en.wikipedia.org/wiki/Https
El caso claro en relación a Google Analitics radica (otra vez) en el uso de Javascript externo y como esto puede ser aprovechado ahora por el dueño del WiFi.

Nuestro pequeño Google

Supongamos que montamos nuestro propio WiFi y este a su vez también monta su propio DNS (http://en.wikipedia.org/wiki/Dns).
Cuando un website/webapp que usa Google Analytics carga el archivo ga.js, casi siempre es mediante HTTP (http://en.wikipedia.org/wiki/Http), que no verifica de ninguna manera la veracidad del archivo, por lo cual, si nosotros inyectásemos un servidor que se hace pasar por google-analitycs.com y en el montásemos un webserver (http://en.wikipedia.org/wiki/Webserver) que brinde un archivo ga.js, con esto tendríamos el mismo nivel de control que tiene Google sobre el website/webapp afectado, pero para toda la gente que se conecte a nuestro WiFi Cabe destacar que este ataque se puede realizar a todo aquel archivo Javascript vinculado externamente (nos haríamos pasar por esos servidores) y con ataques mas avanzados podríamos montar un servidor que trabaje como Proxy (http://en.wikipedia.org/wiki/Proxy) de estos sitios y modificar solamente lo que buscamos en el momento que lo buscamos para pasar desapercibidos.

Impacto

Como explicamos en el articulo anterior, el impacto es grande, solo que esta restringido a quien se conecte a nuestro WiFi, claro está que con esto mostramos que no solo un atacante con un WiFi puede concretarlo sino también un proveedor de internet y el impacto seria a una escala nacional.

Conclusiones 

Sitios de gobierno pueden ser solo una parte del abanico de opciones atacables en esta modalidad, sitios privados y aplicaciones web en cualquier ámbito son los afectados, tengamos en cuenta que muchas veces este tipo de ataques pueden estar dirigidos por intereses de espionaje industrial, tintes políticos o simplemente un adolescente con ganas de molestar.

este articulo es republicado, la version original fue publicada el 23 de Octubre de 2013

No hay comentarios.

Con tecnología de Blogger.