La cache avvelenata DNS non ha alcun effetto [chiuso]

1

Cerco di riprodurre l'attacco, rivelato da Dan Kaminsky nel 2008, per avvelenare la cache DNS. Ho creato la mia rete virtuale e tutto ciò che faccio è limitato all'interno.

L'avvelenamento sembra funzionare. Ma non . Perché?

Il dominio di destinazione è example.com . Ecco la mia rete:

 - Resolver:  200.200.200.1
   Resolves the DNS queries.

 - DNS   #0:  200.200.200.2
   Root DNS Server.

 - DNS   #1:  200.200.200.3
   Authoritative for '.com' zone.

 - DNS   #2:  200.200.200.4
   Authoritative for 'example.com' zone.
   It also runs a web server: www.example.com.

 - Attacker:  200.200.200.5
   The attacker. Tries to perform the attack.
   The attacher is configured to be authoritative for 'example.com' (as DNS2).
   But as he is not referenced by the DNS servers, he won't be asked anything.
   The purpose of the attack is to be stored in the cache of the Resolver.
   Therefore, as long as it's in the cache, any query to <rdm>.example.com will
   be forwarded to him.
   The attacker runs a web server too, and wants to 'steal' www.example.com.

In sostanza, quando qualcuno richiede www.example.com o qualsiasi altra cosa, Resolver richiede DNS0 , DNS1 e poi DNS2 . Alla fine, memorizza i record interessanti nella sua cache. Dovrebbe sembrare più o meno come questo:

.                 300   IN   NS   ns.
ns.               300   IN   A    200.200.200.2 (DNS 0)

com.              300   IN   NS   ns.com.
ns.com.           300   IN   A    200.200.200.3 (DNS 1)

example.com.      200   IN   NS   ns.example.com.
ns.example.com.   200   IN   A    200.200.200.4 (DNS 2)

www.example.com.  100   IN   A    200.200.200.4 (DNS 2 runs a web serv)

Ho creato un programma per eseguire l'attacco. Sembra funzionare. Infatti, ecco la cache del Resolver :

;
; Start view _default
;
;
; Cache dump of view '_default' (cache _default)
;
$ DATE 20141229094639 (09:46:39, 29th of December 2014)
; authanswer
.                    295    IN NS   ns.
; glue
com.                 295    NS      ns.com.
; glue
example.com.         196    NS      ns.example.com.
; glue
ns.example.com.      56     A       200.200.200.5 (Attacker)
; glue
ns.com.              295    A       200.200.200.3 (DNS 1)
; additional
ns.                  295    A       200.200.200.2 (DNS 0)

Ma in effetti, non funziona:

 $ dig www.example.com +short
   200.200.200.4 (DNS 2 web serv!)

Ed ecco come appare la cache del Resolver ora:

;
; Start view _default
;
;
; Cache dump of view '_default' (cache _default)
;
$ DATE 20141229094652 (09:46:52, 29th of December 2014)
; authanswer
.                    282    IN NS   ns.
; glue
com.                 282    NS      ns.com.
; authauthority
example.com.         97     NS      ns.example.com.
; answer
ns.example.com.      97     \-AAAA  ;-$NXRRSET
; example.com SOA ns.example.com. admin.example.com. 2014111400 86400 900 1209600 3600
; glue
                     193    A       200.200.200.4 (DNS 2)
; authanswer
www.example.com.     97     A       200.200.200.4 (DNS 2)
; glue
ns.com.              282    A       200.200.200.3 (DNS 1)
; additional
ns.                  282    A       200.200.200.2 (DNS 0)

Non so cosa sia successo. Potrei vedere, usando wireshark, che quando digito dig www.example.com , Resolver richiede DNS2 e non l' Attacker . Ma quando vedo il suo cache (quello dopo un attacco "riuscito"), non dovrebbe sapere DNS2 .

Qualcuno di voi ha un'idea di cosa sta andando male?

Grazie e buona giornata.

    
posta Coco974 29.12.2014 - 10:50
fonte

0 risposte

Leggi altre domande sui tag