J'avais envie de jouer avec le module Perl Net::DNS et avec le serveur DNS d'un ami un peu trop ouvert alors j'ai automatisé la technique (très simple) de DNS Cache Snooping documenté dans l'article de Luis Grangeia.

Ce tout petit outils, snoopdns, permet de savoir si un enregistrement DNS existe dans le cache d'un serveur DNS (si celui-ci est "ouvert").
Imaginez que vous êtes sur un réseau et que vous saviez que le serveur de production (tournant sous Debian bien entendu) utilise le serveur DNS ns0.boite.com.

Vous pouvez ainsi voir si un serveur est mis à jour après la découverte d'une faille en regardant si le cache DNS contient un enregistrement DNS pour security.debian.org.

Cet exemple est un peu foireux car le TTL pour security.debian.org est d'une heure donc la fourchette n'est pas très grande mais le principe est là.

Ca donnerait :

$ snoopdns ns0.boite.com security.debian.org
security.debian.org accessed 3310 seconds ago [91.94% of the original ttl (3600)]

On peut donc penser que le serveur a été mis à jour. C'est une hypothèse comme une autre hein...