Buenas de nuevo.
Tras otro parón de publicar entradas, esta vez os voy a hablar sobre la navegación anónima (eso que tantos buscan y pocos encuentran) desde dispositivos móviles.
Todos los que de vez en cuando nos dedicamos a hacer auditorías, ingeniería inversa, hacking (de manera ética siempre, por supuesto)… hemos tenido siempre el temor (tal y como están las leyes actualmente es TEMOR con mayúsculas) a dejar «rastro» de nuestras actividades. Intentamos en mayor o menor medida ser discretos y dejar el menor rastro posible, y digo el menor porque no dejar ninguno, no es tarea fácil.
Tal vez os estaréis preguntando el por qué de no querer dejar rastro si, según lo que acabo de decir, lo estoy realizando de manera ética. Pues porque la ley ahora mismo te compara con un «terrorista» (de la red, pero terrorista) simplemente por escanear puertos, probar vulnerabilidades y demás cosas que, además, nos encanta hacer y probar.
La mayoría de las veces, cuentas con el beneplácito del propietario del sitio web, software o cacharro que en ese momento estés intentando destripar pero, y si no no sería divertido, alguna que otra vez… no lo tenemos.
Tal y como comentaba en la #Hack&Beers Huesca Vol. III, cuando más nos entretenemos y nos apetece probar cosas suele ser por las noches, cuando la familia duerme, todo está en calma y podemos dedicarnos a «la faena» sin interrupciones, sin prisa… y a según que horas (ahora mismo escribo esto a las 3:10 de la madrugada) no te apetece ni encender el portátil.
¿Qué hacemos entonces? Tirados en el sofá, jugamos desde el móvil o la tableta. Pero… ¿qué pasa con los «rastros» desde un smartphone o tableta normal? (sin rootear, sin proxys, sin distros chulas).
Veamos que aunque creamos que tenemos todo bajo control, siempre se nos puede estar escapando algo.
Empecemos pues la búsqueda del anonimato.
Lo primero que vamos a hacer, es comprobar nuestra IP actual, entrando en http://cualesmiip.com (aquí no importa el navegador usado).
Tal y como podemos ver, estoy conectado al wifi de mi domicilio y tengo asignada una IP de ONO que comienza por «85».
Empecemos a jugar… ¿qué es WebRTC?
Por decirlo de una manera rápida, WebRTC o «Web Real-Time-Communication» es una serie de configuraciones y protocolos imprementados en los navegadores que nos permiten, por ejemplo, realizar conexiones de videoconferencia sin la necesidad de instalar pluggins. (Se puede transmitir vídeo, audio…)
El problema es que a través de las citadas configuraciones y protocolos, podemos tener alguna fuga de información no controlada que un administrador «espabilado» puede utilizar para recabar datos sobre nosotros incluso sin que nos demos cuenta (como por ejemplo nuestra IP pública real, o incluso nuestra IP privada).
Además de WebRTC, también es posible averiguar las DNS originales de nuestra conexión aunque estemos utilizando VPN, por ejemplo. Ésto se debe a que ciertas solicitudes DNS siguen realizándose «por el exterior del túnel» VPN, siendo capaces de detectar las IP’s DNS de nuestro proveedor.
Si nos dirigimos a http://ipleak.net navegando con Chrome, veremos la siguiente pantalla.
Tal y como podemos ver, aparece nuestra IP pública («85»), mediante WebRTC nos devuelve la misma IP (correcto) pero ya observamos que nos devuelve la IP privada que tenemos asignada en ese momento en nuestro dispositivo. Además, podemos ver las direcciones DNS en este caso de ONO.
Hasta ahora, que se conozca la IP privada, realmente no nos preocupa mucho, es simplemente «curioso» y nada más. Los demás datos son los que realmente queremos ocultar.
Para ocultarlos, lo primero que se nos puede ocurrir es buscar en Google Play alguna aplicación «milagrosa» que nos promete navegar anónimamente simplemente a golpe de dedo en este caso.
Podemos descargar por ejemplo «Hola» (disponible en aplicación para dispositivos o pluggins para navegadores de escritorio). Es un navegador que se conecta a unos proxys para ocultar nuestros datos (supuestamente).
Si lo ejecutamos, y visitamos de nuevo http://ipleak.net, encontramos lo siguiente:
«Hola» nos permite elegir el país deseado para asignarnos una IP acorde a nuestra elección. En la imágen puede verse que he seleccionado «Estados Unidos» y aparece su bandera junto a la dirección IP que el proxy me ha asignado. También apreciamos la dirección DNS del proveedor del proxy. El problema es que si nos fijamos en el apartado de WebRTC sigue apareciendo mi IP privada 192.168.1.4 y mi IP pública («85»).
Viendo que «Hola» no es lo que buscamos, podemos pensar en usar Tor… o mejor dicho Orbot y Orweb (proxy y navegador respectivamente para la red Tor). Hemos oído muchas veces que la Deep Web o Web Profunda es segura para «los malos»… así que ¿por qué no va a ser segura para nosotros, que ni somos malos ni nada?
Nos instalamos Orbot y Orweb, lo ejecutamos y nos dirijimos prestos a http://ipleak.net. Veamos que descubrimos:
Como vemos, la dirección IP es la del nodo de salida de la red Tor y la DNS no tiene mucha pinta de ser de nuestro barrio así que hasta el momento todo correcto. Pero si volvemos al dichoso WebRTC volvemos a ver nuestra ya conocida 192.168.1.4 y la IP pública real («85»)… Tampoco sirve a nuestro propósito.
Viendo que las herramientas «de botón gordo» como se les conoce en el mundillo no nos están dando buenos resultados, decidimos probar mediante VPN y ver que pasa. También hemos oído que las VPN son buenas para ésto.
Nos instalamos por ejemplo CyberGhost, cliente VPN «anónimo» disponible para dispositivos móviles, PC… También permite elegir país para nuestra IP y algún que otro parámetro (aunque muchos más en su versión de pago). Por ahora veremos que con la gratuíta, nos sobra.
Lo ejecutamos. Yo he elegido «Rumanía» como país para mi IP. Una vez elegido el país (se puede dejar en automático) le damos al botón de conexión y la conexión se realiza. Incluso sale un aviso de que se están realizando «pruebas de anonimato» y cuando todo está ok, podemos empezar a navegar.
Una vez conectados a la VPN, vamos a probar qué pasa si sólo con ella accedemos a la ya archiconocida http://ipleak.net con Chrome.
Como podemos observar la IP que nos devuelve, es de Rumanía y la DNS es de Alemania. Hasta el momento, prueba superada. El problema sigue siendo WebRTC que además de la IP privada 192.168.1.4 ésta vez nos devuelve hasta la privada del túnel VPN a parte, por supuesto, de nuestra IP real… :'(
Lo siguiente que se nos puede ocurrir es «oye, si ahora que tengo VPN encima ejecuto una herramienta de botón gordo, eso tiene que ser la leche» y así lo pruebo. Ejecutando CyberGhost, lanzo «Hola». Craso error, ni siquiera conecta.
Ok, primera batalla perdida, pero aún podemos ganar la guerra… ¿qué más puedo probar? Ok, «all in» como en el poker. VPN + Orbot + Orweb.
Aquí nos devuelve la IP pública de Orbot y su DNS, pero en WebRTC nos devuelve la IP de CyberGhost (85.9.20.145) y la IP real… TANGO DOWN.
Hasta ahora, todas las pruebas han sido con navegadores de botón gordo o Chrome. Vamos a pasar a Firefox y a sus parámetros, a ver que podemos hacer.
Si estando conectados a la VPN nos conectamos con Firefox a http://ipleak.net obtenermos lo esperado:
Obtenemos la IP de la VPN y su DNS y como IP’s privadas la de la VPN y la real. Hasta ahora, ninguna sorpresa.
La ventaja que vamos a encontrar en Firefox, es que nos da la opción de «toquetear» los parámetros e intentar decirle que no queremos utilizar WebRTC. Por defecto, viene activado pero, entrando en «about:config» podemos encontrar un parámetro llamado «media.peerconnection.enabled» que por defecto viene a True.
Si lo modificamos pulsando sobre alternar, y lo deshabilitamos pasando a False… y nos dirijimos a http://ipleak.net ¿qué ocurre?
Pues ocurre que nos aparece la IP pública de la VPN y su DNS pero YA NO NOS APARECE NINGUNA IP EN EL APARTADO DE WebRTC, que era lo que pretendíamos desde un principio (y vaya si nos ha costado…)
Tengo que decir, que en Chrome (según versiones) también está dicho parámetro aunque sinceramente a mi no me termina de funcionar correctamente.
Por fin hemos conseguido ocultar nuestra IP pública y poder navegar «algo más anónimamente» que al principio pero… os dejo una pregunta para que reflexionar. Antes ya creías que navegabas anonimamente, ¿crees que porque desactives ese parámetro realmente ahora lo has conseguido?
Hasta la próxima.
Eres un Boss: «(ahora mismo escribo esto a las 3:10 de la madrugada)». ;D ¡Autillo!
En serio, me ha gustado. Muy currado, lo tuyo te ha costado. Solo en hardcopys…
Confirma mis sospechas, y por ello ni lo intento: ¿Anonimato? ¡Ja!
Y a las 3:10 lo escribía 😉 ya sabes nuestros horarios… pero publicarlo a esa hora con la poca gente que los lee… 🙁 Mejor dejarlo terminado y publicarlo a la mañana siguiente… Y a ver si nos vemos pronto que en la @AlbahacaCon «no me diste todo de ti» 😉 ¡Un saludo fiera!
;D