Comment résoudre l'exposition du service RDP sur Internet ?

Comment résoudre l'exposition du service RDP sur Internet ?

Solutions

Comment résoudre l'exposition du service RDP sur Internet ?

Comment résoudre l'exposition du service RDP sur Internet ?

Comment résoudre l'exposition du service RDP sur Internet ?

Comment résoudre l'exposition du service RDP sur Internet ?

Comment résoudre l'exposition du service RDP sur Internet ?

Comment résoudre l'exposition du service RDP sur Internet ?

Protection du service RDP

Le protocole RDP (Remote Desktop Protocol) est un protocole propriétaire de Microsoft qui permet la connexion à un autre ordinateur à distance, généralement via le port TCP 3389 à des fins d'administration.

Représentant un point d'entrée vital pour une entreprise, il est très souvent utilisé par des attaquants pour accéder à son système d'information et effectuer des mouvements latéraux.

circle-info

Il suffit, par exemple, qu'un service RDP exposé

  • soit affecté par une vulnérabilité publique (comme BlueKeep)

  • ou que les identifiants ne soient pas suffisamment robustes

pour créer une faille exploitable par un attaquant.

Par conséquent, ce service devrait être exposé uniquement depuis le réseau interne du système d'information et ne jamais être accessible depuis Internet.

Solutions

La plupart des services RDP observés sont utilisés pour deux raisons :

  • Administration à distance

  • Accès aux documents

Concernant l'administration à distance, il est possible d'envisager les options suivantes (par ordre décroissant de préférence) :

  • Mise en place d'une passerelle RDP, appelée RDG (Remote Desktop Gateway)

  • Déploiement d'un VPN (Virtual Private Network)

  • Renforcement (hardening) du service RDP

Si la seconde raison s'applique, à savoir l'accès à des documents internes, l'adoption de Microsoft O365 et de son espace de stockage SharePoint doit être privilégiée.

Mise en place d'une passerelle RDP

Description

La passerelle Remote Desktop, également appelée RDG (Remote Desktop Gateway), a pour objectif de fournir un moyen sécurisé de connexion aux serveurs Windows au sein d'un réseau interne. En effet, elle agit comme intermédiaire entre un client et un serveur afin de protéger l'exposition de tout service RDP : seule la passerelle est exposée aux clients. Elle utilise un tunnel HTTP SSL/TLS et n'expose donc que le port 443. Cette passerelle doit être située dans une DMZ existante.

Installation de la passerelle :

Pour commencer l'installation de la passerelle, il est nécessaire de se connecter au serveur Windows sur lequel elle sera déployée. Une fois connecté, il est possible d'ouvrir l'application de gestion du serveur appelée « Server Manager ».

Ajout du rôle passerelle

Une fois lancé, il est nécessaire d'accéder à la fonctionnalité « Add Roles and Features » depuis l'onglet « Manage » de l'application Server Manager :

Ensuite, vous pouvez procéder à l'installation en cliquant sur le bouton « Next » :

Le type d'installation « Role-based or feature-based installation » doit être sélectionné avant de passer à la section suivante via le bouton « Next » :

Cette étape permet de sélectionner le serveur sur lequel la passerelle sera installée. Une fois que vous l'avez identifié, cliquez sur le bouton « Next » pour continuer :

Cet onglet permet de sélectionner les rôles à ajouter au serveur. Vous devez sélectionner « Remote Desktop Services » avant de cliquer sur « Next » pour continuer :

Certaines fonctionnalités peuvent être implémentées sur le serveur depuis cet onglet. Vous pouvez laisser les fonctionnalités par défaut sélectionnées et continuer :

Il s'agit d'un onglet informatif sur les services de bureau à distance ; il peut être ignoré :

Depuis cet onglet, le service de passerelle de bureau à distance, à savoir « Remote Desktop Gateway », doit être sélectionné. La fenêtre suivante est affichée à l'utilisateur :

