Historia bezpieczeństwa sieci: od prostych firewalli do nowoczesnych systemów EDR i XDR

0
51
5/5 - (1 vote)

Nawigacja:

Od „dzikiego zachodu” ARPANET-u do pierwszych pomysłów na bezpieczeństwo

Lata 60. i 70. – komputery w laboratoriach, nie w otwartym internecie

Na początku bezpieczeństwo sieci praktycznie nie istniało jako osobna dziedzina. Komputery były duże, drogie i stały w zamkniętych laboratoriach, a dostęp do nich mieli nieliczni specjaliści. ARPANET – przodek dzisiejszego internetu – łączył głównie uniwersytety i instytuty badawcze. Większym problemem był brak wydajności i stabilności łączy niż złośliwi atakujący.

Ochrona opierała się głównie na fizycznym bezpieczeństwie: zamknięte serwerownie, listy osób uprawnionych, klucze do pomieszczeń, a później karty dostępowe. Jeśli ktoś wszedł do budynku i usiadł przy terminalu, zwykle automatycznie mu ufano. Hasła – jeśli w ogóle były – służyły bardziej rozliczaniu czasu pracy na komputerze niż ochronie przed włamaniem.

Sieci były małe i hermetyczne, użytkownicy się znali, a komputery często nie były podłączone na stałe. Niewiele osób wyobrażało sobie wtedy, że kiedyś „każdy komputer będzie rozmawiał z każdym innym” gdziekolwiek na świecie. Skoro sieć była zamknięta, to po co dodatkowa ochrona? To trochę tak, jakby w małej wiosce, gdzie każdy zna każdego, nikt nie myślał o zakładaniu stalowych krat w oknach.

Pierwsze incydenty i świadomość, że „sieć nie jest niewinna”

Z czasem, wraz z rozrostem ARPANET-u i pierwszych sieci akademickich, zaczęły pojawiać się sytuacje, które dzisiaj nazwalibyśmy incydentami bezpieczeństwa. Często były to żarty lub eksperymenty, a nie profesjonalne ataki: ktoś „pożyczył” sobie cudze konto, skopiował pliki, podmienił komunikat powitalny systemu. Jednak te drobne nadużycia uruchomiły ważny proces myślenia: sieć nie jest neutralnym, „niewinnym” medium.

Rosła też świadomość, że komputery nie służą już tylko nauce. Zaczęto używać ich do zadań wojskowych, gospodarczych, do przetwarzania danych o dużej wartości. Gdy w grę wchodziły projekty badawcze sponsorowane przez rząd czy obronność, kwestia sabotażu lub szpiegostwa przestawała być abstrakcją. Coraz częściej pojawiały się raporty ostrzegające, że w systemach podłączonych do sieci można teoretycznie:

  • modyfikować wyniki obliczeń lub analiz,
  • krzyżować plany badawcze,
  • uzyskiwać dostęp do poufnej korespondencji i dokumentów,
  • instalować „tylne furtki” w oprogramowaniu.

Na początku dominowało podejście: „mamy ludzi zaufanych, więc dają radę”. Z perspektywy czasu widać, że to był największy błąd tych czasów – zaufanie zamiast procesu i technologii. Dopiero później zaczęto formalizować zasady dostępu, tworzyć polityki bezpieczeństwa i myśleć o ochronie logicznej jako czymś odrębnym od klucza do pomieszczenia.

Od ochrony fizycznej do ochrony logicznej

Przejście od ochrony fizycznej do logicznej było stopniowe. Najpierw pojawiła się myśl, że sam login i hasło to za mało, jeśli terminale stoją w wielu miejscach, a sieć łączy różne instytucje. Zaczęto stosować:

  • coraz bardziej rozbudowane systemy uprawnień na poziomie systemu operacyjnego,
  • mechanizmy rozliczania – kto, kiedy i do czego się loguje,
  • pierwsze próby centralnego uwierzytelniania w sieci lokalnej.

Pojawiały się też raporty i publikacje naukowe, które ostrzegały, że zdalny dostęp do systemu to potencjalna furtka dla kogoś z zewnątrz. Tyle że brakowało jeszcze narzędzi typowo „sieciowych” do ochrony. Działało to mniej więcej tak: jeśli był problem z dostępem, administrator ręcznie modyfikował pliki konfiguracyjne na serwerze, odbierał uprawnienia lub blokował konto.

Odrębna kategoria narzędzi – „bezpieczeństwo sieci” – dopiero miała się narodzić. Kamieniem milowym było podłączenie coraz większej liczby organizacji do wspólnej infrastruktury. Gdy pojawił się internet w znanej nam formie, w jednej chwili przestało chodzić tylko o „zaufanych pracowników” i „naszą uczelnię”. Zaczęło chodzić o cały świat.

Kursor myszy na tekście o cyfrowym bezpieczeństwie na ekranie monitora
Źródło: Pexels | Autor: Pixabay

Początki firewalli – proste mury na brzegu sieci

Filtracja pakietów – reguły „po adresie i porcie”

Słowo firewall wzięło się z analogii do ścian przeciwpożarowych w budynkach. Mają one zatrzymać ogień w jednym miejscu i nie dopuścić, by rozprzestrzenił się dalej. W sieciach komputerowych „ogień” to ruch pochodzący z zewnątrz, a szczególnie taki, którego się nie spodziewamy. Logika jest prosta: oddzielić sieć wewnętrzną (zaufaną) od internetu (niezaufanego) czymś w rodzaju muru kontrolującego, co może przez niego przejść.

Pierwsze firewalle były tak naprawdę rozbudowanymi listami kontroli dostępu (ACL) na routerach. Administrator tworzył zestaw reguł opisujących, jaki ruch jest dozwolony, a jaki nie. Ruch identyfikowano na podstawie:

  • adresu IP źródłowego i docelowego,
  • numeru portu (np. 80, 443, 25),
  • protokołu (TCP, UDP, ICMP).

