Upss… Coś nie tak z Twoją przeglądarką
Do poprawnego wyświetlania formularza zalecana jest przeglądarka Chrome lub Safari.
Blog

Web Application Firewall (WAF) – dlaczego Twoje aplikacje potrzebują więcej niż zwykłego firewalla?

Jak podaje Verizon w najnowszym raporcie „Data Breach Investigations” z 2023 roku, ataki na aplikacje internetowe stanowią – już kolejny rok z rzędu – główną przyczynę incydentów bezpieczeństwa i wycieku danych. Rosnący poziom skomplikowania aplikacji i dynamiczna koniunktura zagrożeń sprawiają, że skuteczna ochrona staje się prawdziwym wyzwaniem. Tym bardziej, że nigdy nie możemy być w 100% pewni, że nasza aplikacja nie ma żadnych luk w zabezpieczeniach. W tym artykule pytamy, czy tradycyjne narzędzia ochrony zdają w tych okolicznościach egzamin z bezpieczeństwa, a także jaką przewagę nad nimi ma nowoczesny Web Application Firewall.

Co to jest Web Application Firewall (WAF)?

Web Application Firewall to zaawansowany, automatyczny system oddzielający niewidoczną barierą ochrony aplikacje sieciowe oraz ich zewnętrznych użytkowników. Analizuje on całą komunikację HTTP (Hypertext Transfer Protocol) i HTTPS (Hypertext Transfer Protocol Secure), chroniąc aplikacje przed atakami typu cross-site scripting (XSS), SQL incjection, cookie poisoning oraz innymi z listy OWASP Top 10 (Open Web Application Security Project, globalnej organizacji opracowującej standardy bezpieczeństwa dla oprogramowania).

WAF pomaga zdeterminować, jaki ruch sieciowy jest dla naszej aplikacji bezpieczny, a jaki – złośliwy. Robi to poprzez:

  • blokowanie ataków wykorzystujących luki w zabezpieczeniach, jeszcze zanim przedostaną się one do właściwej aplikacji;
  • monitoring ruchu przychodzącego w celu identyfikacji i blokowania skanów, ataków i botów;
  • monitoring ruchu wychodzącego w celu zapobiegania wycieku danych poufnych.

Model OSI – na jakich poziomach działają zapory?

Aby lepiej pojąć mechanizm działania Web Application Firewalla, warto zapoznać się z modelem OSI (Open Systems Interconnection Model), który tłumaczy zachodzące w sieci procesy komunikacyjne i pomaga projektować nowe rozwiązania w zakresie zarówno hardware’u, jak i software’u. Choć swoją genezą sięga lat siedemdziesiątych, wciąż stanowi aktualny i powszechnie stosowany schemat.

Model OSI tworzy siedem warstw ułożonych w hierarchii od fizycznej do najbardziej abstrakcyjnej:

  1. Warstwa fizyczna – transfer surowych bitów między urządzeniem wysyłającym i odbierającym z wykorzystaniem medium transmisji.
  2. Warstwa łącza danych – transfer danych między węzłami i pakowanie w ramki, a także korekta błędów poprzedniej warstwy.
  3. Warstwa sieci – odbiór ramek z poprzedniej warstwy oraz transfer do miejsca docelowego z pomocą adresów logicznych (np. IP).
  4. Warstwa transportu – podział danych na segmenty, regulacja rozmiaru, porządku transferu (np. TCP – protokół najczęściej wykorzystywany do przeglądania sieci, a po drugiej stronie UDP [User Data Protocol, protokołu pakietów użytkownika] używany choćby do streamów).
  5. Warstwa sesji – na tym poziomie następuje rozpoczęcie, zarządzanie i zakończenie sesji między odbiorcą i nadawcą.
  6. Warstwa prezentacji – inaczej warstwa składni; zmiana formatu danych na odpowiednią postać dla najwyższej warstwy aplikacji.
  7. Warstwa aplikacji – zapewnianie interfejsów i usług dla aplikacji użytkownika, takich jak przeglądarki internetowe, poczta elektroniczna i protokoły komunikacyjne.

Czym różni się WAF od innych firewalli?

Zapory sieciowe (Network Firewalls)

