Configuration automatique du compte Microsoft Outlook
Une fois que l’utilisateur a rempli tous les détails, Outlook essaiera alors d’utiliser la découverte automatique afin de configurer le client.
Cette étape du processus ressemble à ceci :
Processus de configuration automatique du compte Microsoft Outlook
Cependant, pour bien comprendre le fonctionnement d’Autodiscover, nous devons connaître ce qui se passe “en coulisses” :
Le client analyse l’adresse e-mail fournie par l’utilisateur – amit@example.com.
Le client essaie ensuite de construire une URL Autodiscover basée sur l’adresse e-mail avec le format suivant :
https://Autodiscover.example.com/Autodiscover/Autodiscover.xml
http://Autodiscover.example.com/Autodiscover/Autodiscover.xml
https://example.com/Autodiscover/Autodiscover.xml
http://example.com/Autodiscover/Autodiscover.xml
Si aucune de ces URL ne répond, Autodiscover lance sa procédure de “back-off”.
Ce mécanisme de “back-off” est le “coupable” de cette fuite car il essaie toujours de résoudre la partie Autodiscover du domaine et il essaiera toujours d'”échouer”, en quelque sorte.
Autrement dit, le résultat de la prochaine tentative de construction d’une URL Autodiscover sera : http://Autodiscover.com/Autodiscover/Autodiscover.xml.
Cela signifie que le propriétaire d’Autodiscover.com recevra toutes les demandes qui ne peuvent pas atteindre le domaine original.
Pour plus d’informations sur le fonctionnement d’Autodiscover, veuillez consulter la documentation de Microsoft.
Processus de “back-off” de la découverte automatique
exemple d’une simple requête HTTP GET avec l’en-tête Authorization déjà renseigné avec les informations d’identification
En règle générale, les requêtes Web ne doivent pas être envoyées aveuglément pré-authentifiées, mais plutôt en suivant le processus d’authentification HTTP :
- Un client demande l’accès à une ressource protégée.
- Le serveur Web renvoie une boîte de dialogue qui demande le nom d’utilisateur et le mot de passe (conformément aux méthodes d’authentification prises en charge, dans notre cas, l’authentification de base).
- Le client soumet le nom d’utilisateur et le mot de passe au serveur.
- Le serveur authentifie l’utilisateur et renvoie la ressource demandée.
Processus d’authentification de base HTTP illustré
Comme on peut le voir dans l’extrait suivant, les noms d’hôtes apparaissant dans le journal (supprimés pour des raisons de confidentialité) sont les domaines à partir desquels les clients d’Autodiscover ont essayé de s’authentifier, ainsi que leurs noms d’utilisateur et mots de passe respectés :
2021 – 05 – 18 03 : 30 : 45 W3SVC1 instance- 2 10.142.0.4 GET /Autodiscover/Autodiscover.xml – 80 – <adresse IP nettoyée> HTTP/ 1.1 Microsoft+Office/16.0+(Windows+NT+10.0;+Microsoft +Outlook+16.0.13901;+Pro) – -<domaine de la victime nettoyé> 404 0 2 1383 301 265 <domaine de la victime nettoyé> Basic+<informations d’identification codées en base64 nettoyées>= – – 2021 – 05 – 18 03 : 30 : 52 instance W3SVC1 – |
Le problème intéressant d’une grande partie des demandes que Guardicore Lab a reçues est qu’il n’y a aucune tentative du côté du client de vérifier si la ressource est disponible, ou même existe sur le serveur, avant d’envoyer une demande authentifiée.
Habituellement, la façon de mettre en œuvre un tel scénario serait de vérifier d’abord si la ressource que le client demande, est valide, car elle pourrait être inexistante (ce qui déclencherait une erreur HTTP 404) ou alors protégée par un mot de passe (ce qui déclencherait un code d’erreur HTTP 401), comme le montre le schéma ci-dessus.
Mais après une inspection minutieuse et des tests manuels de divers programmes, Guardicore est arrivé à la conclusion que cet agent utilisateur est également émis par Mail; le client de messagerie intégré à Windows :
En examinant les domaines de ces informations d’identification divulguées, Guardicore a pu trouver des informations d’identification de diverses entreprises dans plusieurs secteurs verticaux :
Illustation de l’ancienne attaque switcheroo
En observant les journaux du serveur HTTP, nous pouvons voir que le client est rétrogradé avec succès après avoir reçu la réponse HTTP 401 du serveur, lui indiquant d’utiliser l’authentification de base HTTP :
Ancienne attaque switcheroo réussie
Remarque : le “Token” de support (vide) est envoyé dans le cadre du processus d’autodécouverte de l’environnement, qui est décrit plus en détail dans la documentation de Microsoft.
Du côté de la victime, cependant, il est difficile de se rendre compte que l’utilisateur subit une attaque quelconque.
Lorsque la victime est redirigée vers le serveur Autodiscover de Guardicore en raison de la fuite, une alerte de sécurité s’affiche :
Alerte de sécurité demandée par Microsoft Outlook
Cet avertissement indique que même si le certificat est valide, il est auto-signé et ne doit pas être approuvé.
Cependant, cela pourrait être facilement évité en déployant un véritable certificat SSL.
Dans le cas de Guardicore, l’équipe a déployé un certificat LetsEncrypt en quelques secondes, ce qui a résolu le problème de l’affichage de l’avertissement SSL.
Installation de certificats SSL LetsEncrypt avec WinAcme
autodiscover.sg est maintenant sécurisé avec un certificat valide
Une fois qu’une session sécurisée a été établie, la victime verra maintenant cette invite d’authentification légitime affichée par Microsoft Outlook :
Boîte de dialogue d’authentification de base affichée dans Outlook à la suite d’une ancienne attaque switcheroo réussie
La sécurité DNS de Guardicore Centra permet de créer des règles de blocage pour les noms de domaine Autodiscover
Source : Guardicore
Pour plus d’informations concernant les solutions GuardiCore