Jeśli reguła pasowała – ruch przepuszczano albo blokowano, w zależności od polityki. Logika przypominała bramkarza w klubie, który patrzy tylko na dowód osobisty – widzi imię, nazwisko i datę urodzenia, ale nie ma pojęcia, jaki ktoś ma charakter czy intencje. Podobnie firewall z filtracją pakietów pełnił rolę prostego strażnika: znał tylko „adres” i „drzwi”, do których ktoś pukał.

Ograniczenia pierwszych firewalli i potrzeba głębszego wglądu

Taki sposób filtrowania był na tamte czasy rewolucyjny, ale miał poważne ograniczenia. Ruch mógł wyglądać całkowicie poprawnie z punktu widzenia IP i portu, a jednocześnie nieść w środku złośliwą zawartość. Przykładowo: połączenie do serwera WWW po porcie 80 wyglądało jak każde inne, mimo że mogło zawierać próbę ataku SQL injection albo przesłanie exploitu.

Dodatkowo pojawił się problem rosnącej liczby usług, które wykorzystywały standardowe porty. Skoro „wszystko” zaczynało chodzić po porcie 80 lub 443, firewall nie miał już jak odróżnić aplikacji „dobrej” od potencjalnie ryzykownej. Z perspektywy prostego filtra pakietów ruch HTTP biznesowej aplikacji, nielegalnego proxy, tunelowanego VPN i malware wyglądał identycznie.

Dochodziła do tego jeszcze jedna trudność: zarządzanie regułami. Niewielka firma radziła sobie kilkunastoma wpisami typu „ze świata do DMZ wolno tylko na port 80 i 443, z sieci lokalnej na zewnątrz wolno HTTP/HTTPS i DNS”. Ale w dużych organizacjach listy ACL rosły do setek lub tysięcy reguł. Każda zmiana wymagała testów, a każda pomyłka mogła przypadkowo zablokować ważną usługę.

Firewalle stanowe – krok do rozumienia kontekstu połączeń

Naturalnym rozwinięciem były firewalle stanowe (stateful inspection). Zamiast patrzeć tylko na pojedyncze pakiety, takie urządzenia zaczęły śledzić całe sesje komunikacji. Tworzono tablice stanów, w których zapisywano, jakie połączenia zostały zainicjowane (np. z sieci wewnętrznej do internetu), a które odpowiedzi na te połączenia można bezpiecznie przepuścić.

Praktyczny przykład: użytkownik z sieci firmowej otwiera stronę WWW. Firewall stanowy dopuszcza ruch wychodzący na port 80/443 i zapamiętuje, że trwa konkretna sesja TCP z danego adresu wewnętrznego do konkretnego serwera zewnętrznego. Gdy z internetu nadchodzi odpowiedź, firewall widzi, że to „odpowiedź na moje połączenie”, więc ją przepuszcza. Natomiast jeśli ktoś z internetu sam z siebie próbuje otworzyć połączenie do komputera w sieci firmy, a nie ma do tego odpowiedniej reguły – ruch jest blokowany.

Dla administratorów był to przełom: nagle dało się budować polityki typu „z wewnątrz wolno inicjować połączenia na zewnątrz, ale z zewnątrz nie wolno inicjować połączeń do środka” w sposób dość wygodny i bez konieczności dopisywania niezliczonych wyjątków. Firewall zaczął rozumieć kontekst, choć wciąż nie wnikał w głęboką zawartość pakietów.

Jednocześnie pojawił się nowy obowiązek – bieżąca konserwacja polityk. Prosty przykład z życia: średnia firma odcinała z internetu dostęp do RDP (port 3389) i innych wrażliwych usług jednym wpisem. Jednak gdy zaczęły się pojawiać nowe aplikacje biznesowe, partnerzy zdalni, systemy do pracy z domu, lista wyjątków rosła. W praktyce co miesiąc ktoś prosił: „otwórzcie taki port do tego serwera”. Bez stałego przeglądu i porządkowania reguł firewall stawał się z czasem zbiorem nieaktualnych wyjątków i łatek.

Druga fala – od klasycznych firewalli do analizy na poziomie aplikacji

Firewalle warstwy aplikacji i proxy

Kolejny etap ewolucji bezpieczeństwa sieci zaczął się wtedy, gdy stało się jasne, że samo filtrowanie po IP i porcie nie wystarcza. Ruch webowy rósł lawinowo. Coraz więcej protokołów „udawało” HTTP, by łatwiej przechodzić przez proste firewalle. Malware i użytkownicy zaczęli tunelować różne rzeczy przez port 80 i 443, bo „tam i tak wszystko jest otwarte”.

Odpowiedzią były firewalle warstwy aplikacji, często w formie proxy. Taki serwer działał jako pośrednik: klient łączył się z proxy, a proxy łączyło się z docelową usługą. Dzięki temu urządzenie mogło dokładnie analizować ruch na poziomie protokołu HTTP, FTP, SMTP czy innych, a nie tylko patrzeć na numery portów. Można było wdrożyć:

  • filtrowanie adresów URL (blokowanie określonych kategorii stron),
  • skanowanie antywirusowe plików pobieranych z internetu,
  • wymuszanie uwierzytelnienia użytkowników domenowych,
  • logowanie aktywności per użytkownik, a nie tylko per adres IP.

Proxy aplikacyjne stały się de facto pierwszymi prawdziwymi firewallami aplikacyjnymi (Web Application Firewall, WAF) w pewnych zastosowaniach. Dzięki głębszemu wglądowi mogły blokować np. nieprawidłowe nagłówki HTTP, zbyt duże zapytania, próby przesłania skryptów w polach formularzy. Tam, gdzie ryzyko było największe – np. na styku firmy i internetu – takie rozwiązania znacząco podnosiły poprzeczkę dla napastników.

Narodziny UTM – firewall jako „szwajcarski scyzoryk”

Gdy kolejne funkcje zaczęły się kumulować – filtracja pakietów, firewall stanowy, proxy aplikacyjne, skanowanie antywirusowe, filtrowanie treści, IDS/IPS – producenci wpadli na pomysł zintegrowania ich w jednym urządzeniu. Tak narodziła się koncepcja UTM (Unified Threat Management), czyli „zunifikowanego zarządzania zagrożeniami”.

