28 listopada | Zapraszamy na spotkanie AI w finansach 🦾 | Zapisz się
October 17, 2023

Jak AWS dba o bezpieczeństwo sieci

Dowiedz się, jak zabezpieczyć swoje zasoby w chmurze AWS. Odkryj jakie usługi bezpieczeństwa oferuje AWS.

Julia Chotkiewicz

W ostatnich latach migracja do chmury stała się koniecznością dla każdego przedsiębiorstwa, które chce zoptymalizować koszty, usprawnić wydajność i zapewnić dostępność systemów i danych, jednak to wszystko wiąże się z jednym głównym wyzwaniem: zapewnieniem bezpieczeństwa. W niniejszym artykule skupimy się, jak zabezpieczyć swoją sieć w chmurze Amazon Web Services.

Model współdzielonej odpowiedzialności w chmurze AWS

Czym jest model współdzielonej odpowiedzialności w chmurze AWS? W tym modelu dostawca odpowiada za bezpieczeństwo chmury jako takiej, czyli globalne bezpieczeństwo infrastruktury, software i hardware, z kolei po stronie klienta leży zabezpieczenie tego, co w chmurze, czyli np. szyfrowanie i backup’owanie danych, zarządzanie dostępami, bezpieczeństwo aplikacji i sieci. 

AWS Shared Responsibility Model
AWS Shared Responsibility Model

W procesie budowania i zarządzania siecią w AWS mamy wiele usług, zasobów oraz narzędzi do ochrony, zarówno sieci, jak i aplikacji. Główne funkcje, jakie pełnią to: 

Zabezpieczanie sieci w organizacjach pomaga zapobiegać atakom, które mogą negatywnie wpłynąć na ich elastyczność i wydajność lub narazić dane wrażliwe na wyciek. Jeżeli zadbamy o odpowiednią konfigurację usług AWS zaliczanych do grupy bezpieczeństwa sieciowego, możemy wspomóc utrzymanie wysokiej dostępności i szybkości przepływów w sieci. Te usługi można skonfigurować w taki sposób, aby zawsze przeprowadzały detekcję i automatycznie łagodziły zagrożenia, a finalnie optymalizowały dostępność globalną aplikacji w sieci oraz ogólne Quality of Experience użytkowników. 

Wyróżniamy następujące usługi w zakresie ochrony i kontroli sieci w chmurze AWS:

AWS zapewnia usługi, które odpowiadają szczególnym potrzebom w zakresie ochrony i tzw. najlepszych praktyk bezpieczeństwa oraz zgodności ze standardami i wymogami stawianymi w tym obszarze. Usługi te zapewniają dodatkową warstwę zabezpieczenia na poziomie hosta, sieci i aplikacji. Poniżej przedstawiona została charakterystyka każdej z nich wraz z krótką analizą korzyści ich zastosowania. 

AWS Firewall Manager

Pomaga w centralnej konfiguracji i zarządzaniu regułami firewall’i na kontach i aplikacjach w środowisku AWS dla użytkowników pracujących stacjonarnie, jak i zdalnie. Kiedy tworzymy kolejne nowe aplikacje w organizacji, Firewall Manager egzekwuje wspólny zestaw reguł bezpieczeństwa w spójny i hierarchiczny sposób, który pomaga w dojściu do zgodności z wszelkimi przepisami. Ponadto warto wspomnieć, iż zapewnia wbudowaną ochronę przed atakami typu Distributed Denial of Service (DDoS). 

Ze względu na stosunkowo wysokie koszta warto rozważyć inwestycję w tę usługę w przypadku zarządzania większą organizacją i równoczesnym korzystaniu z innych usług AWS, m.in. AWS Organization. Ponadto nie jest to usługa klasy Unified Threat Management (UTM), w związku z czym, jeśli chcesz zapewnić brakujące funkcjonalności dla zabezpieczenia sieci, wymagana jest integracja, chociażby z AWS WAF czy Amazon GuardDuty w celu uzupełniania o funkcjonalność Intrusion Prevention System (IPS). 

AWS Firewall Manager w AWS Organization use case
AWS Firewall Manager w AWS Organization use case

AWS Network Firewall

Wdraża dostęp do zabezpieczeń sieciowych dla Amazon VPC. To w pełni zarządzana usługa, która ułatwia wdrożenie podstawowego zabezpieczenia sieciowego dla wszystkich Amazon VPCs, w tym funkcje, które mogą zapobiec zagrożeniom i zapewniają ochronę przed złośliwą aktywnością na poziomie sieci. Mowa tutaj przede wszystkim o inspekcji i filtrowaniu ruchu do oraz z lub pomiędzy VPCs.

Dzięki włączonej funkcji bezpieczeństwa Deletion Protection mamy gwarancję, że firewall’e nie mogą zostać przypadkowo usunięte.

