SlideShare une entreprise Scribd logo
1  sur  3
Télécharger pour lire hors ligne
RFC 5625 : DNS Proxy Implementation Guidelines
St´ephane Bortzmeyer
<stephane+blog@bortzmeyer.org>
Premi`ere r´edaction de cet article le 26 aoˆut 2009
Date de publication du RFC : Aoˆut 2009
http://www.bortzmeyer.org/5625.html
—————————-
La connexion `a l’Internet typique du particulier ou de la petite entreprise passe aujourd’hui par une
boˆıte aux fonctions mal d´efinies. Parfois, celle-ci assure, parmi ses autres tˆaches, le rˆole d’un relais DNS.
Et ces relais, programm´es en g´en´eral avec les pieds par un stagiaire en Chine, violent souvent les r`egles
du protocole DNS, et causent d’innombrables probl`emes. Ce RFC dresse la liste des probl`emes potentiels
et formule les r`egles que doivent suivre les relais pour ne pas trop casser le DNS. Cela servira, pour le
cas improbable o`u les bricoleurs qui ´ecrivent le logiciel de ces boˆıtes lisent les RFC...
Ces boˆıtes sont parfois nomm´ees ”box” (en anglais, c¸a fait plus s´erieux) parfois d´ecodeurs (en
souvenir de Canal+, premi`ere entreprise qui a r´eussi `a mettre des boˆıtes chez ses clients), parfois mo-
dem , parfois routeur , ce qui est techniquement souvent correct, mais insuffisant, vue la vari´et´e
des fonctions qu’elles assurent. Au minimum, la boˆıte devrait faire passer les paquets IP d’un cˆot´e
`a l’autre (du r´eseau local vers celui du FAI et r´eciproquement). Mais, pour des raisons comme celles
expliqu´ees par le RFC dans sa section 5.3, beaucoup de boˆıtes s’arrogent des rˆoles comme celui de relais
DNS, rˆole qu’elles remplissent mal.
La section 1 du RFC rappelle l’excellente ´etude <http://www.icann.org/committees/security/
sac035.pdf> qu’avait fait le mˆeme auteur, Ray Bellis, employ´e du registre de .uk, pour le compte
du SSAC de l’ICANN : cette ´etude, et celle du registre DNS su´edois <http://www.iis.se/docs/
Routertester_en.pdf>, montraient que la grande majorit´e des boˆıtes existantes, dans leur config-
uration par d´efaut) violaient largement le protocole DNS et qu’elles contribuaient ainsi `a l’ossification
de l’Internet (le fait qu’on ne puisse plus d´eployer de nouveaux services car les boˆıtes interm´ediaires
abusent de leur rˆole et bloquent ce qu’elles ne comprennent pas). Des nouveaux services comme DNSSEC
risquent donc d’ˆetre tr`es difficiles `a installer.
La boˆıte qui fait relais DNS (et pas simplement routeur IP, comme elle le devrait) n’a en g´en´eral
pas un vrai serveur DNS, avec capacit´es de cache et gestion compl`ete du protocole. Elle est un ˆetre
interm´ediaire, ni chair, ni poisson, violant le mod`ele en couches, et d´epend des r´esolveurs du FAI auquel
1
2
elle transmet les requˆetes. Le RFC commence donc par recommander de ne pas utiliser de tels relais.
N´eanmoins, s’ils existent, il faudrait au minimum qu’ils suivent les recommandations du document.
La section 3 remet ces recommandations dans le contexte du principe de transparence. Un relais
DNS ne peut esp´erer mettre en œuvre toutes les fonctions du DNS, surtout celles qui n’existent pas
encore. En effet, la boˆıte a en g´en´eral des ressources mat´erielles assez limit´ees, elle n’a souvent pas de
m´ecanisme de mise `a jour simple, ce qui veut dire qu’elle tournera toute sa vie avec le mˆeme code, et
son interface de configuration doit id´ealement ˆetre simple.
Alors, le relais, puisqu’il ne peut pas g´erer compl`etement le DNS, devrait le laisser en paix. L’´etude
du SSAC montrait que, plus la boˆıte joue un rˆole actif dans le protocole DNS, plus elle fait de bˆetises.
Le relais devrait donc juste prendre les paquets d’un cˆot´e et les envoyer de l”autre, sans jouer `a les
interpr´eter, ce qu’il fait toujours mal. Et, dans tous les cas, le RFC recommande que les machines du
r´eseau local puissent ´ecrire directement au r´esolveur DNS de leur choix, si celui de la boˆıte est vraiment
trop mauvais (ce n’est pas toujours possible, par exemple dans les hˆotels o`u le port 53, celui du DNS, est
souvent filtr´e).
Dans le cadre de ce principe de transparence, la section 4 du RFC d´etaille ensuite point par point
toutes les r`egles `a respecter particuli`erement. Ainsi, la section 4.1 rappelle que les relais ne doivent pas
jeter un paquet DNS simplement parce que des options inconnues apparaissent dans celui-ci. Beaucoup
de boˆıtes jettent les paquets o`u les bits AD (”Authentic Data”) ou CD (”Checking Disabled”) sont `a un,
simplement parce qu’ils n’existaient pas `a l’´epoque du RFC 1035 1
(section 4.1), le seul que le stagiaire
qui a programm´e la boˆıte a lu (quand il en a lu un). (Ces bits sont dans la plage ”Reserved for future use”,
not´ee Z.)
De mˆeme, certaines boˆıtes ne laissent pas passer les types d’enregistrement inconnus, la section 4.3
rappelle donc, suivant le RFC 3597 qu’une mise en œuvre correcte du DNS doit laisser passer les types
inconnus, sinon il sera impossible de d´eployer un nouveau type.
Un autre point sur lequel les logiciels des boˆıtes (mais aussi beaucoup de pare-feux) sont en g´en´eral
d´efaillants est celui de la taille des paquets DNS <http://www.bortzmeyer.org/dns-size.html>.
L`a encore, si le programmeur a lu un RFC (ce qui est rare), il s’est arrˆet´e au RFC 1035, sans penser que,
depuis vingt-deux ans qu’il existe, des mises `a jour ont peut-ˆetre ´et´e faites et que la taille maximum de
512 octets n’est donc plus qu’un souvenir. La section 4.4 doit donc rappeler que les paquets DNS ne
sont pas limit´es `a 512 octets et que des r´eponses de plus grande taille sont fr´equentes en pratique. Le
relais doit donc g´erer TCP correctement (section 4.4.1), et accepter EDNS0 (section 4.4.2, voir aussi le
RFC 6891..
Les boˆıtes maladroites peuvent aussi interf´erer avec la s´ecurit´e. La section 4.5 rappelle que TSIG (RFC
2845) peut ˆetre invalid´e si la boˆıte modifie certains bits des paquets (ce qui existe) ou bien retourne des
r´eponses non sign´ees `a des requˆetes sign´ees (ce qui est courant sur les points chauds Wifi).
Une autre section, la 5, couvre les questions de l’interaction avec DHCP. La plupart du temps,
la machine de M. Toutlemonde obtient l’adresse IP du r´esolveur DNS via DHCP (option 6, ”Domain
Name Server”, RFC 2132, section 3.8). La plupart des boˆıtes indiquent leur propre adresse IP ici. Et, en
g´en´eral, il n’est pas possible de modifier ce param`etre (par exemple, la Freebox ne permet pas d’indi-
quer un autre serveur DNS, choisi par le client ; mˆeme chose chez SFR <http://www.justneuf.com/
1. Pour voir le RFC de num´ero NNN, http://www.ietf.org/rfc/rfcNNN.txt, par exemple http://www.ietf.org/
rfc/rfc1035.txt
—————————-
http://www.bortzmeyer.org/5625.html
3
Configurer-Dhcp-Neufbox-Pour-viter-Dns-Menteurs-Sfr-t103181.html>). La seule so-
lution pour court-circuiter le service DNS par d´efaut est donc d’indiquer en dur les r´esolveurs souhait´es,
dans la configuration de chaque machine. La section 5.1 appelle donc `a une option de la boˆıte permettant
de changer les serveurs DNS annonc´es.
DHCP permet ´egalement une option indiquant le nom de domaine du r´eseau (option 15, section 3.17
du RFC 2132) et la section 5.2 du RFC 5625 demande qu’elle soit vide par d´efaut, en l’absence d’un do-
maine local normalis´e <http://www.bortzmeyer.org/pourquoi-le-tld-local-n-est-pas-une-bonne-idee
html>.
La section 5.3 est consacr´ee `a une discussion sur la dur´ee du bail DHCP. Une des raisons pour
lesquelles beaucoup de boˆıtes indiquent leur propre adresse IP comme r´esolveur DNS est que, au d´emarrage,
la boˆıte ne connait pas forc´ement les adresses des r´esolveurs DNS du FAI. Mais cette technique oblige
ensuite la boˆıte `a agir comme relais DNS, ce qui est pr´ecis´ement la source de beaucoup de probl`emes.
Une solution possible, sugg´er´ee par notre RFC, est d’annoncer l’adresse IP de la boˆıte avec une dur´ee de
bail ultra-courte, tant que la boˆıte n’est pas connect´ee `a l’Internet, puis d’annoncer les r´esolveurs du FAI
ensuite, avec une dur´ee de bail normale.
Les interf´erences provoqu´ees par les boˆıtes mal conc¸ues peuvent aussi avoir un impact sur la s´ecurit´e.
C’est l’objet de la section 6. Il y a des boˆıtes qui, ignorant le RFC 5452, r´e´ecrivent le ”Query ID”, rendant
ainsi les utilisateurs davantage vuln´erables `a la faille Kaminsky <http://www.bortzmeyer.org/
comment-fonctionne-la-faille-kaminsky.html> (section 6.1). Il y en a qui r´epondent aussi
aux requˆetes DNS venues du WAN, permettant ainsi les attaques d´ecrites dans le RFC 5358 (section 6.2).
Bref, les relais DNS des boˆıtes sont souvent plus dangereux qu’utiles. Le principe d’ing´eni´erie sim-
ple si vous voyez un syst`eme inconnu, bas les pattes est malheureusement tr`es largement ignor´e
dans l’Internet. Pourquoi ? Pour les boˆıtes, il y a plusieurs raisons, typiquement li´ees `a l’isolement com-
plet dans lequel vivent les programmeurs anonymes de ces machines. Au contraire des logiciels libres
comme Unbound ou BIND, dont les auteurs participent r´eguli`erement `a la communaut´e DNS, les pro-
grammeurs des boˆıtes sont inconnus, ne fournissent pas d’adresse pour leur envoyer des rapports de
bogue ou de remarques. Pas ´etonnant, dans ces conditions, que le logiciel soit de mauvaise qualit´e.
Les abonn´es `a Free noteront que la Freebox n’a pas les probl`emes mentionn´es dans le RFC puisqu’elle
est purement routeur, elle ne sert pas de relais DNS. Les serveurs DNS qu’elle indique en DHCP sont
situ´es derri`ere elle, dans les salles de Free.
—————————-
http://www.bortzmeyer.org/5625.html

Contenu connexe

Tendances

Installation de systemes d'exploitation via reseau avec serva
Installation de systemes d'exploitation via reseau avec servaInstallation de systemes d'exploitation via reseau avec serva
Installation de systemes d'exploitation via reseau avec servaPape Moussa SONKO
 
Rapport messagerie instantanée avec open fire
Rapport messagerie instantanée avec open fireRapport messagerie instantanée avec open fire
Rapport messagerie instantanée avec open fireMame Cheikh Ibra Niang
 
07 03 sécurisation d'un serveur dns
07 03 sécurisation d'un serveur dns07 03 sécurisation d'un serveur dns
07 03 sécurisation d'un serveur dnsNoël
 
Initiation a la ligne de commande
Initiation a la ligne de commandeInitiation a la ligne de commande
Initiation a la ligne de commandeLakhdar Meftah
 
Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5Mame Cheikh Ibra Niang
 
DevoxxFR 2019: Consul @Criteo
DevoxxFR 2019: Consul @CriteoDevoxxFR 2019: Consul @Criteo
DevoxxFR 2019: Consul @CriteoPierre Souchay
 
Flowspec contre les attaques DDoS : l'expérience danoise
Flowspec contre les attaques DDoS : l'expérience danoiseFlowspec contre les attaques DDoS : l'expérience danoise
Flowspec contre les attaques DDoS : l'expérience danoisePavel Odintsov
 
Solution linux 2014 - Code réactif et persistance versionée
Solution linux 2014 - Code réactif et persistance versionéeSolution linux 2014 - Code réactif et persistance versionée
Solution linux 2014 - Code réactif et persistance versionéeOCTO Technology
 
Retour d'expérience sur notre stack de log
Retour d'expérience sur notre stack de logRetour d'expérience sur notre stack de log
Retour d'expérience sur notre stack de logJulien Maitrehenry
 
Premiers pas avec snort
Premiers pas avec snortPremiers pas avec snort
Premiers pas avec snortFathi Ben Nasr
 
Configuration dns sous linux
Configuration  dns sous linuxConfiguration  dns sous linux
Configuration dns sous linuxBalamine Gassama
 
05 02 surveillance et analyse de traffic tcpip
05 02 surveillance et analyse de traffic tcpip05 02 surveillance et analyse de traffic tcpip
05 02 surveillance et analyse de traffic tcpipNoël
 
Mise en place d'un système de messagerie sous debian avec: postfix, dovecot, ...
Mise en place d'un système de messagerie sous debian avec: postfix, dovecot, ...Mise en place d'un système de messagerie sous debian avec: postfix, dovecot, ...
Mise en place d'un système de messagerie sous debian avec: postfix, dovecot, ...Manassé Achim kpaya
 
HDFS HA : Stockage à haute disponibilité par Damien Hardy
HDFS HA : Stockage à haute disponibilité par Damien HardyHDFS HA : Stockage à haute disponibilité par Damien Hardy
HDFS HA : Stockage à haute disponibilité par Damien HardyOlivier DASINI
 

Tendances (20)

Installation de systemes d'exploitation via reseau avec serva
Installation de systemes d'exploitation via reseau avec servaInstallation de systemes d'exploitation via reseau avec serva
Installation de systemes d'exploitation via reseau avec serva
 
Genma - Vulgarisons le DNS
Genma - Vulgarisons le DNSGenma - Vulgarisons le DNS
Genma - Vulgarisons le DNS
 
Rapport messagerie instantanée avec open fire
Rapport messagerie instantanée avec open fireRapport messagerie instantanée avec open fire
Rapport messagerie instantanée avec open fire
 
07 03 sécurisation d'un serveur dns
07 03 sécurisation d'un serveur dns07 03 sécurisation d'un serveur dns
07 03 sécurisation d'un serveur dns
 
Initiation a la ligne de commande
Initiation a la ligne de commandeInitiation a la ligne de commande
Initiation a la ligne de commande
 
Snort implementation
Snort implementationSnort implementation
Snort implementation
 
Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5Rapport d'installation de Linux Engine X MariaDB PHP5
Rapport d'installation de Linux Engine X MariaDB PHP5
 
Implémentation d'openvpn
Implémentation d'openvpnImplémentation d'openvpn
Implémentation d'openvpn
 
DevoxxFR 2019: Consul @Criteo
DevoxxFR 2019: Consul @CriteoDevoxxFR 2019: Consul @Criteo
DevoxxFR 2019: Consul @Criteo
 
Flowspec contre les attaques DDoS : l'expérience danoise
Flowspec contre les attaques DDoS : l'expérience danoiseFlowspec contre les attaques DDoS : l'expérience danoise
Flowspec contre les attaques DDoS : l'expérience danoise
 
Solution linux 2014 - Code réactif et persistance versionée
Solution linux 2014 - Code réactif et persistance versionéeSolution linux 2014 - Code réactif et persistance versionée
Solution linux 2014 - Code réactif et persistance versionée
 
Retour d'expérience sur notre stack de log
Retour d'expérience sur notre stack de logRetour d'expérience sur notre stack de log
Retour d'expérience sur notre stack de log
 
Premiers pas avec snort
Premiers pas avec snortPremiers pas avec snort
Premiers pas avec snort
 
Tuto pfsense
Tuto pfsenseTuto pfsense
Tuto pfsense
 
Mise en place d’un OpenVPN sous PfSense
Mise en place d’un OpenVPN sous PfSenseMise en place d’un OpenVPN sous PfSense
Mise en place d’un OpenVPN sous PfSense
 
Configuration dns sous linux
Configuration  dns sous linuxConfiguration  dns sous linux
Configuration dns sous linux
 
05 02 surveillance et analyse de traffic tcpip
05 02 surveillance et analyse de traffic tcpip05 02 surveillance et analyse de traffic tcpip
05 02 surveillance et analyse de traffic tcpip
 
Tp dns
Tp dns Tp dns
Tp dns
 
Mise en place d'un système de messagerie sous debian avec: postfix, dovecot, ...
Mise en place d'un système de messagerie sous debian avec: postfix, dovecot, ...Mise en place d'un système de messagerie sous debian avec: postfix, dovecot, ...
Mise en place d'un système de messagerie sous debian avec: postfix, dovecot, ...
 
HDFS HA : Stockage à haute disponibilité par Damien Hardy
HDFS HA : Stockage à haute disponibilité par Damien HardyHDFS HA : Stockage à haute disponibilité par Damien Hardy
HDFS HA : Stockage à haute disponibilité par Damien Hardy
 

En vedette

Présentations 2 cours 2007-2008
Présentations 2 cours 2007-2008Présentations 2 cours 2007-2008
Présentations 2 cours 2007-2008laprofdefran
 
Location Analytics - Solution de GéoDécisionnelle
Location Analytics - Solution de GéoDécisionnelleLocation Analytics - Solution de GéoDécisionnelle
Location Analytics - Solution de GéoDécisionnelleACSG - Section Montréal
 
071213 Silverlife E Sangathan Nts Presentation
071213 Silverlife E Sangathan Nts Presentation071213 Silverlife E Sangathan Nts Presentation
071213 Silverlife E Sangathan Nts Presentationesangathan
 
Mapa conceptual unidades iv y v
Mapa conceptual unidades iv y vMapa conceptual unidades iv y v
Mapa conceptual unidades iv y vesperanza1313
 
Les quinzaines-estivales-du-16-au-31-juillet-2013---mer--bocage
Les quinzaines-estivales-du-16-au-31-juillet-2013---mer--bocageLes quinzaines-estivales-du-16-au-31-juillet-2013---mer--bocage
Les quinzaines-estivales-du-16-au-31-juillet-2013---mer--bocagedaveazuki
 
PROJET ASSOCIATIF
PROJET ASSOCIATIF PROJET ASSOCIATIF
PROJET ASSOCIATIF ASSOJAVOUHEY
 
DELSA/GOV 3rd Health meeting - Franck VON LENNEP
DELSA/GOV 3rd Health meeting - Franck VON LENNEPDELSA/GOV 3rd Health meeting - Franck VON LENNEP
DELSA/GOV 3rd Health meeting - Franck VON LENNEPOECD Governance
 
eDIT Filmmaker's Magazine Online-Magazin
eDIT Filmmaker's Magazine Online-MagazineDIT Filmmaker's Magazine Online-Magazin
eDIT Filmmaker's Magazine Online-MagazinFechter
 
Voluntad de acero de Óscar Pistorius
Voluntad de acero de Óscar PistoriusVoluntad de acero de Óscar Pistorius
Voluntad de acero de Óscar Pistoriusbernal27
 
Tea&amp;marketing Junio 2012
Tea&amp;marketing Junio 2012Tea&amp;marketing Junio 2012
Tea&amp;marketing Junio 2012victormolins
 

En vedette (20)

Trimax
TrimaxTrimax
Trimax
 
ecole primaire
ecole primaireecole primaire
ecole primaire
 
Présentations 2 cours 2007-2008
Présentations 2 cours 2007-2008Présentations 2 cours 2007-2008
Présentations 2 cours 2007-2008
 
Amiko
AmikoAmiko
Amiko
 
No
NoNo
No
 
Mind Mapping
Mind MappingMind Mapping
Mind Mapping
 
presentation
presentationpresentation
presentation
 
Les journées de Chipo - Jour 330
Les journées de Chipo - Jour 330Les journées de Chipo - Jour 330
Les journées de Chipo - Jour 330
 
Location Analytics - Solution de GéoDécisionnelle
Location Analytics - Solution de GéoDécisionnelleLocation Analytics - Solution de GéoDécisionnelle
Location Analytics - Solution de GéoDécisionnelle
 
071213 Silverlife E Sangathan Nts Presentation
071213 Silverlife E Sangathan Nts Presentation071213 Silverlife E Sangathan Nts Presentation
071213 Silverlife E Sangathan Nts Presentation
 
presentation
presentationpresentation
presentation
 
Climalife Contact No. 4
Climalife Contact No. 4Climalife Contact No. 4
Climalife Contact No. 4
 
Mapa conceptual unidades iv y v
Mapa conceptual unidades iv y vMapa conceptual unidades iv y v
Mapa conceptual unidades iv y v
 
Les quinzaines-estivales-du-16-au-31-juillet-2013---mer--bocage
Les quinzaines-estivales-du-16-au-31-juillet-2013---mer--bocageLes quinzaines-estivales-du-16-au-31-juillet-2013---mer--bocage
Les quinzaines-estivales-du-16-au-31-juillet-2013---mer--bocage
 
PROJET ASSOCIATIF
PROJET ASSOCIATIF PROJET ASSOCIATIF
PROJET ASSOCIATIF
 
DELSA/GOV 3rd Health meeting - Franck VON LENNEP
DELSA/GOV 3rd Health meeting - Franck VON LENNEPDELSA/GOV 3rd Health meeting - Franck VON LENNEP
DELSA/GOV 3rd Health meeting - Franck VON LENNEP
 
eDIT Filmmaker's Magazine Online-Magazin
eDIT Filmmaker's Magazine Online-MagazineDIT Filmmaker's Magazine Online-Magazin
eDIT Filmmaker's Magazine Online-Magazin
 
Voluntad de acero de Óscar Pistorius
Voluntad de acero de Óscar PistoriusVoluntad de acero de Óscar Pistorius
Voluntad de acero de Óscar Pistorius
 
Transcripts
TranscriptsTranscripts
Transcripts
 
Tea&amp;marketing Junio 2012
Tea&amp;marketing Junio 2012Tea&amp;marketing Junio 2012
Tea&amp;marketing Junio 2012
 

Similaire à 5625

Conséquences du filtrage Internet par le DNS
Conséquences du filtrage Internet par le DNSConséquences du filtrage Internet par le DNS
Conséquences du filtrage Internet par le DNSAfnic
 
L’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en PratiqueL’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en PratiqueAmadou Dia
 
Chapitre 1 LES SERVICES RESEAUX.pptx
Chapitre 1 LES SERVICES RESEAUX.pptxChapitre 1 LES SERVICES RESEAUX.pptx
Chapitre 1 LES SERVICES RESEAUX.pptxAymenAyari10
 
Installation et Configuration de Pfsense
Installation et Configuration de PfsenseInstallation et Configuration de Pfsense
Installation et Configuration de PfsenseIsmail Rachdaoui
 
DNSSEC : les extensions de sécurité du DNS
DNSSEC : les extensions de sécurité du DNSDNSSEC : les extensions de sécurité du DNS
DNSSEC : les extensions de sécurité du DNSAfnic
 
Administration reseau linux
Administration reseau linuxAdministration reseau linux
Administration reseau linuxRiadh Briki
 
system de gestion Nfs (Network File System)
system de gestion Nfs (Network File System)system de gestion Nfs (Network File System)
system de gestion Nfs (Network File System)ninanoursan
 
Architecture réseaux
Architecture réseauxArchitecture réseaux
Architecture réseauxSaifEJJILALI
 
Consul @Criteo - usages et patches
Consul @Criteo - usages et patchesConsul @Criteo - usages et patches
Consul @Criteo - usages et patchesPierre Souchay
 
Créer un réseau wifi ad hoc
Créer un réseau wifi ad hocCréer un réseau wifi ad hoc
Créer un réseau wifi ad hocBomber Man
 
éTude des techno de stockage
éTude des techno de stockageéTude des techno de stockage
éTude des techno de stockagekhech123
 
DHCP sous fedora
DHCP sous fedora DHCP sous fedora
DHCP sous fedora Souhaib El
 
Priorité des flux
Priorité des fluxPriorité des flux
Priorité des fluxbuffy14
 
Projet IPv6 Matrix / Version française intégrale
Projet IPv6 Matrix / Version française intégraleProjet IPv6 Matrix / Version française intégrale
Projet IPv6 Matrix / Version française intégraleOlivier MJ Crépin-Leblond
 

Similaire à 5625 (20)

Conséquences du filtrage Internet par le DNS
Conséquences du filtrage Internet par le DNSConséquences du filtrage Internet par le DNS
Conséquences du filtrage Internet par le DNS
 
Presentation
PresentationPresentation
Presentation
 
L’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en PratiqueL’ Administration des Réseaux en Pratique
L’ Administration des Réseaux en Pratique
 
Chapitre 1 LES SERVICES RESEAUX.pptx
Chapitre 1 LES SERVICES RESEAUX.pptxChapitre 1 LES SERVICES RESEAUX.pptx
Chapitre 1 LES SERVICES RESEAUX.pptx
 
Installation et Configuration de Pfsense
Installation et Configuration de PfsenseInstallation et Configuration de Pfsense
Installation et Configuration de Pfsense
 
DNSSEC : les extensions de sécurité du DNS
DNSSEC : les extensions de sécurité du DNSDNSSEC : les extensions de sécurité du DNS
DNSSEC : les extensions de sécurité du DNS
 
Administration reseau linux
Administration reseau linuxAdministration reseau linux
Administration reseau linux
 
system de gestion Nfs (Network File System)
system de gestion Nfs (Network File System)system de gestion Nfs (Network File System)
system de gestion Nfs (Network File System)
 
Réseau MiNET
Réseau MiNETRéseau MiNET
Réseau MiNET
 
cours-dns TRI.pdf
cours-dns TRI.pdfcours-dns TRI.pdf
cours-dns TRI.pdf
 
isa serveur
isa serveurisa serveur
isa serveur
 
Architecture réseaux
Architecture réseauxArchitecture réseaux
Architecture réseaux
 
13
1313
13
 
Consul @Criteo - usages et patches
Consul @Criteo - usages et patchesConsul @Criteo - usages et patches
Consul @Criteo - usages et patches
 
Créer un réseau wifi ad hoc
Créer un réseau wifi ad hocCréer un réseau wifi ad hoc
Créer un réseau wifi ad hoc
 
éTude des techno de stockage
éTude des techno de stockageéTude des techno de stockage
éTude des techno de stockage
 
DHCP sous fedora
DHCP sous fedora DHCP sous fedora
DHCP sous fedora
 
Domain Name System
Domain Name SystemDomain Name System
Domain Name System
 
Priorité des flux
Priorité des fluxPriorité des flux
Priorité des flux
 
Projet IPv6 Matrix / Version française intégrale
Projet IPv6 Matrix / Version française intégraleProjet IPv6 Matrix / Version française intégrale
Projet IPv6 Matrix / Version française intégrale
 

5625

  • 1. RFC 5625 : DNS Proxy Implementation Guidelines St´ephane Bortzmeyer <stephane+blog@bortzmeyer.org> Premi`ere r´edaction de cet article le 26 aoˆut 2009 Date de publication du RFC : Aoˆut 2009 http://www.bortzmeyer.org/5625.html —————————- La connexion `a l’Internet typique du particulier ou de la petite entreprise passe aujourd’hui par une boˆıte aux fonctions mal d´efinies. Parfois, celle-ci assure, parmi ses autres tˆaches, le rˆole d’un relais DNS. Et ces relais, programm´es en g´en´eral avec les pieds par un stagiaire en Chine, violent souvent les r`egles du protocole DNS, et causent d’innombrables probl`emes. Ce RFC dresse la liste des probl`emes potentiels et formule les r`egles que doivent suivre les relais pour ne pas trop casser le DNS. Cela servira, pour le cas improbable o`u les bricoleurs qui ´ecrivent le logiciel de ces boˆıtes lisent les RFC... Ces boˆıtes sont parfois nomm´ees ”box” (en anglais, c¸a fait plus s´erieux) parfois d´ecodeurs (en souvenir de Canal+, premi`ere entreprise qui a r´eussi `a mettre des boˆıtes chez ses clients), parfois mo- dem , parfois routeur , ce qui est techniquement souvent correct, mais insuffisant, vue la vari´et´e des fonctions qu’elles assurent. Au minimum, la boˆıte devrait faire passer les paquets IP d’un cˆot´e `a l’autre (du r´eseau local vers celui du FAI et r´eciproquement). Mais, pour des raisons comme celles expliqu´ees par le RFC dans sa section 5.3, beaucoup de boˆıtes s’arrogent des rˆoles comme celui de relais DNS, rˆole qu’elles remplissent mal. La section 1 du RFC rappelle l’excellente ´etude <http://www.icann.org/committees/security/ sac035.pdf> qu’avait fait le mˆeme auteur, Ray Bellis, employ´e du registre de .uk, pour le compte du SSAC de l’ICANN : cette ´etude, et celle du registre DNS su´edois <http://www.iis.se/docs/ Routertester_en.pdf>, montraient que la grande majorit´e des boˆıtes existantes, dans leur config- uration par d´efaut) violaient largement le protocole DNS et qu’elles contribuaient ainsi `a l’ossification de l’Internet (le fait qu’on ne puisse plus d´eployer de nouveaux services car les boˆıtes interm´ediaires abusent de leur rˆole et bloquent ce qu’elles ne comprennent pas). Des nouveaux services comme DNSSEC risquent donc d’ˆetre tr`es difficiles `a installer. La boˆıte qui fait relais DNS (et pas simplement routeur IP, comme elle le devrait) n’a en g´en´eral pas un vrai serveur DNS, avec capacit´es de cache et gestion compl`ete du protocole. Elle est un ˆetre interm´ediaire, ni chair, ni poisson, violant le mod`ele en couches, et d´epend des r´esolveurs du FAI auquel 1
  • 2. 2 elle transmet les requˆetes. Le RFC commence donc par recommander de ne pas utiliser de tels relais. N´eanmoins, s’ils existent, il faudrait au minimum qu’ils suivent les recommandations du document. La section 3 remet ces recommandations dans le contexte du principe de transparence. Un relais DNS ne peut esp´erer mettre en œuvre toutes les fonctions du DNS, surtout celles qui n’existent pas encore. En effet, la boˆıte a en g´en´eral des ressources mat´erielles assez limit´ees, elle n’a souvent pas de m´ecanisme de mise `a jour simple, ce qui veut dire qu’elle tournera toute sa vie avec le mˆeme code, et son interface de configuration doit id´ealement ˆetre simple. Alors, le relais, puisqu’il ne peut pas g´erer compl`etement le DNS, devrait le laisser en paix. L’´etude du SSAC montrait que, plus la boˆıte joue un rˆole actif dans le protocole DNS, plus elle fait de bˆetises. Le relais devrait donc juste prendre les paquets d’un cˆot´e et les envoyer de l”autre, sans jouer `a les interpr´eter, ce qu’il fait toujours mal. Et, dans tous les cas, le RFC recommande que les machines du r´eseau local puissent ´ecrire directement au r´esolveur DNS de leur choix, si celui de la boˆıte est vraiment trop mauvais (ce n’est pas toujours possible, par exemple dans les hˆotels o`u le port 53, celui du DNS, est souvent filtr´e). Dans le cadre de ce principe de transparence, la section 4 du RFC d´etaille ensuite point par point toutes les r`egles `a respecter particuli`erement. Ainsi, la section 4.1 rappelle que les relais ne doivent pas jeter un paquet DNS simplement parce que des options inconnues apparaissent dans celui-ci. Beaucoup de boˆıtes jettent les paquets o`u les bits AD (”Authentic Data”) ou CD (”Checking Disabled”) sont `a un, simplement parce qu’ils n’existaient pas `a l’´epoque du RFC 1035 1 (section 4.1), le seul que le stagiaire qui a programm´e la boˆıte a lu (quand il en a lu un). (Ces bits sont dans la plage ”Reserved for future use”, not´ee Z.) De mˆeme, certaines boˆıtes ne laissent pas passer les types d’enregistrement inconnus, la section 4.3 rappelle donc, suivant le RFC 3597 qu’une mise en œuvre correcte du DNS doit laisser passer les types inconnus, sinon il sera impossible de d´eployer un nouveau type. Un autre point sur lequel les logiciels des boˆıtes (mais aussi beaucoup de pare-feux) sont en g´en´eral d´efaillants est celui de la taille des paquets DNS <http://www.bortzmeyer.org/dns-size.html>. L`a encore, si le programmeur a lu un RFC (ce qui est rare), il s’est arrˆet´e au RFC 1035, sans penser que, depuis vingt-deux ans qu’il existe, des mises `a jour ont peut-ˆetre ´et´e faites et que la taille maximum de 512 octets n’est donc plus qu’un souvenir. La section 4.4 doit donc rappeler que les paquets DNS ne sont pas limit´es `a 512 octets et que des r´eponses de plus grande taille sont fr´equentes en pratique. Le relais doit donc g´erer TCP correctement (section 4.4.1), et accepter EDNS0 (section 4.4.2, voir aussi le RFC 6891.. Les boˆıtes maladroites peuvent aussi interf´erer avec la s´ecurit´e. La section 4.5 rappelle que TSIG (RFC 2845) peut ˆetre invalid´e si la boˆıte modifie certains bits des paquets (ce qui existe) ou bien retourne des r´eponses non sign´ees `a des requˆetes sign´ees (ce qui est courant sur les points chauds Wifi). Une autre section, la 5, couvre les questions de l’interaction avec DHCP. La plupart du temps, la machine de M. Toutlemonde obtient l’adresse IP du r´esolveur DNS via DHCP (option 6, ”Domain Name Server”, RFC 2132, section 3.8). La plupart des boˆıtes indiquent leur propre adresse IP ici. Et, en g´en´eral, il n’est pas possible de modifier ce param`etre (par exemple, la Freebox ne permet pas d’indi- quer un autre serveur DNS, choisi par le client ; mˆeme chose chez SFR <http://www.justneuf.com/ 1. Pour voir le RFC de num´ero NNN, http://www.ietf.org/rfc/rfcNNN.txt, par exemple http://www.ietf.org/ rfc/rfc1035.txt —————————- http://www.bortzmeyer.org/5625.html
  • 3. 3 Configurer-Dhcp-Neufbox-Pour-viter-Dns-Menteurs-Sfr-t103181.html>). La seule so- lution pour court-circuiter le service DNS par d´efaut est donc d’indiquer en dur les r´esolveurs souhait´es, dans la configuration de chaque machine. La section 5.1 appelle donc `a une option de la boˆıte permettant de changer les serveurs DNS annonc´es. DHCP permet ´egalement une option indiquant le nom de domaine du r´eseau (option 15, section 3.17 du RFC 2132) et la section 5.2 du RFC 5625 demande qu’elle soit vide par d´efaut, en l’absence d’un do- maine local normalis´e <http://www.bortzmeyer.org/pourquoi-le-tld-local-n-est-pas-une-bonne-idee html>. La section 5.3 est consacr´ee `a une discussion sur la dur´ee du bail DHCP. Une des raisons pour lesquelles beaucoup de boˆıtes indiquent leur propre adresse IP comme r´esolveur DNS est que, au d´emarrage, la boˆıte ne connait pas forc´ement les adresses des r´esolveurs DNS du FAI. Mais cette technique oblige ensuite la boˆıte `a agir comme relais DNS, ce qui est pr´ecis´ement la source de beaucoup de probl`emes. Une solution possible, sugg´er´ee par notre RFC, est d’annoncer l’adresse IP de la boˆıte avec une dur´ee de bail ultra-courte, tant que la boˆıte n’est pas connect´ee `a l’Internet, puis d’annoncer les r´esolveurs du FAI ensuite, avec une dur´ee de bail normale. Les interf´erences provoqu´ees par les boˆıtes mal conc¸ues peuvent aussi avoir un impact sur la s´ecurit´e. C’est l’objet de la section 6. Il y a des boˆıtes qui, ignorant le RFC 5452, r´e´ecrivent le ”Query ID”, rendant ainsi les utilisateurs davantage vuln´erables `a la faille Kaminsky <http://www.bortzmeyer.org/ comment-fonctionne-la-faille-kaminsky.html> (section 6.1). Il y en a qui r´epondent aussi aux requˆetes DNS venues du WAN, permettant ainsi les attaques d´ecrites dans le RFC 5358 (section 6.2). Bref, les relais DNS des boˆıtes sont souvent plus dangereux qu’utiles. Le principe d’ing´eni´erie sim- ple si vous voyez un syst`eme inconnu, bas les pattes est malheureusement tr`es largement ignor´e dans l’Internet. Pourquoi ? Pour les boˆıtes, il y a plusieurs raisons, typiquement li´ees `a l’isolement com- plet dans lequel vivent les programmeurs anonymes de ces machines. Au contraire des logiciels libres comme Unbound ou BIND, dont les auteurs participent r´eguli`erement `a la communaut´e DNS, les pro- grammeurs des boˆıtes sont inconnus, ne fournissent pas d’adresse pour leur envoyer des rapports de bogue ou de remarques. Pas ´etonnant, dans ces conditions, que le logiciel soit de mauvaise qualit´e. Les abonn´es `a Free noteront que la Freebox n’a pas les probl`emes mentionn´es dans le RFC puisqu’elle est purement routeur, elle ne sert pas de relais DNS. Les serveurs DNS qu’elle indique en DHCP sont situ´es derri`ere elle, dans les salles de Free. —————————- http://www.bortzmeyer.org/5625.html