UTM miał być centralnym „pudełkiem”, które:

  • kontroluje ruch sieciowy na brzegu,
  • skanuje go pod kątem znanych zagrożeń,
  • filtrował treści webowe i pocztowe,
  • alarmował o podejrzanej aktywności (IDS/IPS).

Dla mniejszych i średnich organizacji było to ogromne ułatwienie. Zamiast kupować wiele oddzielnych rozwiązań i próbować je ze sobą zintegrować, można było wdrożyć jeden produkt z jednym interfejsem i jedną polityką. W praktyce wiele firm właśnie wtedy po raz pierwszy „na serio” uporządkowało podejście do bezpieczeństwa sieci, bo stało się to po prostu wykonalne finansowo i organizacyjnie.

Oczywiście miało to też i swoje pułapki. „Pudełko od wszystkiego” łatwo przeciążyć, jeśli włączymy wszystkie możliwe moduły przy dużym ruchu. Konfiguracja stawała się złożona, a jedna błędna opcja mogła unieruchomić kawał sieci. Mimo to, UTM-y bardzo mocno spopularyzowały myślenie, że bezpieczeństwo sieci to nie pojedynczy mur, lecz zestaw różnych mechanizmów, które się uzupełniają.

NGFW – zaporowe „widzenie” aplikacji i użytkownika

Następnym krokiem były firewalle nowej generacji (NGFW – Next-Generation Firewall). Zauważono, że port 80 to tak naprawdę „autostrada dla wszystkiego” i nawet najbardziej skomplikowane reguły na poziomie IP/port nic nie dają, jeśli nie wiemy, jaka aplikacja korzysta z danego połączenia. NGFW wprowadziły kilka kluczowych elementów:

  • identyfikację aplikacji – rozpoznawanie konkretnego protokołu i aplikacji (np. Facebook, Dropbox, Skype) niezależnie od używanego portu,
  • integrację z katalogiem użytkowników (AD/LDAP) – możliwość budowania reguł „kto może co”, a nie tylko „jaki adres IP może co”,
  • dodatkowe moduły bezpieczeństwa – IPS, filtrowanie URL, kontrola aplikacji, integracja z systemami antywirusowymi i sandboxami.

Granice możliwości NGFW i rosnąca złożoność środowisk

NGFW mocno zmieniły codzienność administratorów. Nagle w politykach można było pisać: „dział marketingu ma dostęp do Facebooka, ale nie może wysyłać plików przez WeTransfer”, zamiast żonglować portami i adresami IP. Jednocześnie ruch szyfrowany stał się domyślnym standardem. Coraz większą część komunikacji stanowił TLS, a firewall – nawet bardzo „inteligentny” – widział jedynie zaszyfrowany strumień.

Producenci odpowiedzieli inspekcją SSL/TLS – terminacją szyfrowania na firewallu, krótkim „odszyfrowaniem” ruchu, analizą pod kątem zagrożeń i ponownym zaszyfrowaniem. Brzmiało to pięknie, dopóki nie zderzyło się z rzeczywistością: problemami wydajności, wyjątkami dla bankowości, konfliktami z aplikacjami mobilnymi, a także z coraz głośniejszymi dyskusjami o prywatności użytkowników.

Do tego infrastruktura sama w sobie stała się bardziej skomplikowana. Zamiast jednego „dużego” centrum danych pojawiły się:

  • wiele oddziałów połączonych VPN-ami,
  • aplikacje SaaS działające poza kontrolą klasycznego firewalla,
  • środowiska chmurowe i kontenery, które żyją krócej niż cykl akceptacji zmiany w polityce.

NGFW świetnie radziły sobie na brzegu sieci, lecz stopniowo przestawało być jasne, gdzie ten „brzeg” w ogóle się znajduje. Użytkownicy łączyli się z domów, hoteli, z internetu komórkowego. Część ruchu szła tunelem VPN do firmy, część trafiała bezpośrednio do chmury. Pytanie samo cisnęło się na usta: jak to wszystko sensownie monitorować i bronić, jeśli klasyczne pojęcie granicy sieci się rozmywa?

Osoba trzyma tablet z ekranem VPN, symbol nowoczesnego bezpieczeństwa sieci
Źródło: Pexels | Autor: Dan Nelson

Narodziny IDS/IPS – słuchanie sieci i aktywna obrona

Od „podsłuchu” do analizy wzorców ataku

W pewnym momencie samo blokowanie ruchu na brzegu zaczęło przypominać zamykanie drzwi na trzy zamki, ale bez zaglądania, co dzieje się na klatce schodowej i na dachu. Potrzebne były narzędzia, które patrzą na ruch sieciowy z boku i szukają charakterystycznych oznak ataku. Tak właśnie narodziły się systemy IDS (Intrusion Detection System).

IDS działał najczęściej w trybie pasywnym. Otrzymywał kopię ruchu z ważnych segmentów (np. z portu SPAN na przełączniku) i porównywał pakiety z bazą sygnatur znanych ataków. Mechanizm przypominał antywirusa, tylko zamiast plików analizował strumienie sieciowe. Gdy wykryto znany wzorzec – np. exploit na konkretną podatność w serwerze WWW – system generował alarm.

Dawało to coś, czego brakowało klasycznym firewallom: wgląd w to, co faktycznie płynie przez sieć i czy przypomina to realne, znane techniki ataku. Administrator mógł zobaczyć, że ktoś próbuje masowo skanować porty, wysyłać nietypowe zapytania HTTP czy odwoływać się do starych podatności sprzed kilku lat.

IPS – kiedy wykrywanie to za mało

Sama detekcja jednak szybko przestała wystarczać. Otrzymywanie setek alertów dziennie, z których część wymagała natychmiastowej reakcji, okazywało się trudne do ogarnięcia w małych zespołach. Naturalnym krokiem było przejście z „widzę atak” do „widzę atak i od razu go blokuję”. Tak powstały systemy IPS (Intrusion Prevention System).

