Les équipes ESET vient de découvrir une faille directement dans Windows, initiallement exploitée par le malware DNS Unlocker.
En cause : l'interprétation d'une clé de registre contenant des serveurs DNS par le système d'exploitation de Microsoft.
Une histoire de virgule
Quand vous précisez deux serveurs DNS (primaire et secondaire) Windows insère ces valeurs dans la base de registre en les délimitant par une virgule :
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\
Le malware lui insère un espace à la place de la virgule... Le drame c'est que Windows n'affichera aucun DNS de configuré dans l'interface de configuration IP, mais Windows utilisera bien ces deux serveurs DNS ! Même un "ipconfig /all" retournera une "configuration automatique" au lieu des deux valeurs.
Seul l'onglet "avancé" permettra de visualiser les deux valeurs.
Le centre de réponses Microsoft Security (MSRC) a reconnu le problème ne souhaite pas le classer comme une vulnérabilité de sécurité : "Comme la modification du registre nécessite des privilèges administrateur, nous ne considérons pas que cela soit du ressort du service MSRC" d'après ESET.
"Microsoft corrigera tout de même ce retour dans les futures versions de Windows. D’ici là, les utilisateurs doivent être conscients de la possibilité d’un détournement de DNS", commente Marc-Etienne Léveillé (ESET Malware Researcher)
Sur les machines infectées vous devriez voir des publicités "Ads by DNSUnlocker".
Espérons que les différents AV du marché soient capable de détecter rapidement ce type de contamination. De mon côté j'utilise le firmware Tomato qui peut à la voler réécrire toutes les requêtes DNS pour les résoudre, ça peut être une mesure de sécurité pour les utilisateurs avancés. En entreprise aucune machine ne devrait pouvoir sortir en UDP 53, donc tant que votre résolveur DNS n'est pas contaminé, pas de risque. A vérifier quand même si vous utilisez votre DC sous Windows Server pour le DNS.
Tous les détails sur l'exploit sont sur welivesecurity (en).
Auteur : Mr Xhark
Fondateur du blog et passionné par les nouvelles techno, suivez-moi sur twitter
4 commentaires
Je suis passé à tomato hier sur tes conseils d'ailleurs et je ne suis absolument pas déçu !
Cependant, pourrais-tu expliquer comment tu as réécris les requêtes dns ? Ou faire un mini tuto ? 🙂
@MonsieurPouet: bonne nouvelle, tu as quoi comme routeur ?
Pour répondre à ta question tu vas dans Advanced > DHCP/DNS : Intercept DNS port
(UDP 53) et si tu veux réécrire un domaine en particulier avec un smartDNS c'est par ici : http://blogmotion.fr/internet/netflix-smartdns-12031
J'ai pris un Asus RT-N18U. Compatible avec quasiment tous les firmwares alternatifs et à 52€ au lieu de 70€. J'ai sauté dessus !
Cependant, j'utilise advancedtomato, mais c'est pareil. J'ai encore un peru de mal à tout comprendre, car il y a des options qu'on ne voient pas ailleurs (dans d'autres box^^) comme pondre un script pour le WPS ou les commande possible etc..
Je vais déjà essayer de mettre un place un script adblock et mettre du DNS crypté =)
@MonsieurPouet: si tu es parti ave AdvancedTomato déjà ce sera plus sympa à prendre en main. Ensuite je te rassure y'a pleins d'options très avancées que tu n'utiliseras pas, mais le jour où tu as besoin d'une option spécifique elle sera sûrement là 🙂