Depuis cet onglet, le service de passerelle de bureau à distance, à savoir « Remote Desktop Gateway », doit être sélectionné. La fenêtre suivante est affichée à l'utilisateur.

Certains onglets, liés aux fonctionnalités sélectionnées précédemment, ont été ajoutés automatiquement. Cliquez sur « Next » pour y accéder :

Ce nouvel onglet contient des informations sur la fonctionnalité Network Policy and Access Service. Cliquez sur « Next » pour passer à la section suivante :

Ce nouvel onglet contient des informations sur la fonctionnalité de serveur web. Cliquez sur « Next » pour passer à la section suivante :

Une liste représentant tous les services liés au serveur web (IIS) est affichée. Il est nécessaire de conserver cette configuration par défaut avant de poursuivre :

Une fenêtre récapitulant tous les services et outils qui seront installés est affichée à l'utilisateur. Cliquez sur le bouton « Install » pour confirmer l'installation (vous pouvez autoriser le redémarrage automatique du serveur en cochant la case « Restart the destination server automatically ») :

L'installation est terminée :

Configuration de la passerelle

Une fois l'installation terminée, vous devez configurer la passerelle de bureau à distance en lançant son outil de gestion depuis l'application « Server Manager » et l'onglet « Tools », comme illustré sur la figure suivante :

Une fois l'outil lancé, la fenêtre ci-dessous s'affiche à l'utilisateur après avoir sélectionné le nom du serveur dans l'interface de gauche. La passerelle Remote Desktop nouvellement installée doit être configurée. Pour ce faire, vous pouvez commencer par importer un certificat en cliquant sur la fonctionnalité « View or modify certificate properties » :

Aucun certificat n'est installé sur la passerelle. Deux options sont possibles :

  1. Créer un certificat auto-signé

  2. Ou importer un certificat correspondant au serveur émis par une autorité de certification reconnue.

Le meilleur choix est la deuxième option. Pour cela, il suffit de

  • Sélectionner l'option « Import a certificate into the RD Gateway Certificates (Local Computer)/Personal store »,

  • Puis l'importer en utilisant le bouton « Browse and Import Certificate » :

Si un certificat auto-signé doit être créé et utilisé, sélectionnez simplement l'option « Create a self-signed certificate » et cliquez sur le bouton « Create and Import Certificate ». La fenêtre suivante apparaîtra :

Le nom complet du serveur doit être saisi dans le premier champ, « Certificate name ». Ce certificat doit ensuite être récupéré depuis le serveur et importé sur toutes les machines futures utilisant cette passerelle.

Une fois cette étape terminée, la fenêtre ci-dessous réapparaîtra. Les informations du certificat importé seront mises à jour, indiquant que l'importation a réussi.

Cliquez sur « OK » pour finaliser la configuration de la passerelle :

Des règles d'accès doivent être ajoutées afin que cette passerelle puisse être utilisée correctement. Pour ce faire, cliquez sur le menu déroulant du serveur sur la partie gauche de l'interface de l'application RD Gateway Manager, puis cliquez sur Policies et enfin sur Create New Authorization Policies, comme montré sur la figure ci-dessous :

La fenêtre suivante s'affiche à l'utilisateur. Deux règles d'accès doivent être créées :

  • Une règle d'accès pour la passerelle (appelée RD CAP) et

  • Une règle d'accès pour les ressources internes depuis la passerelle (appelée RD RAP).

Pour ce faire, sélectionnez « Create a RDP CAP and a RD RAP (recommended) » puis cliquez sur « Next » :

Il est nécessaire de choisir un nom approprié pour la règle CAP avant de continuer via le bouton « Next » :

Il est nécessaire de choisir un nom approprié pour la règle CAP avant de continuer via le bouton « Next » :