AWS Network Firewall jest swego rodzaju lepszym rozwiązaniem od AWS WAF, ponieważ filtruje adresy URL, przeprowadza głęboką inspekcję sieci dzięki IPS oraz detekcję protokołów aplikacji, z kolei AWS WAF działa na ostatniej warstwie modelu OSI, dlatego jest ograniczony co do tych funkcjonalności. Jako kolejną zaletę mogę dodać, że ten rodzaj Firewall’a jest kompatybilny z innymi usługami AWS takimi jak: AWS S3, AWS Organization, AWS Kinesis, AWS Direct Connect oraz oczywiście AWS Firewall Manager.

Schemat ruchu wchodzącego i wychodzącego z VPC
Schemat przedstawia ruch wchodzący i wychodzący z VPC, który przechodzi przez kontrolę firewalla

AWS Network Access Control Lists (NACLs)

Network ACLs jest rodzajem filtra bezpieczeństwa, jak firewall, który może filtrować ruch, gdy wchodzi i wychodzi z podsieci. Sieciowe listy kontroli dostępu są dołączane na poziomie podsieci, z kolei domyślna sieciowa lista kontroli dostępu jest tworzona dla domyślnego Amazon VPC i jest powiązana ze wszystkimi podsieciami.

NACLs są używane dla ruchu wchodzącego lub wychodzącego z podsieci i są powiązane z podsiecią, a nie z zasobami wewnątrz podsieci. Zarządzają tylko ruchem, który przekracza granicę podsieci, dlatego, jeżeli mamy dwie instancje Amazon EC2 w tej samej podsieci co Amazon VPC, które się komunikują, Network ACLs nie będą miały żadnego udziału, ponieważ komunikacja między tymi dwoma instancjami nie przekracza granicy podsieci.

NACLs są bezstanowe, co oznacza, że wszelkie zmiany wprowadzone do reguły przychodzącej nie zostaną odzwierciedlone w regule wychodzącej, w związku z czym, jeśli dodamy regułę dla ruchu przychodzącego, to potrzebujemy również dodać tę samą regułę dla ruchu wychodzącego, ponieważ nasze listy widzą ruch tylko w jedną stronę. NACLs w naszej organizacji musi wyraźnie widzieć, że ruch, który został dopuszczony do ruchu przychodzącego jest także dopuszczony do ruchu wychodzącego. Ponieważ NACLs widzą ruch pomiędzy klientem a serwerem lub dwoma urządzeniami jako dwa różne strumienie, potrzebne są dwie reguły, po jednej dla każdego strumienia.

W temacie reguł NACLs - są one przetwarzane w kolejności od najniższego do najwyższego numeru reguły. Gdy reguła zostanie dopasowana, podejmowana jest akcja i przetwarzanie zostaje zatrzymane. Po znalezieniu dopasowania nie są analizowane żadne inne reguły. Network ACLs mogą wyraźnie zezwalać lub odmawiać dostępu do określonych adresów IP.

NACLs są tylko częścią rozwiązania dla zapewnienia bezpieczeństwa sieci, ponieważ analizują pakiety tylko po przekroczeniu granicy podsieci. Wiąże się to z tym, że nie oceniają, czy pakiety są w stanie przejść do właściwych instancji EC2. Jest to na pewno istotne z punktu widzenia klienta, który w swojej organizacji operuje różnymi instancjami EC2 w jednej podsieci, które z kolei kierują się różnymi regułami dotyczącymi np. tym jaki ruch jest do nich kierowany. W takiej sytuacji warto zastanowić się na dodatkową ochroną sieci na poziomie instancji.

NACL use case
NACL use case

Amazon VPC Security Groups

Następną funkcją zabezpieczeń w AWS są Security Groups. które w przeciwieństwie do NACLs, są dołączone do elastycznego interfejsu sieciowego zasobów AWS w podsieci. Grupy te znajdują się na granicy instancji Amazon EC2, a nie podsieci, jak to jest w przypadku Network ACLs.

Security Groups są statyczne i mają reguły przychodzące oraz wychodzące. W tym przypadku ruch jest postrzegany jako jeden strumień — jeżeli jest wpuszczany, to jest on automatycznie wypuszczany z powrotem. Jedną z dużych różnic pomiędzy grupami zabezpieczeń a NACL jest to, że te pierwsze rozpoznają zasoby AWS, w związku z czym możemy przydzielić dla nich reguły.

Jako przykład wyobraźmy sobie instancje Amazon EC2, której możemy nadać ID instancji, aby zezwolić na ruch. Security Groups umożliwiają również dodawanie reguł dla innych grup zabezpieczeń, jak i dla nich samych. Grupy te nie mogą jawnie odmówić dostępu do adresu IP, niemniej jednak mają tzw. ukrytą jawną odmowę, co oznacza, że wszystko, co nie jest jawnie dozwolone, zostaje odrzucane.

Security Groups use case
Security Groups use case

AWS Shield

Usługa AWS Shield w wersji standardowej zapewnia podstawową ochronę DDoS. Jest automatycznie włączana dla wszystkich klientów AWS bez dodatkowych opłat, niemniej jednak istnieje również AWS Shield Advanced, usługa zapewniająca zaawansowaną ochronę DDoS, która jest rozwiązaniem płatnym.