IPS działał już „w linii”, czyli na ścieżce ruchu – tak jak firewall. Gdy sygnatura ataku pasowała do przetwarzanego ruchu, urządzenie mogło:

  • zablokować konkretny pakiet lub całe połączenie,
  • dynamicznie dodać wpis na czarną listę adresów IP,
  • zablokować ruch tylko dla wybranego hosta chronionego.

W praktyce wiele firm wdrażało IPS w trybie hybrydowym: część sygnatur działała w pełnym trybie blokującym (np. znane, stare exploity), a inne tylko alarmowały. Z czasem, gdy administratorzy nabierali zaufania do jakości sygnatur, przełączano kolejne reguły w tryb prewencyjny.

Pojawił się jednak dobrze znany problem: im więcej sygnatur, tym większa szansa na fałszywe alarmy. Zespół SOC potrafił przez tydzień dostrajać system, by zredukować liczbę fałszywych blokad, które potrafiły wywrócić biznesową aplikację do góry nogami. IDS/IPS stał się narzędziem potężnym, ale też wymagającym cierpliwości i dobrej znajomości środowiska.

Sygnatury, anomalie i pierwsze kroki w stronę „inteligencji”

Klasyczne IDS/IPS bazowały głównie na sygnaturach – wzorcach złośliwego ruchu. Gdy baza była aktualna, szanse na złapanie znanego ataku były spore. Problem pojawiał się w dwóch sytuacjach:

  • gdy napastnik używał zupełnie nowej techniki (tzw. atak zero-day),
  • gdy ruch był silnie zmodyfikowany, ale nadal złośliwy.

W odpowiedzi wprowadzono mechanizmy detekcji anomalii. System uczył się, jaki ruch jest w danym miejscu „normalny”: skąd, dokąd, w jakich godzinach, z jakim natężeniem. Wszelkie odchylenia – np. nagłe strumienie danych z serwera księgowego do nieznanego hosta w obcej chmurze – mogły być sygnalizowane jako potencjalne incydenty.

Były to pierwsze, jeszcze dość proste próby „inteligentnej” analizy. Algorytmy nie były tak zaawansowane jak dzisiejsze modele uczenia maszynowego, ale sama idea – patrzymy nie tylko na wzorzec ataku, lecz na kontekst i nietypowość zachowania – zasiała ziarno pod późniejsze systemy EDR i XDR.

Antywirus i bezpieczeństwo punktów końcowych – od skanów na żądanie do ochrony w czasie rzeczywistym

Pierwsze skanery antywirusowe – „polowanie” na znane wirusy

Podczas gdy w świecie sieci rozwijały się firewalle i IDS/IPS, na stacjach roboczych i serwerach toczyła się równoległa historia. W latach, gdy internet dopiero raczkował, głównym nośnikiem złośliwego oprogramowania były dyskietki, a później pliki przenoszone na nośnikach wymiennych. Ochronę zapewniały proste skanery antywirusowe uruchamiane na żądanie.

Taki program porównywał zawartość plików z bazą sygnatur znanych wirusów. Jeśli wzorzec pasował, plik oznaczano jako zainfekowany i próbowano go oczyścić lub usunąć. Aktualizacje baz dostarczało się czasem dosłownie z dyskietek, a w większych firmach – z wewnętrznego serwera aktualizacji. Nikt jeszcze nie myślał o zaawansowanej telemetrii, analityce behawioralnej czy centralnym reagowaniu na incydenty.

Model zagrożeń był zresztą prostszy: wirusy rzadko kiedy miały za cel kradzież danych czy cichy szantaż. Często chodziło o zniszczenie systemu, utrudnienie pracy albo zwykły „popis” umiejętności autora. Obrona skupiała się na tym, by nie dopuścić do uruchomienia złośliwego kodu lub szybko go usunąć.

Rezydentna ochrona w czasie rzeczywistym

Gdy liczba zagrożeń i ich złożoność rosły, skanowanie „na żądanie” przestało wystarczać. Pojawiła się potrzeba ciągłego monitorowania systemu – tak, aby nowo tworzony plik, pobierane załączniki e-mail czy instalatory programów były weryfikowane w locie. W ten sposób popularność zyskały moduły rezydentne antywirusów działające w tle.

Silnik antywirusowy zaczął nasłuchiwać kluczowych operacji systemowych:

  • zapisu i odczytu plików,
  • uruchamiania nowych procesów,
  • modyfikacji krytycznych obszarów systemu (rejestr, katalogi systemowe).

Jeśli coś wyglądało podejrzanie lub pasowało do sygnatury, proces blokowano, a użytkownik dostawał komunikat. Dla zwykłego pracownika oznaczało to często pierwsze zetknięcie z „widocznym” bezpieczeństwem: nagłe okienko z napisem „zagrożenie zablokowane”.

W organizacjach z kilkuset komputerami pojawiło się jednak nowe wyzwanie – jak tym wszystkim sensownie zarządzać? Ręczne konfigurowanie skanera na każdym PC było niemożliwe. Stąd rozwój konsol centralnego zarządzania, które pozwalały:

  • definiować wspólne polityki dla grup użytkowników,
  • wymuszać aktualizacje baz sygnatur,
  • monitorować, czy wszystkie stacje są chronione i aktualne.

Wojna z malware polimorficznym i eksplozja liczby sygnatur

Z czasem twórcy malware przestali grać „uczciwie” względem antywirusów. Zaczęły się pojawiać wirusy polimorficzne, które przy każdym rozprzestrzenieniu zmieniały swoją postać. Jak wtedy przygotować stałą sygnaturę, skoro każdy egzemplarz wygląda minimalnie inaczej?

Producenci AV odpowiedzieli dwiema drogami. Po pierwsze, bazę sygnatur rozwijano w szalonym tempie, dodając tysiące nowych wzorców. Po drugie, zaczęto używać bardziej ogólnych heurystyk – zamiast szukać konkretnego ciągu bajtów, patrzono na zachowanie programu. Na przykład: czy plik próbuje sam siebie kopiować w wiele miejsc, modyfikować pliki systemowe, łączyć się z dziwnymi serwerami w internecie.

