Raporty i dokumentacja Blokowanie portów na platformie Windows 2003 Server. Opis działajcych usług. Autor: Piotr Szczepanik <piotr@szczepanik.org> Data: 5 stycze 2004
Koszmarami nocnymi kadego administratora cho troch przejmujcego si losami "maszyn" jemu powierzonych s z pewnoci wizyty nieupowanionych osób "wewntrz" systemu, a przede wszystkim uzyskanie przez takowe dostpu do danych. O ile w przypadku regularnego "łatania" systemu poprzez instalacj poprawek wydawanych przez producenta prawdopodobiestwo uzyskania dostpu do serwera przy wykorzystaniu nieznanej luki jest znikome o tyle włamanie poprzez niepoprawn konfiguracj leniwego admina jest jake realne. Konsekwencje takiej wizyty mog by wprost proporcjonalne do wartoci funkcji, jak spełnia dana maszyna i inwencji hakera. I tak moemy liczy si, np. z publikacj naszych "tajnych" zapisek z pamitnika, kompromitacj wizerunku firmy, na stronie której opublikowane zostały informacje na temat naszych klientów czy bezporednich strat finansowych w przypadku firm, których funkcjonowanie zaley od sprawnego systemu informatycznego (a niewiele jest teraz takich, które nie s uzalenione). W wielu sytuacjach udany atak typu DoS (Denial of Service) koczcy si "unieruchomieniem" maszyny moe tak samo działa na nasz niekorzy jak i utrata poufnoci danych. Zarówno sposobów uniknicia niepodanego dostpu jak i metod na jego uzyskanie jest bardzo wiele. Poczwszy od przeszkolenia osób majcych chociaby najmniejszy, uprawniony dostp do sieci i serwera a na wymylnych systemach autentykacji, szyfrowania, detekcji ataków, itp... skoczywszy. W tym artykule chciałbym skupi si na jednej z najczciej wykonywanej za pomoc firewall'a czynnoci - blokowaniu portów - pozwala ona na zmniejszenie zbdnego ruchu w sieci jak i zwikszenie jej bezpieczestwa. Nie bd przedstawiał poszczególnych sposobów blokowania portów przy uyciu "zapór ogniowych" rónej produkcji. Skupi si na przedstawieniu podstawowych usług jakie działaj na serwerach opartych o system Windows 2003 Server. Postaram si te przedstawi informacje przydatne w wypuszczeniu danej usługi poprzez firewall. Najczciej spotykanym sposobem zabezpieczania nieuywanych portów jest "blokowanie wszystkich dostpnych i dopuszczanie wybranych". Taka metoda ma sens chociaby dlatego, i w przecitnym rodowisku bdziemy mieli wiksz liczb portów do zablokowania ni tych do odblokowania. Wyobramy sobie sytuacj, w której nasz serwer wymaga dopuszczenia zaledwie piciu portów. Do zablokowania zostałoby nam ponad 65 tysicy pozostałych. Załómy, i "blokowanie wszystkich, dopuszczanie wybranych" jest dla nas najlepszym rozwizaniem. Czego bdziemy potrzebowali? Przede wszystkim narzdzia, które umoliwi nam blokad portów, a po drugie wiedzy jakim usługom chcemy zapewni otwarte przejcie - jakie porty chcemy wykluczy z blokady. Do uzyskania pierwszego warunku moemy uy jednego z wielu produktów firm trzecich bd funkcji wbudowanych w sam system. Windows 2003 Server oferuje nam "Filtrowanie TCP/IP" oraz "Zapor połczenia internetowego". Moe nie s to rozwizania oferujce wygodne w konfiguracji i rozbudowane funkcje ale z pewnoci działaj, i w niektórych sytuacjach mog by wystarczajce do osignicia zamierzonego efektu. Aczkolwiek w przypadku niektórych usług podana bdzie moliwo definiowania portów dopuszczonych w ruchu przychodzcym (incoming connections) jak i wychodzcym (outgoing connections). Co w przypadku "Filtrowania TCP/IP" jest niemoliwe, a w przypadku "Zapory połczenia internetowego" kłopotliwe.
Kiedy zdecydowalimy si na konkretne narzdzie moemy przystpi do dzieła. Najpierw sporzdmy list usług, które udostpniamy na naszej "maszynie". Po jej sporzdzeniu bdziemy mogli przystpi do blokowania. I tutaj nasuwa si pierwsza uwaga. Jeeli nie mamy moliwoci przeprowadzenia prób na maszynie testowej powinnimy zachowa szczególn ostrono i rozwag w blokowaniu portów na serwerach produkcyjnych. Pomyłka moe wiza si z wyłczeniem dostpu do danej usługi, a w przypadku operowania na maszynie zdalnej, np. poprzez Terminal Services nawet z odciciem do niej dostpu. Usługi działajce pod opiek systemu Windows 2003 Server. [Simple Mail Transfer Protocol (SMTP)] Usługa odpowiada za wysyłanie, przekazywanie i otrzymywanie wiadomoci e-mail przez serwer. W przypadku Windows 2003 Server nie jest ona instalowana domylnie (Windows 2000 instaluje j podczas normalnej instalacji automatycznie). Moemy bez problemu j doda w kadej chwili po zakoczeniu głównej instalacji. SMTP domylnie nasłuchuje na portach: TCP 25, UDP 25. [File Transfer Protocol (FTP)] Usługa FTP Publishing odpowiada za udostpnianie i przesyłanie danych midzy komputerami. Jedn z waniejszych jej cech jest moliwo ograniczania dostpu poprzez logowanie. FTP domylnie nasłuchuje na portach: TCP 20, TCP 21. [World Wide Web (WWW)] Usługa World Wide Web Publishing wykorzystuje m.in. protokół HTTP do udostpniania zasobów najczciej w postaci tzw. stron internetowych. W systemach Windows 2000 Server jest ona instalowana domylnie. W Windows 2003 jedynie w wersji "Web Edition" w pozostałych trzeba zainstalowa j "rcznie". WWW nasłuchuje domylnie na porcie TCP 80 i UDP 80, jednak kada z witryn moe wystawia dowolny, inny, zdefiniowany przez nas. W przypadku tej usługi moemy korzysta równie z protokołu HTTPS (szyfrowane HTTP) chronicego przesyłane dane przed ich podsłuchaniem (sniff'ingiem). O ile przegldanie przez uytkownika stron, np. z prognoz pogody nie wymaga szyfrowania o tyle przesyłanie pinu, bd wykonywanie operacji bankowych przy uyciu zwykłego HTTP jest wielce ryzykowne. HTTPS domylnie nasłuchuje na porcie: TCP 443. [POP3 (Post Office Protocol)] Usługa Microsoft POP3 wykorzystywana jest do pobierania/transferu poczty dostarczonej poprzez, np. SMTP. Jedna z najczciej uywanych usług do "odczytywania" poczty elektronicznej za pomoc programów pocztowych obsługujcych protokół POP3. Systemy Windows 2000 całkowicie były jej pozbawione. W wersji 2003 jest ona obecna. POP3 domylnie nasłuchuje na porcie: TCP 110. Zarówno jak w przypadku HTTP równie i POP3 posiada swój szyfrowany odpowiednik (POP over SSL) dostpny m.in. w "MS Exchange". Szyfrowany POP3 domylnie nasłuchuje na porcie: TCP 995. [Network News Transfer Protocol (NNTP)] Serwis ten wykorzystuje protokół NNTP do publikacji tzw. grup dyskusyjnych. Zapewnia swojemu klientowi moliwo pobierania i wysyłania artykułów. Umoliwia równie pobieranie (feed) zawartoci z innych serwerów NNTP.
Uywane porty: TCP 119, TCP 563 (wersja SSL). [Telnet] Usługa ta jest jedn z najpopularniejszych metod uzyskiwania dostpu zdalnego. Umoliwia ona niezalene od platformy systemowej łczenie zdalne z terminalami tekstowymi. I tak posiadajc odpowiedni program-klient moemy połczy si, np. z maszyny Unix'owej i administrowa naszym serwerem opartym o Windows 2003. Ze wzgldu na brak szyfrowania połczenia zdalnego zaleca si nie korzystanie z tej metody dostpu w sieciach niezabezpieczonych w inny sposób przed podsłuchiwaniem. Domylnie usługa otwiera port: TCP 23. [Terminal Services] Jest to graficzny terminal umoliwiajcy dostp zdalny do wirtualnych pulpitów administrowanego serwera. Usługa ta umoliwia prac zdaln niemale identyczn do lokalnej. Wymagane porty to: TCP 3389 i UDP 3389 dla Terminal Services oraz TCP 135 dla Terminal Services Licensing i Terminal Services Session Directory. [Domain Name System (DNS)] Usługa DNS Server zapewnia tłumaczenie przyjaznych dla uytkownika nazw/adresów maszyn na ich adresy IP - resolwing nazw. Usługa nasłuchuje na portach: TCP 53, UDP 53. [Remote Procedure Call [RPC]] RPC jest usług dostarczajc mechanizm wykorzystywany do komunikacji jednej usługi z drug. Komunikacja odbywa si moe zarówno w ramach jednej i tej samej maszyny, wewntrz sieci lokalnej (LAN) jak i sieci rozległych (WAN). RPC jest jedn z waniejszych usług w systemie. Ze wzgldu na to, i jest ona wykorzystywana przez inne serwisy s one automatycznie uzalenione od jej poprawnej pracy. Usługa nasłuchuje na portach: TCP 135 (Remote Procedure Call), TCP 593 (RPC over HTTP), TCP 445 i UDP 445 (Remote Procedure Call Locator). [Computer Browser] W skrócie, "przegldarka", jest usług odpowiadajc za przygotowywanie listy dostpnych maszyn w sieci. Usługa ta porednio umoliwia uytkownikom zdalny dostp do udostpnionych folderów bd innych zasobów. Serwis ten wykorzystuje "NetBIOS Name Resolution". Uywane porty: TCP 137, UDP 137, UDP 138, TCP 139. [Server (lanmanserver)] Usługa bezporednio odpowiedzialna za udostpnianie plików i innych zasobów. Serwis ten wykorzystuje "NetBIOS Name Resolution". Uywane porty: TCP 137, UDP 137, UDP 138, TCP 139. [Windows Internet Name Service (WINS)] Usługa WINS nie jest wymagana, jeeli wszystkie domeny wykorzystuj Active Directory, a serwery działaj pod kontrol systemu Windows 2003. Domylnie usługa ta nie jest instalowana podczas standardowej instalacji Windows 2003 Server. Serwis ten jest wykorzystywany do odnajdywania zasobów zidentyfikowanych przez NetBIOS. Uywane porty: TCP 137, UDP 137, TCP 42 i UDP 42 (WINS Replication).
[Net Logon] Usługa, która jest odpowiedzialna za tworzenie "bezpiecznego" kanału pomidzy stacj robocz a kontrolerem domeny uywanego do autentyfikacji uytkowników i serwisów. Usługa jest uruchamiana automatycznie w momencie, gdy komputer jest członkiem domeny. Net Logon implementuje równie protokół replikacji uywany przy synchronizacji Windows NT 4.0 Backup Domain Controllers i Primary Domain Controllers. Uywane porty: TCP 137, UDP 137, UDP 138, TCP 139, TCP 445, UDP 445. [Windows Time (NTP)] Windows Time zapewnia synchronizacj czasu systemowego komputerów w sieci opartej o systemy Windows. Usługa ta wykorzystuje protokół Network Time Protocol. Komputery klienckie zapisane do domeny synchronizuj czas z kontrolera domeny. Uywane porty: UDP 123. [Print Spooler] Serwis zarzdza zarówno lokalnymi jak i sieciowymi zadaniami/kolejkami drukowania. Odpowiada równie za komunikacj ze sterownikami urzdze drukujcych. Uywane porty: TCP 445, UDP 445. [Distributed File System (DFS)] Usługa ta odpowiedzialna jest za udostpnianie rozproszonego katalogu plików pod jedn logiczn reprezentacj. Serwis ten moe wykorzystywa replikacj plików. Uywane porty: TCP 135, UDP 138, TCP 139, TCP 389, UDP 389, TCP 445, UDP 445. [Local Security Authority (LSASS)] LSASS odpowiada za autentykacj i za zarzdzanie lokalnymi obiektami "polityki zabezpiecze" (Policy Objects). Do spełniania swoich celów LSASS wykorzystuje poszczególne moduły zwane "providers": Kerberos, SChannel, Digest, NTLM. Uywane porty: TCP 389, UDP 389, TCP 636 i UDP 636 (wersja SSL), TCP 3268, TCP 3269. [Simple Network Management Protocol (SNMP)] Usługa ta odpowiedzialna jest za obsług przychodzcych zapyta SNMP. Protokół SNMP wykorzystywany jest do zdalnego zarzdzania i monitorowania urzdze sieciowych. Uywane porty: UDP 161, UDP 162 (SNMP Trap Service). [Kerberos Key Distribution Center (KDC)] KDC umoliwia zalogowanie uytkownika przy uyciu protokołu autentykacji - Kerberos v.5. W przeciwiestwie, do niektórych implementacji tego protokołu ta jedna usługa spełnia dwie funkcje, serwisu autentykacji (Authentication Service) i serwisu przydzielania "biletu" (Ticket Granting Service). Uywane porty: TCP 88, UDP 88. [IPSec (PolicyAgent)] Usługa IPSec działajca w warstwie IP zajmuje si zabezpieczaniem połczenia TCP/IP pomidzy klientem a serwerem. Do jej zada naley zarzdzanie zasadami zabezpiecze IP oraz inicjowanie protokołu wymiany kluczy (Internet Key Exchange). Usługa ta moe by wykorzystywana do filtrowania pakietów i negocjowania zabezpiecze połczenia.
Do autentykacji moe wykorzystywa protokół Kerberos, certyfikaty lub tzw. shared secret keys - hasła. IPSec zajmuje si zabezpieczaniem połcze L2TP VPN. Uywane porty: UDP 500. [Internet Authentication Service (RADIUS)] Usługa ta wykorzystuje protokół Remote Authentication Dial-in User Service (RADIUS) do umoliwienia autentykacji, autoryzacji i tzw. accounting'u (rejestrowania uycia danych zasobów/usług). IAS moe pełni rol zarówno serwera poredniczcego (PROXY) pomidzy innymi serwerami jak i niezalenego serwera RADIUS. Rola tej usługi jest ogromna. W skrócie, moemy wykorzysta j do przygotowania scentralizowanego miejsca zarzdzania dostpem dla poszczególnych uytkowników. Wikszo aktywnych urzdze takich jak routery, switch'e, Access Point'y, itp... obsługuj protokół RADIUS co daje nam moliwo autentyfikacji, autoryzacji i accounting'u klientów tych urzdze przy uyciu jednego repozytorium. Uywane porty: UDP 1645, UDP 1646, UDP 1812, UDP 1813. [Dynamic Host Configuration Protocol (DHCP Server)] DHCP umoliwia automatyczn konfiguracj klienta w zakresie konfiguracji sieci (adresy ip, adresy DNS, WINS). Uywane porty: UDP 67, UDP 2535. [Routing and Remote Access] Serwis ten umoliwia wykorzystanie usług routingu LAN-to-LAN, LAN-to-WAN, VPN oraz NAT. Dziki tej usłudze serwer moe funkcjonowa jako router bd serwer połcze wirtualnych sieci prywatnych. Uywane porty: UDP 1701, UDP 1723, UDP 4500 (NAT-T). [Cluster Sevice] Usługa ta zarzdza klastrami serwerów. Klastry s rozproszonym systemem łczcym wicej ni jedn maszyn fizyczn w jedn jednostk wirtualn. Uywane porty: UDP 3343. [Message Queuing] MSMQ jest usług dostarczajc infrastruktur programistyczn, która moe by wykorzystywana w aplikacjach wymagajcych przesyłania komunikatów przez sie w sytuacjach kiedy komputer zdalny nie jest akurat dostpny. Uywane porty: TCP 1801, UDP 1801, TCP 2101, TCP 2103, TCP 2105, TCP 2107, UDP 3527. Oprócz odblokowania portów interesujcych nas usług pamitajmy o koniecznoci wypuszczenia ruchu wychodzcego z naszej maszyny. Jeeli chcemy korzysta, np. z www musimy mie woln drog na ruch wychodzcy na port 80. W nastpnej kolejnoci oprócz odblokowania połcze wychodzcych musimy zadba o zapewnienie dostpu dla połczenia "powrotnego" (SYN/ACK). Najwygodniejszym rozwizaniem jest blokowanie portów tylko dla połcze z flag SYN, ewentualnie odblokowanie portów dla połcze z flag SYN/ACK. Pomimo blokady nieuywanych portów pamitajmy o tych otwartych. Jeeli jestemy wstanie zawzi krg maszyn korzystajcych z usług serwera moemy dopuci ruch na dany port tylko z okrelonych adresów IP. Pamitajmy równie o tym, i samo blokowanie portów nie
jest zabezpieczeniem pozwalajcym nam zapomnie o wszelkich problemach. Nie poprzestawajmy, wic w poszukiwaniach idealnych sposobów zabezpiecze...