Cette étape permet de définir les propriétés de redirection de la règle CAP. En fonction de certains besoins métiers (et pour des raisons de facilité d'utilisation), certaines redirections peuvent être importantes et nécessaires, comme le copier-coller (« Clipboard ») :

  • Si certaines redirections ne sont pas nécessaires, il est recommandé de sélectionner l'option « Disable device redirection for the following client device types » puis de les sélectionner afin de renforcer la configuration de la passerelle.

  • Si toutes les redirections sont nécessaires, sélectionnez l'option « Enable device redirection for all client devices » puis cliquez sur « Next ».

Cette fenêtre sert à configurer la déconnexion et l'expiration des sessions utilisateur. Il est recommandé d'activer ces options afin de renforcer la configuration de la passerelle avant de continuer en cliquant sur le bouton « Next » :

Un récapitulatif de la configuration de la règle CAP apparaît. Vous devez maintenant configurer la règle RAP en cliquant sur le bouton « Next » :

Un récapitulatif de la configuration de la règle CAP apparaît. Vous devez maintenant configurer la règle RAP en cliquant sur le bouton « Next ».

De la même manière que pour la règle CAP, seuls le(s) groupe(s) contenant des utilisateurs légitimes autorisés à utiliser la passerelle pour accéder aux ressources internes doivent être sélectionnés dans la case « User group membership (required) » via le bouton « Add Group... ».

circle-info

Idéalement, un groupe d'utilisateurs spécifique devrait être créé pour cet accès au sein d'Active Directory afin d'assurer leur légitimité.

Vous pouvez alors poursuivre en cliquant sur le bouton « Next » :

Cette fenêtre sert à spécifier toutes les ressources internes accessibles depuis la passerelle.

circle-info

Il est recommandé de créer un groupe de domaine contenant tous les serveurs légitimes pouvant être accessibles depuis cette passerelle et de le spécifier en utilisant l'option « Select and Active Directory Domain Services network resource group ».

Les ports d'accès utilisés doivent être spécifiés, soit le port par défaut 3389 pour le service RDP, soit un autre port ou d'autres ports si nécessaire :

De la même manière que pour la règle CAP, un récapitulatif de la configuration de la règle RAP apparaît. Vous devez confirmer en cliquant sur le bouton « Next » :

Une fenêtre apparaît, confirmant les règles CAP et RAP :

Lancement du service de la passerelle

Enfin, le service de la passerelle peut être arrêté. Vous pouvez vérifier son état et l'activer s'il n'est pas déjà en fonctionnement, comme montré sur la figure suivante.

Depuis l'onglet Remote Desktop Services dans l'application Server Manager, l'onglet « Servers » et la section « Services », le service de la passerelle est identifié par son nom « Remote Desktop Gateway ».

Il peut être démarré si nécessaire en cliquant avec le bouton droit sur ce service puis en cliquant sur « Start Services » :

Filtrage des flux

Lorsque les serveurs internes doivent n'être accessibles que depuis la passerelle, il est nécessaire de configurer leur pare-feu interne.

Pour ce faire, il suffit d'accéder à la configuration du pare-feu Windows et de lister les flux entrants (« Inbound Rules » ou « Incoming Traffic Rules »), comme montré sur la figure suivante.

Parmi eux se trouve la règle nommée « Remote Desktop - User Mode (TCP-In) », correspondant au trafic RDP entrant du système Windows. Vous pouvez analyser ses propriétés en cliquant avec le bouton droit et en sélectionnant « Properties » :

Vous devez ensuite aller à l'onglet « Scope » pour configurer le filtrage du trafic RDP entrant :

Dans la section « Remote IP Address », vous devez spécifier toutes les adresses IP depuis lesquelles le trafic RDP entrant est autorisé :

  • Si tous ces flux doivent passer par la passerelle, l'adresse IP de la passerelle doit être spécifiée.

  • Si la passerelle est installée sur le serveur auquel une connexion RDP est effectuée, l'adresse IP « 127.0.0.1 » doit être spécifiée.

Démarrage d'une connexion RDP

La connexion RDP depuis une machine et un utilisateur légitimes vers un serveur interne via la passerelle doit être configurée.

Après avoir lancé l'application « Remote Desktop Connection », vous devez configurer la passerelle dans l'onglet « Advanced », puis « Settings », comme montré sur la figure suivante :

La fenêtre suivante apparaîtra :

  • Sélectionnez l'option « Use these RD Gateway server settings »

  • Saisissez le nom complet de la passerelle RDP précédemment configurée

  • Cochez la case « Use my RD Gateway credentials for the remote computer »

  • Confirmez la configuration en cliquant sur « OK

Ensuite, il suffit de revenir à l'onglet général de l'application, de saisir le nom ou l'adresse IP du serveur interne auquel le client souhaite se connecter et son nom d'utilisateur, avant de cliquer sur le bouton « Connect » comme montré sur la figure suivante :

Une fenêtre s'affiche à l'utilisateur afin qu'il puisse vérifier le nom ou l'adresse IP de la passerelle RDP et saisir le mot de passe du compte utilisateur qu'il a saisi précédemment :

Ensuite, soit la connexion réussit, soit le certificat de la passerelle n'est pas reconnu par la machine cliente (cas fréquent avec un certificat auto-signé ou signé par une autorité de certification interne), et ce message est renvoyé :

Renforcement du protocole RDP

Dans le cas où il serait nécessaire d'exposer le protocole RDP sur Internet, voici plusieurs mesures de renforcement pour sécuriser le protocole.

circle-info

Il convient de noter que ces méthodes ne sont pas suffisantes pour garantir la sécurité des services et ne doivent être utilisées qu'à titre temporaire.

Restreindre l'accès des utilisateurs

La première étape du renforcement consiste à créer un groupe d'utilisateurs Active Directory qui sera autorisé à se connecter à distance. Vous pouvez le faire via la console de gestion des groupes (Group Policy Management Consolearrow-up-right).

  • Dans la console, sélectionnez Configuration > Windows Settings, Security Settings > Group Restrictions. ;

  • Cliquez avec le bouton droit sur Group Restriction puis cliquez sur Add Group ;

  • Cliquez sur Search > Remote Access > Names, puis sélectionnez Remote Desktop Users.

Sélectionnez les utilisateurs qui auront besoin de cet accès RDP, puis cliquez sur OK :

Désactiver le compte invité

Le système d'exploitation Windows Server 2012 R2 possède un compte invité par défaut. Il est nécessaire de le désactiver afin d'empêcher un attaquant de tenter d'élever ses privilèges sur le serveur.

Pour ce faire, tapez la commande compmgmt.msc dans une invite de commandes pour ouvrir Gestion de l'ordinateur (Computer Management).

Verrouiller temporairement un compte en cas d'attaque par force brute

Les tentatives de connexion à un compte utilisateur doivent alerter le système afin d'empêcher un attaquant de lancer des attaques par force brute jusqu'à ce qu'il identifie un mot de passe valide.

Pour ce faire,

  • Tapez la commande gpedit.msc pour ouvrir l'Éditeur de stratégie de groupe locale (Local Group Policy Editor)

  • Cliquez sur Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Connections > Limit the number of connections

circle-info

Nous recommandons de verrouiller le compte après 5 tentatives de connexion échouées.

Utiliser une politique de mot de passe robuste

Pour réduire le risque d'une attaque par force brute ou par dictionnaire réussie, la première chose à faire est d'utiliser des mots de passe robustes avec tous types de caractères : majuscules, minuscules, chiffres et caractères spéciaux.

Pour configurer ceci,

  • Tapez la commande gpedit.msc dans une invite de commandes pour ouvrir l'Éditeur de stratégie de groupe locale

  • Cliquez sur Computer Configuration > Windows Settings > Security Settings > Account Policies > Password Policy.

Mis à jour

Ce contenu vous a-t-il été utile ?