Esto que voy a explicar hoy no es nada novedoso, pero si molesto para algún sector de usuarios. Se trata del DNS hijacking. Como ya sabréis algunos, me mude de casa hace unos meses y contraté mi servicio de ADSL en casa. Los únicos cambios que le hice a mi router, fue deshabilitar el WPS, cambiar el SSID y el password, además de accesos y etc..

La compañía contratada es Jazztel. Hay veces que como muchas personas, me equivoco al escribir el dominio web que voy a visitar. Mi sorpresa fue, encontrarme que era Jazztel, que a modo de “ayuda” me mostraba una página con un buscador del dominio al que yo había tratado de accede.




Ya no me acordaba que Jazztel es uno de los operadores que practica el DNS hijacking.
¿Esto que quiere decir?

Vamos a la terminal.

1
2
3
4
5
6
7
8
9
10
11
12
darkmac:~ marc$ ping www.midominioinventado.es
PING www.midominioinventado.es (81.200.64.180): 56 data bytes
64 bytes from 81.200.64.180: icmp_seq=0 ttl=51 time=63.643 ms
64 bytes from 81.200.64.180: icmp_seq=1 ttl=51 time=61.092 ms
64 bytes from 81.200.64.180: icmp_seq=2 ttl=51 time=73.953 ms
64 bytes from 81.200.64.180: icmp_seq=3 ttl=51 time=62.912 ms
64 bytes from 81.200.64.180: icmp_seq=4 ttl=51 time=63.172 ms

--- www.midominioinventado.es ping statistics ---
5 packets transmitted, 5 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 61.092/64.954/73.953/4.582 ms
darkmac:~ marc$


El dominio web no existe, pero en cambio me contesta el ping…. ¿Pero de quien es esta IP?
1
2
darkmac:~ marc$ dig -x 81.200.64.180 +short
dnssearch.jazztel.com.


Vaya, parece que la IP, pertenece a un subdominio web, concretamente a dnssearch.jazztel.com
1
2
3
4
5
6
7
8
9
darkmac:~ marc$ nslookup www.dominioinventado.es
Server: 87.216.1.65
Address: 87.216.1.65#53

Non-authoritative answer:
Name: www.dominioinventado.es
Address: 81.200.64.180

darkmac:~ marc$


Hay otra IP implicada en el caso la IP 87.216.1.65 que es DNS de Jazztel, esto es normal .
Otra de las maneras que se tiene de comprobar quien “está en medio”. Es hacer un curl.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
server-home:sqlmap marc$ curl -I www.midominioinvenado.es
HTTP/1.1 403 Forbidden
Date: Sun, 18 Aug 2013 18:46:47 GMT
Server: Apache
Connection: close
Content-Type: text/html; charset=iso-8859-1

server-home:sqlmap marc$ curl -v -I www.midominioinvenado.es
* About to connect() to www.midominioinvenado.es port 80 (#0)
* Trying 81.200.64.180...
* connected
* Connected to www.midominioinvenado.es (81.200.64.180) port 80 (#0)
> HEAD / HTTP/1.1
> User-Agent: curl/7.24.0 (x86_64-apple-darwin12.0) libcurl/7.24.0 OpenSSL/0.9.8x zlib/1.2.5
> Host: www.midominioinvenado.es
> Accept: */*
>
< HTTP/1.1 403 Forbidden
HTTP/1.1 403 Forbidden
< Date: Sun, 18 Aug 2013 18:46:55 GMT
Date: Sun, 18 Aug 2013 18:46:55 GMT
< Server: Apache
Server: Apache
< Connection: close
Connection: close
< Content-Type: text/html; charset=iso-8859-1
Content-Type: text/html; charset=iso-8859-1

<
* Closing connection #0


Si miramos dicha IP en Robtex.



En realidad el Subdominio no pertenece a Jazztel.

Podemos ver un Summary también.



A mi personalmente, me molesta que haya interceptando mis consultas , aunque sea el ISP el que me proporcione mi acceso a Internet.


Evitando el DNS hijacking.

Pues para evitar esto, lo que tenemos que hacer es cambiar los DNS del router a los siguientes de OpenDNS, por ejemplo:

  • 208.67.222.222
  • 208.67.220.220
Otra de las opciones es usar software como Namebench.
https://code.google.com/p/namebench/

En el caso de Jazztel, solo intercepta los dominios fallidos cuando son del tipo www.dominio.es