Atténuation de la prise de contrôle des sous-domaines dans Azure App Service

Les acquisitions de sous-domaines constituent une menace courante pour les organisations qui créent et suppriment régulièrement de nombreuses ressources. Elles peuvent se produire lorsqu’un enregistrement DNS pointe vers une ressource Azure déprovisionnée. Ces enregistrements DNS sont également appelés entrées « DNS non résolues ». Les prises de contrôle de sous-domaines permettent à des acteurs malveillants de rediriger le trafic destiné au domaine d’une organisation vers un site effectuant une activité malveillante.

Les risques de l’acquisition de sous-domaine comprennent :

  • Perte de contrôle sur le contenu du sous-domaine
  • Récolte de cookies à partir de visiteurs à leur insu
  • Campagnes de hameçonnage
  • Autres risques d’attaques classiques comme XSS, CSRF, CORS

Apprenez-en plus sur la prise de contrôle de sous-domaine dans DNS et sous-domaines non résolus.

Azure App Service fournit un Service de réservation de noms et des jetons de vérification de domaine pour empêcher les prises de contrôle de sous-domaines.

Comment App Service empêche la prise de contrôle des sous-domaines

Au moment de la suppression d’une application App Service ou App Service Environment (ASE), la réutilisation immédiate du DNS correspondant est interdite, sauf pour les abonnements appartenant au tenant (locataire) de l’abonnement qui possédait initialement le DNS. Par conséquent, le client dispose d’un certain temps pour nettoyer tous les pointeurs/associations dans le DNS concerné ou récupérer le DNS dans Azure en recréant la ressource avec le même nom. Ce comportement est activé par défaut sur le service Azure App Service pour les ressources « *.azurewebsites.net » et « *.appserviceenvironment.net », de sorte qu’il ne nécessite aucune configuration client.

Exemple de scénario

L’abonnement « A » et l’abonnement « B » sont les seuls abonnements appartenant à un locataire « AB ». L’abonnement « A » contient une application App Service « test » avec le nom de DNS « test’.azurewebsites.net ». Lors de la suppression de l’application, seul l’abonnement « A » ou l’abonnement « B » peut réutiliser immédiatement le nom de DNS « test.azurewebsites.net » en créant une application web nommée « test ». Aucun autre abonnement n’est autorisé à revendiquer le nom juste après la suppression de la ressource.

Comment empêcher les prises de contrôle de sous-domaine

Lors de la création d’entrées DNS pour Azure App Service, créez un enregistrement TXT asuid.{sous-domaine} avec l’ID de vérification du domaine. Lorsqu’il existe un enregistrement TXT, aucun autre abonnement Azure ne peut valider le domaine personnalisé ou le prendre en charge, sauf en ajoutant son ID de vérification de jeton aux entrées DNS.

Ces enregistrements empêchent la création d’une autre application App Service avec le même nom que votre entrée CNAME. Sans moyen de prouver la propriété du nom de domaine, les auteurs de menaces ne peuvent pas recevoir de trafic ni contrôler le contenu.

Les enregistrements DNS doivent être mis à jour avant la suppression du site pour s’assurer que les acteurs malveillants ne peuvent pas prendre le domaine entre la période de suppression et la recréation.

Pour obtenir un ID de vérification de domaine, consultez le tutoriel Mapper un domaine personnalisé