Odmowa usługi jest jednym z prostszych sposobów, w jaki atakujący mogą zaatakować serwer WWW. Robią to, poprzez wysyłanie jak największego ruchu na ten konkretny serwer. Kiedy ilość wysyłanego ruchu przekroczy określony próg, serwer WWW po prostu zostaje obciążony i nie jest już w stanie przetworzyć żadnego legalnego ruchu od zwykłych użytkowników.

Chociaż AWS Shield jest darmowy w swojej podstawowej wersji, to warto rozważyć jego rozszerzoną wersję, która zapewnia zaawansowaną ochronę przed atakami DDoS.

Miesięczna opłata za AWS Shield Advanced wynosi 3000 USD oraz ewentualne dodatkowe opłaty za ponadprzeciętne zużycie Elastic Load Balancing (ELB), Amazon CloudFront, Amazon Route 53, AWS Global Accelerator i Amazon EC2, dlatego zanim zdecydujemy się na płatną wersję, warto dobrze przeanalizować potrzeby swojego biznesu, tak aby nie ponosić zbędnych kosztów.

Amazon Route 53 Resolver DNS Firewall

Ta usługa pozwala na szybkie wdrożenie zabezpieczeń DNS we wszystkich VPCs w środowisku AWS. Route 53 Resolver DNS Firewall blokuje zapytania do znanych złośliwych domen (denylist) oraz zezwala na zapytania do tych zaufanych (allowlist). Poza tym, możemy szybko rozpocząć ochronę przed typowymi zagrożeniami DNS za pomocą AWS Managed Domain Lists. Amazon Route 53 Resolver DNS Firewall współpracuje z AWS Firewall Manager, dlatego mamy możliwość budowania polityk opartych na regułach DNS Firewall, które później mogą być centralnie wykorzystywane w VPC na kontach danej organizacji.

Route 53 Resolver DNS Firewall uzupełnia istniejące usługi bezpieczeństwa sieci i aplikacji w AWS poprzez zapewnienie kontroli i przejrzystości ruchu DNS Route 53 Resolver (np. AmazonProvidedDNS) dla całego VPC.

Jest to stosunkowo niedrogie i przystępne rozwiązanie, proste w konfiguracji. Sprawdzi się w mniejszych i większych firmach, z różnych branż.

Route 53 Resolver DNS Firewal use case
Route 53 Resolver DNS Firewal use case

AWS Web Application Firewall (WAF)

WAF to zapora aplikacji internetowych do analizy żądań HTTP(S), w celu określenia czy ruch powinien zostać przepuszczony na podstawie konkretnych kryteriów. Działa na podstawie zdefiniowanej listy kontroli dostępu do sieci (ACL), a następnie wiąże ją z jednym lub kilkoma zasobami aplikacji internetowych, które mają być chronione.

Implementacje WAF w AWS są dołączane do infrastruktury, tak aby można było analizować ruch, jaki się odbywa w Application Load Balancer (ALB), CloudFront lub AWS API Gateway. Następnie możemy skonfigurować reguły na WAF, na których podstawie, będzie on dopasowywał cały ruch, aby zdecydować, czy konkretne żądanie powinno zostać zablokowane czy też nie.

Na podstawie wcześniej omówionych technologii do zabezpieczania sieci możemy już wnioskować ewentualne zalety i wady tego serwisu, m.in. to, że obsługuje 7 warstwę modelu OSI, w związku z czym nie zaleca się uruchamiać tej usługi samodzielnie ze względu na jej możliwości oraz koszta, niemniej jednak w połączeniu z innymi usługami AWS, z jakich korzystasz, może okazać się wystarczająca do monitorowania żądań HTTP(S). 

WAF use case
WAF use case

Podsumowanie

AWS oferuje szereg usług bezpieczeństwa, to jednak sprawia, że dostosowanie ich do potrzeb konkretnej organizacji może być nie lada wyzywaniem i pomimo modelu pay-as-you-go, może się okazać dosyć kosztowne. Jeśli chcesz mieć pewność, że Twoje zasoby w chmurze są bezpieczne i jednocześnie nie chcesz przepłacać za zbędne usługi — napisz do nas. Przeanalizujemy, które usługi bezpieczeństwa AWS rzeczywiście poprawią stan bezpieczeństwa Twojej firmy, pomożemy Ci je prawidłowo skonfigurować, wreszcie oszacujemy koszty za pomocą AWS Pricing Calculator, tak abyś skrupulatnie zaplanował swoje wydatki i znalazł potencjalne oszczędności.

Porozmawiajmy o Twoim projekcie

Chętnie odpowiemy na Twoje pytania, by wesprzeć Cię w chmurze.

Dziękujemy! Twoje zgłoszenie zostało wysłane!
Ups! Coś poszło nie tak podczas wysyłania formularza.