W ostatni Patch Tuesday, Microsoft wydał aktualizację bezpieczeństwa MS12-020, aby usunąć dwie ostatnio odkryte dziury w implementacji RDP (Remote Desktop Protocol) Microsoftu. Jedną z nich Microsoft określa jako „krytyczną”, ponieważ może ona umożliwić hakerom uzyskanie kontroli nad LocalSystem na komputerze z systemem Windows z włączonym RDP.
Jak już pewnie słyszeliście, jest to sytuacja wysokiego ryzyka — taka, która może doprowadzić do epidemii równie poważnej jak ta spowodowana przez Code Red, Melissę czy SQL Slammera. Załataj lub napraw teraz!
Microsoft pomoże Ci zrobić obie te rzeczy. Można zainstalować poprawkę lub uruchomić skrypt online Fix It, aby złagodzić problem do czasu zastosowania poprawki. Skrypt włącza uwierzytelnianie na poziomie sieci, które wymaga uwierzytelnienia, zanim zdalny system będzie mógł się połączyć.
Mam jednak inną radę. Jak zalecam od ponad dekady, administratorzy powinni rozważyć uruchomienie usług połączonych z Internetem na portach innych niż domyślne, jeśli to możliwe. W tym konkretnym przypadku, RDP powinno być uruchamiane na innym porcie niż port 3389.
Ta rada rozciąga się na inne obszary. Strony administratora nie powinny być uruchamiane na porcie 80 lub nawet 443. SSH nie powinno nasłuchiwać na porcie 22. Hosty Telnet nie powinny nasłuchiwać na porcie 23. Jedyną powszechną usługą, której nie udało mi się doprowadzić do niezawodnego działania na porcie innym niż domyślny jest FTP: używa portów 21 i 22 (w trybie pasywnym), a nawet jego tryb aktywny (gdzie można wskazać inne porty) nie działa dobrze przez firewalle.
W przypadku RDP, możesz zmienić domyślny port postępując zgodnie z tymi wskazówkami. Kiedy jednak zmienisz domyślny port, musisz wskazać nie-domyślny port w łańcuchu połączenia (na przykład, mstsc.exe 192.168.1.12:50045
).
Moje zalecenie zmiany domyślnego portu nasłuchiwania w usłudze ogólnofirmowej często spotyka się z krytyką. Mój główny argument jest następujący: W większości przypadków, przedsiębiorstwo może zmienić domyślny port nasłuchiwania, co nie powoduje żadnych problemów poza edukacją administratora i jednorazową rekonfiguracją niektórych skryptów i narzędzi, a to znacznie zmniejsza ryzyko ataku z użyciem broni.
Ale hakerzy i złośliwe oprogramowanie mogą użyć skanera portów, takiego jak Nmap, aby znaleźć nowy port, żadne uzbrojone exploity nigdy nie zrobiły skanowania portów, choć łatwo mogłyby. Ten fakt sam w sobie daje ci dużo ochrony.
Niektórzy ludzie nazywają ten rodzaj rekomendacji „bezpieczeństwem przez ukrycie”, tak jakby to była zła rzecz. Jeśli pytasz mnie, bezpieczeństwo przez ukrycie jest jednym z najlepszych sposobów obrony. W przeciwnym razie każdy naród podałby do publicznej wiadomości, gdzie znajdują się jego pociski i atomowe łodzie podwodne, zamiast utrzymywać te informacje w tajemnicy.
Dla mnie robak SQL Slammer jest jednym z najlepszych argumentów za umieszczeniem popularnych usług na portach innych niż domyślne. Wydany w 2003 roku, w ciągu 10 minut wykorzystał prawie każdy możliwy niezałatany i niezabezpieczony serwer SQL podłączony do Internetu. Wystartował wcześnie rano w niedzielę i zanim większość administratorów się obudziła, szkody występowały już od prawie całego dnia roboczego.
W zasadzie, zanim wytarliśmy skorupę soli z naszych oczu, było już po wszystkim – potem spędziliśmy następne 48 godzin (lub dłużej), próbując posprzątać bałagan. To było przebudzenie.
Nikt, kto włączył SQL na porcie innym niż domyślny (czyli na porcie poza 1433 i 1434) nie musiał nic robić — poza spokojnym obserwowaniem, jak wszyscy inni radzą sobie ze swoimi katastrofami. Ci, którzy zmienili porty, nie musieli sprzątać wielkiego bałaganu. Nie musieli się spieszyć z łatkami. Nie mieli wykorzystanych serwerów. Jedna zmiana z minimalnym wpływem operacyjnym i byli w stanie uniknąć ton ryzyka.
Z pewnością inne środki zaradcze działają równie dobrze, takie jak wymaganie ważnego połączenia VPN przed połączeniem z usługą, wymaganie kombinacji wcześniejszych kontaktów z portem przed włączeniem usługi, lub wymaganie pomyślnego uwierzytelnienia przed odpowiedzią usługi (jest to rozwiązanie Fix It firmy Microsoft), i wszystko inne, co może chronić przed atakami z użyciem broni.
Ale nie przychodzi mi do głowy żadne inne proste rozwiązanie zabezpieczające, które zmniejszałoby ryzyko tak skutecznie, jak zmiana domyślnego portu, gdy jest to możliwe. Jeśli zastosujesz się do tej rady, przenieś port na dość wysoki numer, powyżej 10 000 lub 12 000, aby uniknąć możliwych konfliktów portów z innymi istniejącymi usługami. Przetestuj wszystkie urządzenia produkcyjne i zaktualizuj wszelkie potrzebne zapory sieciowe lub serwery proxy. Czytelnicy, którzy zastosowali się do tej rady w przeszłości, nie spieszą się zbytnio w tym tygodniu.