Comment une vulnérabilité dans REG.RU a permis d'obtenir des données d'enregistrement de n'importe quel domaine

Aujourd'hui, je veux parler de la façon dont, en 2012, j'ai trouvé une vulnérabilité dans le système d'enregistrement de domaine REG.RU. Très souvent, je vois des histoires dans lesquelles les auteurs parlent de vulnérabilités tout en mentionnant que la société n'a pas prêté suffisamment d'attention au bogue trouvé pendant longtemps ou ne l'a pas corrigé du tout. Dans mon cas, tout était exactement le contraire et la vulnérabilité a été éliminée très rapidement.



En septembre 2012, REG.RU a commencé à enregistrer des domaines dans la zone ru.com et a envoyé des lettres à tous ses clients avec une proposition de recevoir gratuitement pour la première année un domaine dans une nouvelle zone avec le nom d'un domaine déjà enregistré dans les zones ru , rf , su , com , net .

L'obtention d'un domaine gratuit s'est avérée assez simple: il fallait suivre le lien de la lettre, saisir le code d'activation du domaine, et le domaine a été enregistré gratuitement pendant un an.



Avant d'enregistrer un domaine, le système a proposé de se familiariser avec les coordonnées du domaine «original» pour lequel le domaine du cadeau sera enregistré, mais ces données étaient ouvertes uniquement pour la visualisation sans possibilité de modification, de sorte que la signification de leur affichage n'était pas claire. Cependant, c'était le premier bug: l'enregistrement d'un nouveau domaine était disponible via un lien du formulaire https://www.reg.ru/domain/new/get_free_ru_com?service_id=XXXX , et l'ID du service pouvait simplement être énuméré en voyant à qui il était enregistré. un ou un autre domaine.

Les spécialistes de REG.RU se sont assurés que tous les contacts n'étaient pas affichés complètement, mais seuls les 7 premiers caractères de chaque champ étaient affichés, ce qui ne devrait théoriquement pas divulguer complètement les informations sur le propriétaire du domaine, cependant, par exemple, mon nom et mon prénom comptaient moins de 7 caractères et ils est apparu complètement. Eh bien, en plus de tout, si vous montrez les 7 premiers caractères du nom, vous pouvez souvent deviner quels caractères vous devez ajouter, un exemple simple est «Vladimi».

Ce bug a été corrigé assez rapidement, et maintenant le système n'affichait que les 4 premiers caractères, ce qui était bien mieux, même si une personne portant le nom de «Han Solo» ne serait pas très satisfaite.



Le bogue suivant est la possibilité d'enregistrer un domaine sans entrer de code d'activation. Pour empêcher tous les propriétaires de domaine de s'exécuter pour enregistrer des domaines gratuits à la fois, REG.RU a décidé d'envoyer des lettres non pas immédiatement, mais dans quelques jours, afin que la charge soit répartie uniformément. D'un point de vue technique, cela ressemblait à ceci: dans la base de données du tableau avec les domaines, une nouvelle colonne «Code d'autorisation» était créée avec une valeur vide, et de temps en temps des lettres étaient envoyées aux utilisateurs avec le même code remplissant ce champ. Une simple recherche pourrait aller vers un lien comme https://www.reg.ru/domain/new/get_free_ru_com?service_id=XXXX , augmentant l'ID du service à la valeur lorsque le système n'a pas encore réussi à émettre un code d'autorisation pour un tel domaine et enregistrer le domaine avec un espace code.

Il n'y avait rien de mal à enregistrer un tel domaine, mais après l'enregistrement, il est devenu possible de voir les coordonnées complètes (nom, adresse et numéro de téléphone) du propriétaire du domaine «original» sans caractères cachés. Il n'a pas été difficile de corriger ce bogue, en ajoutant simplement une vérification pour un code d'autorisation non vide lors de l'inscription, que les experts REG.RU ont également rapidement corrigé.

Après un certain temps, j'ai trouvé un autre bogue, mais il a fallu un peu plus d'action que de simplement trier les ID de service. Pour simplifier la procédure d'enregistrement des domaines de cadeaux, REG.RU a permis d'enregistrer un domaine sans entrer de code d'autorisation à partir d'une lettre si le compte de messagerie dans le système reg.ru coïncidait avec l'adresse e-mail indiquée comme contact dans le domaine d'origine. C'était assez pratique pour l'utilisateur, mais en termes de sécurité, tout n'était pas si bon.

En 2012, il n'y avait pas de loi sur la protection des données personnelles dans l'édition actuelle, et pour de nombreux domaines de la zone ru , vous pouviez voir l'adresse e-mail de contact via Whois. Au moment où ce bogue a été détecté, l'adresse e-mail était déjà masquée, mais grâce aux services de visualisation de l'historique Whois, vous pouviez voir l'e-mail et, avec une forte probabilité, il était pertinent. Après cela, vous avez dû essayer de vous inscrire dans le système REG.RU avec cette adresse e-mail et après cela, sans code d'autorisation, obtenir un domaine gratuit, qui à son tour a ouvert l'accès aux informations de contact du domaine d'origine.

Pour être bref, la procédure est la suivante:

  1. Nous allons à la page comme https://www.reg.ru/domain/new/get_free_ru_com?service_id=XXXX et regardons le nom de domaine avec cet ID, par exemple habr.ru.com .
  2. Grâce au service Whois History Viewer, nous trouvons l'adresse e-mail du domaine habr.ru.
  3. En utilisant cette adresse e-mail, nous créons un compte dans le système REG.RU (la confirmation de la propriété de l'adresse e-mail n'était alors pas requise).
  4. Sans entrer le code de vérification, nous enregistrons le domaine habr.ru.com et voyons les coordonnées complètes du propriétaire habr.ru.

Les erreurs qui ont été faites par REG.RU pourraient potentiellement entraîner la fuite d'une grande quantité de données personnelles des propriétaires de domaine, mais tous les bugs ont été corrigés très rapidement. Moins de deux jours se sont écoulés depuis le moment de la rédaction de la première lettre (et je l'ai écrite personnellement au directeur exécutif de REG.RU) et avant de corriger toutes les vulnérabilités, ce qui, à mon avis, est assez court pour une entreprise de cette taille et les conditions pour corriger d'autres vulnérabilités dans d'autres sociétés.


Jetez un œil à VPS.today , un site pour trouver des serveurs virtuels. 1400 tarifs de 120 hébergeurs, une interface pratique et un grand nombre de critères pour trouver le meilleur serveur virtuel.

Source: https://habr.com/ru/post/fr429280/


All Articles