Heurystyka pozwalała łapać całe rodziny malware, ale nie była wolna od błędów. Zdarzało się, że „nadgorliwy” antywirus usuwał legalną aplikację biznesową, bo jej zachowanie przypominało szkodnika. Administratorzy znów musieli balansować między skutecznością a ryzykiem fałszywych detekcji.

Endpoint Security Suite – więcej niż sam antywirus

Kolejnym etapem było poszerzenie ochrony punktów końcowych o dodatkowe moduły. Sama detekcja wirusów przestała wystarczać, bo ataki przeszły z prostych infekcji do całych łańcuchów działań: phishing, exploit w przeglądarce, doinstalowanie trojana, kradzież poświadczeń, przemieszczenie się po sieci i dopiero na końcu szyfrowanie danych.

Pakiety bezpieczeństwa endpointów zaczęły więc integrować:

  • firewall programowy na stacji roboczej,
  • kontrolę aplikacji (whitelisting/blacklisting),
  • mechanizmy HIPS (Host-based Intrusion Prevention System),
  • szyfrowanie dysków i nośników wymiennych,
  • kontrolę urządzeń USB i drukarek.

Na typowym laptopie pracownika firmy można było zdefiniować politykę, która blokuje uruchamianie nieautoryzowanych programów, wymusza pełne szyfrowanie dysku, nie pozwala na kopiowanie danych na przypadkowe pendrive’y i jednocześnie cały czas skanuje system pod kątem malware. Brzmi to jak sporo ograniczeń, ale w dobie przenośnych komputerów pełnych wrażliwych informacji taki poziom kontroli stał się codziennością.

Dla działów IT oznaczało to większą odpowiedzialność: błąd w polityce potrafił zablokować użytkownikom dostęp do kluczowych narzędzi, a niedopatrzenie – zostawić lukę, przez którą ransomware mógł swobodnie przejść.

Od klasycznego AV do EPP – koncepcja „platformy ochrony punktu końcowego”

Z czasem termin „antywirus” zaczął być zbyt wąski. Na scenę weszły rozwiązania EPP (Endpoint Protection Platform), które łączyły wiele funkcji w jednolitą platformę dla stacji roboczych i serwerów. Różnica była nie tylko w ilości modułów, lecz także w sposobie zarządzania i wymiany informacji.

EPP zbierały dane o zdarzeniach z tysięcy punktów końcowych i wysyłały je do centralnego serwera lub chmury producenta. Tam agregowano informacje o nowych zagrożeniach, podejrzanych plikach, nietypowych zachowaniach. Dzięki temu:

  • nowe zagrożenie wykryte w jednej firmie mogło być bardzo szybko zablokowane u innych klientów,
  • analiza zachowania programu mogła uwzględniać dane z wielu środowisk (tzw. reputacja pliku),
  • administratorzy dostawali bardziej skondensowany obraz sytuacji – zamiast tysiąca sygnałów z każdego komputera z osobna.

Można to porównać do szczepień: jeśli w jednym mieście pojawia się nowy wirus, informacja szybko rozchodzi się po świecie i ułatwia innym przygotowanie obrony. EPP zaczęły korzystać z „inteligencji zbiorowej”, co znacząco skróciło czas reakcji na świeże kampanie malware.

Drewniane klocki z napisem CYBERSEC na zielonym rozmytym tle
Źródło: Pexels | Autor: Markus Winkler

Od EPP do EDR – śledzenie działań napastnika krok po kroku

Dlaczego sam EPP przestał wystarczać

Mimo rozwoju platform ochrony punktów końcowych wciąż powracał ten sam problem: co zrobić, gdy atakujący jednak przedrze się przez pierwszą linię obrony? Klasyczny EPP potrafił zablokować znane zagrożenia, ale miał ograniczony wgląd w cały łańcuch zdarzeń. W logach można było zobaczyć, że plik X został zablokowany na stacji Y, lecz trudno było szybko odpowiedzieć na pytania:

  • skąd wziął się ten plik – z e-maila, przeglądarki, dysku sieciowego?
  • czy użytkownik wcześniej uruchomił coś jeszcze podejrzanego?
  • czy na innych stacjach nie dzieje się coś podobnego?

Nowe podejście: monitoring zdarzeń zamiast samego „łapania wirusów”

Aby odpowiedzieć na te pytania, producenci zaczęli zbierać znacznie więcej danych z samych punktów końcowych. Nie tylko: „plik X jest zły”, lecz całe sekwencje zdarzeń: który proces uruchomił który, jakie pliki zostały zmodyfikowane, z jakimi adresami IP nawiązano połączenia, co pojawiło się w rejestrze. To trochę tak, jakby z pojedynczych zdjęć przejść do filmu pokazującego pełną historię.

Na stacjach roboczych pojawiły się lekkie agenty, które stale rejestrowały kluczowe aktywności systemowe. Dane te wysyłano do centralnego serwera analitycznego, gdzie można było je łączyć w tzw. grafy ataku. Administrator nie widział już tylko pojedynczej detekcji, ale całe „drzewo” powiązań: od kliknięcia w załącznik, przez exploit, aż po próbę zaszyfrowania udziału sieciowego.

Ten skok jakościowy otworzył drogę do zupełnie nowej kategorii rozwiązań – EDR.

Czym jest EDR – „czarna skrzynka” i system śledczy w jednym

EDR (Endpoint Detection and Response) można porównać do połączenia czarnej skrzynki z narzędziem śledczym. Z jednej strony ciągle rejestruje to, co dzieje się na punktach końcowych, z drugiej – pozwala na analizę retrospektywną, gdy coś pójdzie nie tak.

Kluczowe elementy typowego EDR to najczęściej:

  • ciągła telemetria z procesów, plików, rejestru, sieci,
  • mechanizmy korelacji zdarzeń i rekonstrukcji łańcucha ataku,
  • możliwość zdalnej reakcji: izolacja hosta, ubijanie procesów, usuwanie plików,
  • funkcje „threat hunting” – proaktywne wyszukiwanie śladów ataków w całym środowisku.

