web-dev-qa-db-fra.com

Comment arrêter les attaques par force brute sur Terminal Server (Win2008R2)?

Je connais mieux les outils Linux pour arrêter les attaques par force brute, j'ai donc du mal à trouver des outils appropriés pour Windows. J'utilise Windows Server 2008 R2 avec Terminal Server et j'aimerais bloquer une IP après plusieurs tentatives de connexion via RDP. Des indices?

23
onik

pour arrêter les tentatives de connexion rdp, comme déjà dit, vous avez besoin du contrôle de votre pare-feu pour isoler une adresse IP particulière. Vous pouvez définir certains paramètres dans Outils d'administration -> Gestionnaire des services Terminal Server, mais vous ne pouvez rien faire pour arrêter une IP de cette manière. Peut-être que vous devez envisager un script batch pour écouter le port rdp et contrôler les échecs de connexion, donc s'il y a eu une tentative totale (vous choisissez le numéro ...) par la même IP, alors aucune autre tentative pendant une période connue ne pourrait être. Je ne sais pas si c'est possible, mais ça pourrait être un moyen ...

5
Nicola Boccardi

Vous devriez vraiment bloquer ces tentatives sur votre pare-feu Edge, ne serait-ce qu'avec une limitation de débit. Si vous n'avez pas la possibilité de le faire, lisez la suite.

Si vous ne pouvez pas bloquer le pare-feu Edge et que RDP n'est ouvert qu'à un sous-ensemble d'Internet, utilisez les fonctionnalités intégrées du pare-feu Windows pour verrouiller les connexions entrantes.

Enfin, si vous devez vraiment avoir RDP ouvert à l'ensemble d'Intenet, vous pouvez jeter un œil à la version modifiée de mon bloqueur de force brute SSH programme pour Windows que j'ai dans n dépôt github . Ce script, ts_block, bloque les tentatives d'ouverture de session des services Terminal Server par force brute sur Windows Server 2003, 2008 et 2008 R2. Malheureusement, en raison des modifications apportées aux événements consignés par Windows lors de l'utilisation de la couche de sécurité TLS/SSL pour RDP ce script devient de plus en plus inefficace . (Pourquoi Microsoft a-t-il choisi d'omettre l'adresse IP de l'hôte qui tente de s'authentifier me dépasse. Il me semble que ce serait une chose assez importante à enregistrer, hein?)

25
Evan Anderson

J'ai un programme C # qui fait exactement cela. J'ai eu un problème sur Server 2008 R2 où le journal des événements ne répertoriait pas toujours les adresses IP de l'utilisateur (s'ils se connectaient à partir des clients Remote Desktop plus récents). Certains services implémentent leur propre fournisseur de vérification des informations d'identification qui ne fournit pas toutes les informations que vous souhaitez.

http://cyberarms.net/security-insights/security-lab/remote-desktop-logging-of-ip-address-%28security-event-log-4625%29.aspx

Cependant, pour le Bureau à distance, j'ai découvert qu'entrer dans "Configuration d'hôte de session Bureau à distance" et changer la connexion RDP-TCP pour avoir la couche de sécurité de "Couche de sécurité RDP" au lieu de "Négocier" ou "SSL (TLS 1.0)" ramena le Adresses IP.

Que vous souhaitiez vraiment le faire est une autre question pour vous, "Si vous sélectionnez la couche de sécurité RDP, vous ne pouvez pas utiliser l'authentification au niveau du réseau."

J'ai trouvé http://www.windowsecurity.com/articles/logon-types.html pour être utile. J'ai utilisé EventLogWatcher et lié à "* [System/EventID = 4625 ou System/EventID = 4624]" afin que je puisse réinitialiser un mauvais compte en cas de succès si l'utilisateur venait vraiment de se tromper de mot de passe. J'ai également ajouté à la liste blanche: 1, 0.0.0.0, 127.0.0.1 et "-". Vous pouvez ou non souhaiter mettre sur liste blanche les IP LAN/gestion.

J'utilise Forefront TMG, j'ai donc utilisé l'API pour ajouter de mauvaises adresses IP à un groupe d'adresses IP de cette façon et j'ai demandé à Cisco d'ajouter l'accès API à l'un de leurs SMB routeurs (dont ils disposent) m'a assuré qu'ils pourraient bien faire!)

Si vous souhaitez utiliser le pare-feu Windows natif pour les bloquer, jetez un œil à l'API pour cela ("netsh advfirewall").

J'autorise x nombre de tentatives avant d'interdire et un succès réinitialisera le décompte.

3
Matthew1471

Essayez-vous d'empêcher les effractions ou les journaux encombrés? Si vous essayez d'empêcher les introductions par effraction, Windows a un moyen intégré de bloquer les tentatives de connexion. Il existe un paramètre de stratégie de groupe de seuil de verrouillage de compte dans Configuration ordinateur -> Stratégies -> Paramètres Windows -> Paramètres de sécurité -> Politique de compte -> Politique de verrouillage de compte.

Les attaquants utiliseront des noms d'utilisateur courants comme Administrateur, et ils les verrouilleront certainement. Vous auriez besoin d'un compte séparé pour l'administration réelle, ce qui est probablement conseillé de toute façon.

Le blocage automatique au niveau du pare-feu nécessitera une lecture de journal scriptée avec mise à jour automatique des règles de pare-feu. Vous devriez pouvoir ajouter des règles basées sur l'adresse IP de cette façon. C'est essentiellement ce que fait iptables dans un système Linux.

Cela peut être un peu évident, mais avez-vous également envisagé d'exécuter les services Bureau à distance sur un port non standard ? Cela a été très efficace pour moi pour contrecarrer les effractions.

2
Joel E Salas

Il existe également quelques autres solutions si vous souhaitez plutôt avoir une solution basée sur une interface graphique et créer réellement différents ensembles de règles pour différents événements. Le plus simple serait RDPGuard (hxxp: //www.rdpguard.com), mais dans un environnement d'entreprise, vous voudrez probablement plus de rapports, comme la provenance de l'attaque (pays, origine) et le nom d'utilisateur utilisé afin que vous puissiez rapidement décidez si c'est l'un de vos propres utilisateurs qui se bloque accidentellement ou essaie de se connecter là où vous ne le savez pas.

Personnellement, j'aime Syspeace (hxxp: //www.syspeace.com) qui fait tout cela pour nous mais j'avais pensé que je les mentionnerais quand même

1
Juha Jurvanen

La solution est simple: configurez le pare-feu Windows de sorte que seules les adresses IP sur liste blanche puissent RDP dans les zones souhaitées. Voir la ressource suivante: Comment puis-je autoriser l'accès RDP à un serveur Windows 2008R2 à partir d'une adresse IP?

0
sean2078

Comment bloquer gratuitement les attaques par force brute RDP sur votre serveur Web Windows

https://www.itsmdaily.com/block-rdp-brute-force-attacks-windows-webserver-free/

Problème de mémoire !!!!!!: https://gitlab.com/devnulli/EvlWatcher/issues/2

fail2ban, pour Windows.

https://github.com/glasnt/wail2ban

0
user956584

Nous avons eu une attaque par force brute sur notre serveur RDS 2012r2 de l'extérieur et n'avons pas pu collecter directement les informations IP source et parce qu'il utilise TLS/SSL, même le pare-feu a eu du mal à collecter les informations. Je suis tombé sur ce produit qui fonctionne comme un champion et qui est très abordable. RDPGuard Ils offrent un essai gratuit de 30 jours entièrement fonctionnel. Exécutez-le et voyez ce qui se passe vraiment.

0
jesse lyon