Tradycyjna zapora sieciowa działa na warstwach trzeciej i czwartej modelu OSI – sieci oraz transportu. Jej zadaniem jest po prostu monitoring ruchu sieciowego, który odbywa się na podstawie zasad określonych przez źródło IP (Internet Protocol). Jej możliwości są mocno ograniczone, ponieważ identyfikuje ona aplikację jedynie po przypisanym jej numerze portu, który można relatywnie łatwo zmienić.

Intrusion Detection oraz Intrusion Prevention Systems (IDS i IPS)

Systemy wykrywania i zapobiegania włamaniom to rozwiązania sprzętowe lub programowe, które operują na poziomach od trzeciego do siódmego w modelu OSI, w zależności od swojej konfiguracji i kontekstu przeznaczenia. Zabezpieczają ruch sieciowy na podstawie odgórnych reguł, a niektóre, bardziej zaawansowane systemy są zdolne do analizy także kontekstu ruchu sieciowego, co pomaga w odróżnianiu bezpiecznych i złośliwych żądań.

Next-generation Firewalls (NGFW)

Firewalle nowej generacji, czyli platformy ochrony sieciowej, łączą możliwości zapór sieciowych (zwykłych firewalli) i systemów wykrywania oraz prewencji włamań (IDS i IPS), pozwalając na głęboką inspekcję pakietów (Deep Packet Inspection, DPI), czyli monitoring ruchu sieciowego na poziomie pakietu, treści, nadawcy i odbiorcy. W rezultacie są w stanie wykryć różnego rodzaju ataki, w tym typu malware. NGFW-y stosują zarówno filtrowanie pasywne, jak i aktywne, analizując każde zapytanie w celu zapewnienia ochrony przed zaawansowanymi zagrożeniami. Ich zdolność do analizy ruchu sieciowego może być konfigurowana, ale w przeciwdziałaniu zagrożeniom działają na znacznie bardziej zaawansowanym poziomie niż tradycyjne firewalle.

Web Application Firewall

WAF operuje aktywnie na najwyższej, siódmej warstwie modelu OSI, czyli aplikacji. Postępująca automatyzacja to miecz obosieczny – zwiększając możliwości atakujących, pomaga Web Application Firewallowi odróżniać typowy i nietypowy ruch HTTP w sposób, który nie jest dostępny niewyposażonym w podobne narzędzia inżynierom ds. bezpieczeństwa.

Nowoczesny WAF obejmuje monitoringiem i ochroną cały ruch HTTP (począwszy od zwykłego otwarcia strony) oraz interfejsy programowania aplikacji (API). Działa w zakresie ruchu przychodzącego i wychodzącego, czyli dokonuje:

  1. Analizy zapytania na podstawie zdefiniowanych reguł, zanim trafi ono do właściwej aplikacji, i ewentualnej blokady lub dopuszczenia do aplikacji.
  2. Analizy odpowiedzi aplikacji i ewentualnego zablokowania jej przed wysłaniem do odpytującego (atakującego).

WAF umożliwia automatyzację tworzenia indywidualnych reguł ochrony dla każdego narażonego na potencjalny atak interfejsu. Wystarczy wdrożyć go przed daną aplikacją lub zintegrować z elementami aplikacji kontenerowej.

Podczas analizy zapytań Web Application Firewall może działać w ramach którejś z następujących opcji:

  • czarna lista – zestawienie reguł (zazwyczaj dotyczących parametrów przekazywanych za pomocą adresu URL lub danych wysłanych przy pomocy formularzy), które WAF uzna za niebezpieczne i zablokuje ich ruch do aplikacji (opcja stosowana najczęściej);
  • biała lista – zestawienie (analogicznych jak w przypadku czarnej listy) reguł, które WAF uzna za bezpieczne i otrzymają zielone światło w ramach ruchu do aplikacji;
  • metoda hybrydowa – wykorzystująca oba modele.