Gdy w firmie pojawia się ransomware, EDR pozwala zobaczyć nie tylko, że jakiś proces zaczął masowo szyfrować pliki. Można też ustalić, że proces ten pochodził z pliku pobranego z konkretnego linku w e-mailu, a wcześniej na tym samym komputerze ktoś wyłączył usługę kopii w tle i dodał nowe konto administratora lokalnego. Nagle cała historia staje się czytelna, a nie rozbita na pojedyncze komunikaty z antywirusa.

Zautomatyzowana reakcja – od alertu do „kill switcha”

Sama detekcja to jednak tylko połowa układanki. Gdy SOC dostaje kilkaset alertów dziennie, kluczowe staje się zautomatyzowanie pierwszej reakcji. Stąd w EDR-ach pojawiły się gotowe playbooki, które wykonują określone kroki, gdy wykryją charakterystyczny scenariusz.

Może to wyglądać na przykład tak:

  • wykryto nietypowe zaszyfrowanie wielu plików w krótkim czasie,
  • EDR automatycznie izoluje stację od sieci (poza kanałem do konsoli),
  • zabija procesy powiązane z zaszyfrowanymi plikami,
  • zbiera pakiet dowodowy (logi, hash pliku, listę ostatnich procesów),
  • wysyła powiadomienie do zespołu bezpieczeństwa z gotowym „raportem technicznym”.

Administrator nie zaczyna od szukania igły w stogu siana, tylko od razu dostaje streszczoną historię zdarzeń i maszynę już odciętą od reszty sieci. To często decyduje o tym, czy incydent pozostanie lokalny, czy przerodzi się w pełnoskalowy kryzys.

Threat hunting – aktywne polowanie na zagrożenia

Kolejną zmianą filozofii było przejście z trybu „czekamy, aż coś się wydarzy” do trybu „szukamy śladów napastnika, nawet jeśli nic jeszcze nie wybuchło”. Threat hunting w EDR to właśnie takie aktywne polowanie. Specjalista może zadać zapytanie do całej floty punktów końcowych, np.:

  • czy w ostatnich 30 dniach widzieliśmy proces powershell.exe uruchamiany z parametrami typowymi dla znanej kampanii APT?
  • na ilu stacjach pojawił się plik o konkretnym hashu lub nazwie?
  • czy gdziekolwiek w logach widać połączenia do domen związanych z danym botnetem?

To trochę jak codzienny obchód strażnika po magazynie. Nawet jeśli alarm nie zadzwonił, można przejść między regałami i poszukać subtelnych śladów włamania: źle domkniętych drzwi, przesuniętych kartonów, drobnych zarysowań na zamkach.

Integracja z ekosystemem – SIEM, SOAR i reszta towarzystwa

EDR rzadko działa w próżni. W większych organizacjach jego dane trafiają do SIEM-a, który zbiera logi z wielu źródeł: firewalli, systemów pocztowych, serwerów aplikacyjnych, usług chmurowych. Dopiero po połączeniu tych puzzli można zobaczyć pełniejszy obraz.

Przykładowo: EDR widzi, że na stacji użytkownika pojawił się podejrzany proces. SIEM dokłada do tego informację, że pięć minut wcześniej z konta tego użytkownika logowano się z nietypowego kraju, a brama pocztowa zarejestrowała dostarczenie e-maila phishingowego. Nagle jasne staje się, że nie chodzi o pojedyncze „dziwne zachowanie programu”, lecz o spójny incydent.

Dodatkowo coraz częściej stosuje się narzędzia SOAR, które opierają się na automatyzacji reakcji. Integracja EDR z SOAR-em pozwala na tworzenie kompleksowych scenariuszy: od zablokowania konta w Active Directory, przez aktualizację reguł firewalli, po otwarcie zgłoszenia w systemie ticketowym – wszystko na bazie jednego, dobrze zdefiniowanego wzorca ataku.

Od EDR do XDR – konsolidacja widoczności w całej infrastrukturze

Dlaczego sam EDR to za mało w erze chmury i pracy zdalnej

Gdy większość zasobów znajdowała się w sieci firmowej, a pracownicy siedzieli przy biurkach, monitorowanie punktów końcowych dawało bardzo dużo. Świat jednak się zmienił: aplikacje trafiły do chmury, dane rozproszyły się między SaaS-ami, a użytkownicy łączą się z dowolnych miejsc i urządzeń. W takim krajobrazie nawet najlepszy EDR widzi tylko fragment rzeczywistości.

Jak zrozumieć atak, jeśli część działań dzieje się w przeglądarce użytkownika, część w aplikacji w chmurze, część na serwerze bazodanowym w innym regionie, a pierwsze ślady pojawiają się w logach systemu pocztowego? Brakuje jednego „ekranu radaru”, który łączyłby wątki.

Odpowiedzią na ten problem stała się koncepcja XDR – rozszerzonego wykrywania i reagowania.

Co wyróżnia XDR – szerszy horyzont i wspólny język danych

XDR (Extended Detection and Response) zakłada zbieranie i korelowanie telemetrii z wielu typów systemów, nie tylko z samych punktów końcowych. Typowy zakres obejmuje przynajmniej:

  • punkty końcowe (EDR/EPP),
  • pocztę (bramy e-mail, usługi w chmurze),
  • sieć (NGFW, proxy, NDR),
  • tożsamość (AD, IdP, systemy MFA),
  • usługi chmurowe (IaaS, PaaS, SaaS).

Kluczowy jest wspólny model danych. Zdarzenia z tak różnych źródeł są normalizowane do jednego formatu, by dało się na nie patrzeć jak na elementy tej samej układanki. Z punktu widzenia analityka liczy się nie nazwa konkretnego produktu, ale to, że „użytkownik X zalogował się z adresu Y do aplikacji Z, a chwilę później jego laptop pobrał podejrzany plik z nietypowej domeny”.

