Jestem bardziej zaznajomiony z narzędziami Linuksa, aby powstrzymać ataki siłowe, więc mam problem ze znalezieniem odpowiednich narzędzi dla systemu Windows. Korzystam z systemu Windows Server 2008 R2 z serwerem terminali i chciałbym zablokować adres IP po wielokrotnych próbach logowania przez RDP. Jakieś wskazówki?
23
Odpowiedzi:
aby zatrzymać próby logowania rdp, jak już powiedziano, potrzebujesz kontroli zapory ogniowej w celu odizolowania konkretnego adresu IP. Możesz dokonać pewnych ustawień w Narzędziach administracyjnych -> Menedżer usług terminalowych, ale nie możesz nic zrobić, aby zatrzymać jeden adres IP w ten sposób. Być może musisz rozważyć skrypt wsadowy do nasłuchiwania portu rdp i kontrolowania błędów logowania, więc jeśli byłyby próby totu (wybierasz liczbę ...) przez ten sam adres IP, to żadna inna próba w znanym okresie czasu nie mogłaby być. Nie jestem pewien, czy to możliwe, ale może to być sposób ...
źródło
Naprawdę powinieneś zablokować te próby na skrajnej zaporze ogniowej, choćby z ograniczeniem szybkości. Jeśli nie możesz tego zrobić, czytaj dalej.
Jeśli nie możesz zablokować zapory brzegowej i potrzebujesz protokołu RDP otwartego tylko dla części Internetu, użyj wbudowanych funkcji Zapory systemu Windows, aby zablokować połączenia przychodzące.
Na koniec, jeśli naprawdę musisz mieć RDP otwarty dla całego Intenetu, możesz rzucić okiem na zmodyfikowaną wersję mojego programu SSH do blokowania brutalnej siły dla Windows, który mam w repozytorium github . Ten skrypt, ts_block, blokuje brute force próby logowania usług terminalowych w systemach Windows Server 2003, 2008 i 2008 R2. Niestety ze względu na zmiany zdarzeń rejestrowanych przez system Windows podczas korzystania z warstwy zabezpieczeń TLS / SSL dla protokołu RDP skrypt ten staje się coraz bardziej nieskuteczny . (Dlaczego Microsoft postanowił pominąć adres IP hosta, który próbuje się uwierzytelnić, jest poza mną. Wydaje się, że rejestrowanie tego byłoby bardzo ważne, prawda?)
źródło
ts_block
skryptu tutaj znajduje się rozwiązanie, które wykorzystujefail2ban
bramę do blokowania atakujących: wqweto.wordpress.com/2013/12/10/…Mam program w języku C #, który robi dokładnie to. Miałem problem z serwerem 2008 R2, w którym dziennik zdarzeń nie zawsze zawierał adresy IP użytkownika (jeśli łączył się z nowszymi klientami pulpitu zdalnego). Niektóre usługi wdrażają własnego dostawcę weryfikacji danych, który nie zapewnia wszystkich potrzebnych informacji.
http://cyberarms.net/security-insights/security-lab/remote-desktop-logging-of-ip-address-%28security-event-log-4625%29.aspx
W przypadku Pulpitu zdalnego odkryłem jednak, że przejście do „Konfiguracji hosta sesji pulpitu zdalnego” i zmiana połączenia RDP-TCP na warstwę zabezpieczeń „Warstwa zabezpieczeń RDP” zamiast „Negocjuj” lub „SSL (TLS 1.0)” przywróciły Adresy IP.
To, czy naprawdę chcesz to zrobić, to kolejne pytanie: „Jeśli wybierzesz warstwę zabezpieczeń RDP, nie będziesz mógł używać uwierzytelniania na poziomie sieci”.
Uważam, że http://www.windowsecurity.com/articles/logon-types.html jest pomocny. Użyłem EventLogWatcher i związałem się z „* [System / EventID = 4625 lub System / EventID = 4624]”, więc mogłem zresetować złe liczenie na sukces, jeśli użytkownik naprawdę pomylił swoje hasło. Również dodałem do białej listy: 1, 0.0.0.0, 127.0.0.1 i „-”. Możesz lub nie chcesz umieszczać na białej liście LAN / adresy IP zarządzania.
Korzystam z Forefront TMG, więc użyłem API, aby w ten sposób dodać złe adresy IP do grupy adresów IP i poprosiłem Cisco o dodanie dostępu API do jednego z ich routerów SMB (co zapewniło mnie, że może to zrobić!)
Jeśli chcesz użyć natywnej Zapory systemu Windows do ich zablokowania, zapoznaj się z interfejsem API („netsh advfirewall”).
Dopuszczam x liczby prób przed zbanowaniem, a sukces zresetuje liczenie.
źródło
Czy próbujesz zapobiec włamaniom lub zaśmieconym dziennikom? Jeśli próbujesz zapobiec włamaniom, system Windows ma wbudowany sposób blokowania prób zalogowania się. W programie Konfiguracja komputera -> Zasady -> Ustawienia systemu Windows -> Ustawienia zabezpieczeń -> ustawiono Zasady grupy dotyczące progu blokady konta. Zasady konta -> Zasady blokady konta.
Atakujący będą używać popularnych nazw użytkowników, takich jak Administrator, i na pewno je zablokują. Będziesz potrzebował osobnego konta do faktycznej administracji, co prawdopodobnie jest i tak wskazane.
Automatyczne blokowanie na poziomie zapory będzie wymagało odczytu skryptów z automatyczną aktualizacją reguł zapory. W ten sposób powinieneś być w stanie dodać reguły oparte na adresie IP. Jest to w zasadzie to, co robi iptables w systemie Linux.
Może to być nieco oczywiste, ale czy rozważałeś także uruchomienie usług pulpitu zdalnego na niestandardowym porcie ? To było dla mnie bardzo skuteczne w pokonywaniu włamań.
źródło
Istnieje kilka innych rozwiązań, także jeśli chcesz zamiast tego korzystać z GUI i naprawdę stworzyć różne zestawy reguł dla różnych zdarzeń. Najłatwiejszy byłby RDPGuard (hxxp: //www.rdpguard.com), ale w środowisku korporacyjnym prawdopodobnie potrzebujesz więcej raportów, takich jak skąd przyszedł atak (kraj, pochodzenie) i jaka nazwa użytkownika została użyta, abyś mógł szybko zdecyduj, czy to jeden z twoich użytkowników przypadkowo się zablokował lub próbował zalogować się z miejsca, w którym wiesz, że nie.
Osobiście lubię Syspeace (hxxp: //www.syspeace.com), który robi to wszystko dla nas, ale pomyślałem, że i tak wspomnę o nich obu
źródło
Rozwiązanie jest proste: skonfiguruj Zaporę systemu Windows, aby tylko adresy IP z białej listy mogły RDP w wybranych polach. Zobacz następujący zasób: Jak mogę zezwolić na dostęp RDP do serwera Windows 2008R2 z jednego adresu IP?
źródło
Jak zablokować ataki RDP brute force na twój serwer Windows za darmo
https://www.itsmdaily.com/block-rdp-brute-force-attacks-windows-webserver-free/
Problem z pamięcią !!!!!!: https://gitlab.com/devnulli/EvlWatcher/issues/2
fail2ban, dla systemu Windows.
https://github.com/glasnt/wail2ban
źródło