Autor: @RaulRenales
Es conocido que uno de los problemas de nuestra era es la perdida de privacidad que estamos sufriendo a medida que incorporamos las nuevas tecnologías en nuestro día a día. En este sentido mucha gente busca soluciones para no ofrecer sus datos o simplemente para poder obtener una dirección ip distinta por donde navegar de una manera mas anónima, allá cada uno con sus objetivos.
¿Que es TorBrowser?
Navegador Tor Browser en funcionamiento desde España, ofreciendo IP de Lituania. |
Tor Browser es un navegador gratuito de código abierto configurado para funcionar en la red Tor, en la que tus llamadas pasan encriptadas por varios servidores antes de salir a Internet. Es un poco más lento que Hotspot pero te da privacidad.
¿Porque quedaron usuarios de TorBrowser al descubierto?
Según se pudo comprobar tras el análisis del comportamiento del exploit, el trabajo principal de este era la recolección de direcciones IP reales y direcciones MAC de las maquinas para ser reenviadas a un servidor central sin tener conocimiento del uso que esta información puede llegar a tener. Se teoriza sobre el origen del exploit y se cree que tiene origen en una acción gubernamental.
¿Y esto que supone?
Pero .... ¿y esto de SVG como funciona?
Primero de todo definir que es SVG, un formato vectorial poco conocido pero muy útil para su uso online por su flexibilidad y por la capacidad de ofrecer gráficos con calidad. Este formato nos permite crar animaciones (SMIL Animation) utilizando lenguajes de programación muy conocidos como JavaScript o ECMAScript principalmente.
Una vez que nos decidimos a la creacion de esta animacion, podemos incluir el codigo javascript embebido en la imagen o utlizar lo de manera separada en un archivo externo, por ejemplo.
Para este ejemplo vamos a incluir el javascript dentro del SVG, por lo que el código quedaría mas o menos así:
<svg width="100%" height="100%" viewBox="0 0 100 100"
xmlns="http://www.w3.org/2000/svg">
<script type="text/javascript">
// <![CDATA[
function change(evt) {
var target = evt.target;
var radius = target.getAttribute("r");
if (radius == 15) {
radius = 45;
} else {
radius = 15;
}
target.setAttribute("r",radius);
}
// ]]>
</script>
<circle cx="50" cy="50" r="45" fill="green"
onclick="change(evt)" />
</svg>
Este ejemplo es muy sencillo y solo cambia el radio de una circunferencia al pulsar sobre ella, pero dentro de las etiquetas Script cabe todo lo que tu imaginación pueda programar, incluido el reenviar las direcciones ip de los usuarios de TorBrowser.
Si quieres ver el código funcionando y jugar un poco con el, puedes hacerlo en CODEPEN.
También os dejo un ejemplo de un SVG con el código totalmente embebido, de tal manera que no precisa de mucho mas que la ejecución de los eventos para ponerse en marcha:
http://apike.ca/media/svg/exampleJavascript.svg
Y con esto me despido, sondeare a ver si gusta esto del SVG para escribir algun articulo más con ejemplos algo mas jugosos.
Fuentes:
https://www.mozilla.org/en-US/security/advisories/mfsa2016-92/
http://apike.ca/prog_svg_jsanim.html
https://developer.mozilla.org/en-US/docs/Web/SVG/Element/script
Articulo relacionado:
https://insert-script.blogspot.com.es/2016/12/firefox-svg-cross-domain-cookie.html?m=1
No hay comentarios:
Publicar un comentario