XDR próbuje powiedzieć: nieważne, czy ta akcja wydarzyła się na firewallu, w chmurze czy na laptopie. Patrzymy na całą sekwencję jako na jedną kampanię ataku.

Przykład scenariusza: od phishingu do exfiltracji danych

Wyobraźmy sobie klasyczny scenariusz. Pracownik dostaje maila podszywającego się pod portal firmowy. Klik, strona logowania, wprowadzenie hasła. Tożsamość została już przejęta, choć komputer pracownika jest „czysty”.

W XDR może to wyglądać następująco:

  • moduł ochrony poczty rejestruje dostarczenie wiadomości z nowej domeny,
  • system tożsamości odnotowuje logowanie z nietypowego kraju kilka minut po kliknięciu w link,
  • moduł chmurowy widzi masowe pobieranie dokumentów z aplikacji współdzielenia plików,
  • EDR na stacji użytkownika rejestruje, że przeglądarka ustanawia połączenia z adresem IP powiązanym z infrastrukturą znanej grupy przestępczej.

Każde z tych zdarzeń z osobna mogłoby wyglądać „prawie normalnie”. Dopiero XDR, łącząc je w jedną historię, rozpoznaje wzorzec wykradania danych i automatycznie odpala reakcję: blokadę konta, wymuszenie resetu haseł, ograniczenie sesji w chmurze, izolację stacji, powiadomienie zespołu bezpieczeństwa.

Automatyzacja w XDR – od pojedynczych playbooków do orkiestracji

W EDR automatyzacja dotyczyła głównie pojedynczego hosta. XDR musi myśleć szerzej: jeśli widzimy, że konto zostało przejęte, to samo odcięcie laptopa od sieci nie wystarczy, bo napastnik może już operować całkowicie zdalnie w chmurze.

Dlatego scenariusze reakcji w XDR obejmują często skoordynowane działania w wielu domenach, takie jak:

  • zawieszenie sesji użytkownika we wszystkich aplikacjach SSO,
  • zmiana polityk dostępu warunkowego (np. chwilowe wymuszenie MFA dla całej grupy),
  • modyfikacja reguł na firewallu brzegowym lub wirtualnych firewallach chmurowych,
  • zlecenie EDR zbadania i ewentualnej izolacji wszystkich punktów końcowych, z których łączono się na przejęte konto.

To już nie jest pojedynczy „kill switch”, ale raczej sekwencja przełączników pociągniętych niemal jednocześnie w różnych częściach infrastruktury. Bez automatyzacji człowiek po prostu nie zdążyłby zareagować, szczególnie gdy atak rozgrywa się w minutach.

Rola analityki behawioralnej i uczenia maszynowego

Przy takiej ilości danych klasyczne reguły oparte wyłącznie na sygnaturach czy prostych korelacjach nie dają rady. XDR coraz częściej opiera się na modelach behawioralnych, które uczą się „normalnego” zachowania użytkowników, urządzeń i aplikacji, a następnie wychwytują odchylenia.

Przykładowo system potrafi zauważyć, że:

  • użytkownik, który zwykle loguje się z Warszawy między 8:00 a 16:00, nagle zaczyna łączyć się z innego kontynentu o 3:00 nad ranem,
  • serwer, który zwykle wysyła ściśle określony typ ruchu, zaczyna inicjować połączenia na nietypowe porty i adresy,
  • aplikacja SaaS, która była używana głównie do podglądu plików, jest nagle wykorzystywana do masowego eksportu danych.

Nie chodzi tu o „magiczne AI” rozwiązujące wszystkie problemy, lecz o narzędzie pomagające odsiewać szum od sytuacji naprawdę wymagających reakcji. Człowiek nadal jest potrzebny do interpretacji, natomiast maszyna wykonuje gigantyczną pracę wstępną: grupuje zdarzenia, wskazuje nietypowe wzorce, proponuje priorytety.

Wyzwania wdrożeniowe – od licencji po zmianę sposobu pracy

Brzmi to imponująco, ale przejście na XDR niesie ze sobą konkretne trudności. Pierwsza to integracja z istniejącą infrastrukturą. Nagle okazuje się, że trzeba spiąć ze sobą rozwiązania od różnych dostawców, ujednolicić formaty logów, zadbać o przepustowość łączy do wysyłania telemetrii i o pojemność systemów przechowywania danych.

Druga kwestia to zmiana sposobu pracy zespołu. Analitycy, którzy latami „gasili pożary” w konkretnych systemach (poczta, sieć, serwery), muszą nauczyć się patrzeć na incydent jako na całość, przechodząc między różnymi widokami w jednym narzędziu. Dla wielu to przeskok z roli specjalisty od jednego „kawałka świata” do roli bardziej przekrojowego analityka.

Do tego dochodzą tematy organizacyjne: klasyfikacja danych, kwestie RODO przy wysyłaniu logów do chmury, procedury reagowania. Narzędzie XDR może być bardzo zaawansowane, ale jeśli procesy w firmie nie potrafią z niego skorzystać, potencjał pozostaje niewykorzystany.

Konwergencja rozwiązań – gdy EPP, EDR i XDR stają się jednym ekosystemem

Na rynku widać dziś wyraźny trend łączenia różnych funkcji bezpieczeństwa pod jednym szyldem. To, co kiedyś było osobnymi produktami – antywirus, EDR, system DLP, ochrona poczty, monitoring chmury – coraz częściej występuje jako jeden pakiet, zarządzany z jednej konsoli. Dla producentów to szansa na uproszczenie oferty, a dla klientów – na ograniczenie „zoo” narzędzi i lepszą widoczność.

Najczęściej zadawane pytania (FAQ)

Jak wyglądały początki bezpieczeństwa sieci w czasach ARPANET-u?

Na początku bezpieczeństwo sieci praktycznie nie istniało jako osobna dziedzina. Komputery stały w zamkniętych laboratoriach, korzystali z nich głównie naukowcy i wojskowi, a ARPANET łączył kilka uczelni i instytutów badawczych. Głównym problemem była stabilność połączeń i wydajność, a nie ataki z zewnątrz.

