FichierRisque : Prudence
hosts C:\Windows\System32\drivers\etc\hosts
Fichier texte nom d'hôte / adresse IP lu par Windows avant le DNS ; sert aux tests et aux blocages, et reste une cible classique des malwares.
À quoi ça sert
hosts est un fichier texte qui associe un nom d’hôte à une adresse IP. Windows le lit avant d’interroger le DNS : on s’en sert pour tester un site avant sa bascule, bloquer un nom ou rediriger un nom en local. Une ligne erronée suffit à casser la résolution de ce nom, et les malwares le visent pour la même raison, afin de détourner un site de banque ou d’éditeur de sécurité.
Ce qu’il contient
- Un commentaire d’en-tête fourni par Windows. Dans le fichier par défaut, aucune entrée n’est active : les exemples
localhostsont commentés. - Des lignes « adresse-IP nom-d’hôte », par exemple
127.0.0.1 exemple.local, une entrée par ligne. Ce qui suit un#est un commentaire. - Le fichier n’a pas d’extension. Le dossier
drivers\etcéchappe à la redirection WOW64 : une application 32 bits voit le même fichier.
Risques et bonnes pratiques
- Modifiez-le dans un éditeur lancé en administrateur, sinon l’enregistrement échoue. Gardez une copie avant, et videz le cache DNS du client après (
ipconfig /flushdns). L’« Éditeur de fichier Hosts » de PowerToys fait la sauvegarde pour vous. - Un fichier anormalement long, ou qui cite des banques ou des éditeurs de sécurité, est suspect.
- Pour revenir à l’état d’origine, collez le modèle par défaut publié par Microsoft.
Commandes utiles
# Entrées actives (hors commentaires et lignes vides)Get-Content "$env:windir\System32\drivers\etc\hosts" | Where-Object { $_ -and $_ -notmatch '^\s*#' }
# Date de modification, utile pour repérer un changement inattenduGet-Item "$env:windir\System32\drivers\etc\hosts" | Select-Object FullName, LastWriteTime, Attributes
# En administrateur : sauvegarde avant modification (retirez -WhatIf pour exécuter)Copy-Item "$env:windir\System32\drivers\etc\hosts" "$env:windir\System32\drivers\etc\hosts.bak" -WhatIf
# Vider le cache DNS du clientipconfig /flushdns