W ramach dodatkowej funkcjonalności, niektóre implementacje Web Application Firewalla wykorzystują technikę JavaScript injection. Robią to w celu oceny, czy użytkownik aplikacji jest człowiekiem, ustanawiając unikalny „odcisk palca” danego klienta, co pozwala na łatwiejszą identyfikację botów i innych zautomatyzowanych narzędzi. Co ważne, działania Web Application Firewalla możemy skonfigurować w taki sposób, aby były transparentne i nie wpływały na doświadczenie użytkownika (User Experience).

Dostępne sposoby wdrożenia WAF

Podejmując decyzję, która opcja wdrożenia Web Application Firewalla będzie dla Twojej firmy najodpowiedniejsza, trzeba wziąć pod uwagę miejsce wdrożenia aplikacji internetowych, które WAF ma docelowo chronić. Czy wszystkie znajdują się w lokalnym centrum danych? A może w chmurze publicznej? Ewentualnie w rozproszonym środowisku wielochmurowym? Odpowiedzi na te pytania są kluczowe do określenia, jaki sposób wdrożenia WAF będzie najbardziej optymalny.

Każda z metod cechuje się własnymi zaletami i wyzwaniami:

  1. WAF sprzętowy (network-based) – zainstalowane lokalnie urządzenie, którego mocną stroną jest szybkość działania, a słabą wymóg posiadania własnych zasobów do przechowywania danych, a także okresowej konserwacji. To relatywnie najdroższa z dostępnych opcji.
  2. WAF wirtualny (host-based) – aplikacje zintegrowane z serwerem hosta, oferujące największą elastyczność, czyli możliwość dostosowania narzędzia do indywidualnych potrzeb, dodatkowo również tańsze niż opcja powyższa. Słabe strony to duże zużycie zasobów lokalnego serwera i większa trudność implementacji.
  3. WAF chmurowy (cloud-based) – wdrożenie w chmurze, które sprowadza się zazwyczaj do zmian w DNS i przekierowania ruchu. Metoda ta rozkłada koszty na stałe opłaty abonentowe (jest zatem najtańsza), jest stale aktualizowana i skalowalna. Wyzwaniem natomiast pozostaje przekazanie całej odpowiedzialności stronie świadczącej usługę, dlatego dobrze jest poświęcić trochę czasu na wybór zaufanego dostawcy.

Podsumowanie – o czym jeszcze musisz pamiętać, zabezpieczając aplikacje Web Application Firewallem?

W swojej obecnej, rozwijanej od wielu lat formie WAF to skuteczne narzędzie chroniące Twoje aplikacje internetowe przed najgroźniejszymi rodzajami ataków, czyli m.in.: cross-site-scripting (XSS), cross-site forgery, file inclusion, SQL injection czy ataki DDoS. Zaporę aplikacji webowych możesz wdrożyć zarówno w modelu sprzętowym, jak i wirtualnym czy chmurowym.

Pamiętaj jednak, że Web Application Firewall nie powinien być jedyną zaporą, której powierzysz zadanie ochrony aplikacji webowych. WAF najbardziej efektywnie działa w połączeniu z tradycyjnym firewallem sieciowym (operującym na warstwie czwartej modelu OSI) lub firewallem nowszej generacji. Nie bez znaczenia pozostaje ponadto integracja zapory aplikacji z innymi systemami ochrony, np. wykrywania i zapobiegania włamaniom (IPS). Co ważne, wdrożenie WAF nie oznacza, że będzie on już zawsze chronił nasze zasoby z jednakową skutecznością. Wraz ze zmianami samej aplikacji regularnej aktualizacji wymagają reguły bezpieczeństwa rządzące działaniem Web Application Firewalla. Odpowiednio zaimplementowany, zintegrowany z innymi zaporami i skonfigurowany WAF będzie jednak Twoim największym przyjacielem w walce z potencjalnymi atakami.

Artykuł powstał przy wsparciu merytorycznym Patryka Gruszki z Działu Produkcji Marketingowej Comarch.

Zapraszamy do naszego poprzedniego artykułu "Bundlery JavaScript – czy warto przerzucić się z Webpacka na Vite’a?", w którym przyglądamy się starszemu i popularnemu Webpackowi, a także typowanemu na jego następcę Vite’owi.

Dodaj komentarz

      Adres e-mail nie zostanie opublikowany
            Komentarze
            (0)

              Najczęściej czytane w kategorii Technologie