Ochrona miała charakter czysto fizyczny: zamknięte serwerownie, listy uprawnionych osób, klucze, a później karty dostępowe. Jeśli ktoś wszedł do budynku i usiadł przy terminalu, zwykle mu ufano – hasła, o ile występowały, służyły raczej rozliczaniu czasu pracy niż realnej ochronie przed włamaniem.

Kiedy pojawiła się świadomość, że sieć może być zagrożeniem?

Przełom nastąpił, gdy sieci akademickie zaczęły się rozrastać, a ARPANET przestał być „klubem kilku uczelni”. Zaczęły się drobne nadużycia: podkradanie kont, podmiana komunikatów systemowych, nieautoryzowane kopiowanie plików. Z dzisiejszej perspektywy wygląda to jak żarty, ale wtedy zapaliła się lampka ostrzegawcza: sieć nie jest neutralna.

Równocześnie komputery zaczęto wykorzystywać w projektach wojskowych, gospodarczych i badaniach sponsorowanych przez rządy. Pojawiły się raporty, że zdalny dostęp może umożliwić sabotaż, szpiegostwo czy manipulację wynikami badań. Powoli odchodziło się od podejścia „mamy zaufanych ludzi, więc będzie dobrze” w stronę formalnych zasad i polityk bezpieczeństwa.

Na czym polegało przejście od ochrony fizycznej do ochrony logicznej?

Zmiana była stopniowa. Najpierw dostrzeżono, że sam login i hasło to za mało, gdy terminale stoją w wielu miejscach, a sieć łączy różne instytucje. Zaczęły się pojawiać rozbudowane systemy uprawnień w samych systemach operacyjnych, lepsze mechanizmy logowania kto, kiedy i do czego się loguje oraz pierwsze koncepcje centralnego uwierzytelniania w sieciach lokalnych.

Jednocześnie administratorzy zauważyli, że ręczne grzebanie w plikach konfiguracyjnych każdego serwera to ślepa uliczka. Potrzebne były narzędzia typowo „sieciowe”, które stałyby na straży całej infrastruktury, a nie tylko pojedynczej maszyny. Tak rodziła się osobna dziedzina: bezpieczeństwo sieci, oddzielone od samego „klucza do serwerowni”.

Co to jest firewall i jak działały pierwsze firewalle?

Firewall to urządzenie lub oprogramowanie, które oddziela sieć zaufaną (np. firmową) od niezaufanej (np. internetu) i decyduje, jaki ruch może przejść przez tę „ścianę”. Nazwa pochodzi od ścian przeciwpożarowych – ideą jest zatrzymanie „ognia”, zanim rozprzestrzeni się na całą sieć.

Pierwsze firewalle były tak naprawdę rozbudowanymi listami kontroli dostępu na routerach. Filtracja opierała się na prostych kryteriach: adres IP źródłowy i docelowy, numer portu (np. 80, 443) oraz protokół (TCP, UDP, ICMP). Dla takiego urządzenia każde połączenie na port 80 wyglądało podobnie – nie widziało ono, czy w środku jest zwykła strona, czy złośliwy atak.

Jakie ograniczenia miały pierwsze firewalle z filtracją pakietów?

Największym ograniczeniem było to, że widziały jedynie „kopertę”, a nie „list w środku”. Ruch poprawny od strony adresu IP i portu mógł nieść w sobie exploit, atak SQL injection czy tunelowane połączenie VPN, a prosty firewall tego nie rozpoznawał. W efekcie wiele zagrożeń prześlizgiwało się, bo formalnie spełniało reguły.

Drugim problemem było zarządzanie rosnącą liczbą usług. Gdy coraz więcej aplikacji pracowało na standardowych portach (80, 443), firewall nie był w stanie odróżnić „dobrej” aplikacji biznesowej od nielegalnego proxy czy komunikacji malware. Do tego dochodziły ogromne, skomplikowane listy reguł w dużych organizacjach, które łatwo było popsuć jedną błędną zmianą.

Czym różni się firewall stanowy (stateful) od prostego filtra pakietów?

Firewall stanowy nie patrzy tylko na pojedyncze pakiety, ale śledzi całe połączenia. Tworzy tablicę stanów, w której zapisuje, jakie sesje zostały zainicjowane z sieci wewnętrznej na zewnątrz i na tej podstawie decyduje, które odpowiedzi są dopuszczalne. Mówiąc obrazowo: nie tylko sprawdza dowód osobisty, ale też pamięta, kogo sam wcześniej wpuścił.

Dzięki temu można w prosty sposób zrealizować politykę „ze środka wolno inicjować połączenia, z zewnątrz nie”. Jeśli użytkownik w firmie otwiera stronę WWW, firewall zapamiętuje to połączenie i przepuszcza odpowiedzi. Natomiast gdy ktoś z internetu próbuje sam z siebie nawiązać połączenie do komputera w sieci wewnętrznej bez odpowiedniej reguły – ruch jest odrzucany. To był ważny krok w stronę bardziej świadomej, kontekstowej ochrony sieci.

Dlaczego rozwój firewalli był ważnym etapem na drodze do EDR i XDR?

Firewalle były pierwszym szeroko stosowanym narzędziem, które patrzyło na ruch „pomiędzy” systemami, a nie tylko na sam komputer czy użytkownika. Nauczyły branżę myślenia w kategoriach perymetru sieci, polityk dostępu i centralnego punktu kontroli. Bez tego trudno byłoby zrozumieć późniejsze rozwiązania, które analizują cały ekosystem – od stacji roboczych po serwery i chmurę.

Systemy EDR i XDR poszły krok dalej: patrzą nie tylko na to, skąd i dokąd płynie ruch, ale też co się dzieje na samych urządzeniach końcowych, jak wygląda zachowanie procesów, jakie są powiązania między zdarzeniami w różnych częściach infrastruktury. Jednak korzenie tej myśli – że trzeba obserwować i kontrolować przepływ informacji, a nie tylko „zamykać drzwi” – wyrastają właśnie z historii firewalli i pierwszych prób logicznej ochrony sieci.