W organizacjach, które rozwijają swoje aplikacje w środowisku chmurowym, w pewnym momencie pojawia się pytanie o bezpieczeństwo. Czy dane są dobrze zabezpieczone? Odpowiedź i rekomendacje jak podnieść poziom bezpieczeństwa przynosi Cloud Security Assessment - kompleksowa analiza środowisk chmurowych pod kątem bezpieczeństwa.

Rynek usług chmurowych intensywnie się rozwija: wg IDC wydatki w 2021 roku były wyższe o 8,8% niż w 2020 roku. O ile tworzone od zera start-upy praktycznie od początku rozwijają się w środowisku chmurowym, to firmy z dłuższą historią na rynku często posiadają środowiska on-premise. W przypadku dojrzałych organizacji transformacja do chmury rzadko oznacza jednoczesne przeniesienie wszystkich zasobów IT do dostawcy chmury publicznej. Zamiast rewolucji przeważnie ma miejsce ewolucja: nowe aplikacje w organizacji są wdrażane w modelu cloud lub poszczególne, już funkcjonujące aplikacje, są przenoszone z on-premise do nowego środowiska. Często te pierwsze projekty służą tak naprawdę zapoznaniu się z technologią, terminologią czy interfejsem. Po sukcesie takich pilotaży, z czasem kolejne systemy są przenoszone do chmury obliczeniowej.

Zaletą takiego rozwiązania jest szybkość w zrobieniu pierwszego kroku w chmurę. Łatwiej jest przenosić mniejsze workloady i upewniać się, że działają stabilnie. Jest jednak i druga strona tego procesu: jeżeli kolejne projekty chmurowe są wdrażane w pośpiechu, bez koordynacji i bez uwzględnienia odpowiedniej konfiguracji zabezpieczeń, obniżeniu ulega poziom bezpieczeństwa całego środowiska IT. Powodem może być np. brak wiedzy zespołu IT, który dotychczas pracował w systemach on-premise i nie zna chmurowych narzędzi bezpieczeństwa. Rozwiązaniem tej kwestii jest Cloud Security Assessment - kompleksowa analiza bezpieczeństwa środowiska IT.

Co to jest Cloud Security Assessment?

Cloud Security Assessment to ocena bezpieczeństwa konfiguracji środowiska chmurowego. CSA dotyczy kilku obszarów:

Regulacje sektorowe

Środowiska chmurowe czołowych dostawców tego typu usług są na tyle dojrzałe, że doczekały się szeregu standardów, które opisują jak w bezpieczny sposób powinno się je konfigurować. Mowa tutaj np. o CIS Benchmark, który znany jest w świecie bezpieczeństwa ze standardów dla systemów operacyjnych czy aplikacji, a teraz zostały opracowane także standardy dla środowisk chmurowych.

Dodatkowo niektórzy regulatorzy czy agencje rządowe wprowadziły własne standardy dla poszczególnych branż. Możemy wymienić tutaj choćby “Rekomendację D” polskiej Komisji Nadzoru Finansowego, czy PCI DSS dla analogicznych instytucji na rynku amerykańskim. Dlatego pierwszym aspektem w przypadku realizacji Cloud Security Assessment jest właśnie weryfikacja konfiguracji środowiska chmurowego pod kątem spełnienia wszystkim norm i standardów, które obowiązują daną organizację.

Przykładem wynikającym z wytycznych regulatora jest obowiązek wykorzystywania kluczy kryptograficznych zarządzanych przez firmę, a nie dostawcę usług chmurowych. Aby spełnić wymogi Komisji Nadzoru Finansowego klucz musi być zlokalizowany poza środowiskiem chmurowym, aby dostawca nie miał do niego dostępu. Przykładowo: jeżeli środowisko jest zlokalizowane na Google Cloud Platform, to klucz powinien znajdować się w chmurze innego dostawcy, np. na Microsoft Azure albo w środowisku on-premise.

Certyfikacje

W organizacjach o dojrzałości organizacyjnej istnieje wiele wewnętrznych regulacji procesów. Ich istnienie porządkuje obsługę wielu procesów, często ich istnienie jest też związane z utrzymaniem certyfikacji, które posiada przedsiębiorstwo. Część zapisów z zewnętrznych standardów jest przenoszona do regulacji obowiązujących wewnątrz organizacji, jak ma to miejsce w np. w przypadku normy ISO 27001. Proces ten powinien być poprzedzony analizą ryzyka, aby przenieść do organizacji tylko te zapisy, które jej dotyczą.

Podczas CSA analizowana jest konfiguracja środowiska organizacji - czy spełnia ono wewnętrzne oraz zewnętrzne regulacje. Doświadczony audytor jest w stanie skrócić czas tego procesu, ponieważ wie, w jakich zakresach różne normy mają części wspólne. Analizując dany obszar robi to od razu pod kątem kilku norm obowiązujących w danej organizacji.

Landing zone

Dużym ułatwieniem w zapewnieniu odpowiedniego poziomu bezpieczeństwa jest Landing zone. Jeżeli Landing zone jest budowany po prawidłowo wykonanym Cloud Security Assessment, to odpowiednio skonfigurowane mechanizmy bezpieczeństwa będą automatycznie implementowane w całym środowisku IT.

Jeżeli Landing zone już istnieje, to podczas CSA weryfikowana jest nie tylko faktyczna implementacja, ale także kod realizujący budowę środowiska, czyli mechanizmy IaC. Może się okazać, że kod budujący środowisko chmurowe nie uwzględnia wymogów weryfikowanych w dwóch poprzednich krokach. Jeżeli tak się stanie i wprowadzimy poprawki zarówno w konfiguracji samego środowiska, jak i kodzie budującym to środowisko, będziemy mieli pewność, że nowe zasoby chmurowe będą spełniały wszystkie wymogi bezpieczeństwa.

Bezpieczeństwo środowiska chmurowego

W ostatnim kroku weryfikowany jest poziom bezpieczeństwa środowiska chmurowego jako całości. Sprawdzane są wszystkie aspekty widoczności usług chmurowych w internecie, podział uprawnień i dostępności, a także kompletność zabezpieczeń w ujęciu rynkowych standardów. Analizowane są punkty styku poszczególnych usług z których korzystamy w środowisku chmurowym, aby zweryfikować zależności między nimi i upewnić się, że wzajemnie nie wpływają na siebie negatywnie.

Do tego punktu potrzeba zrozumienia jakie usługi są realizowane przez środowisko chmurowe, jakie dane przetwarzamy i jaki potencjalny wpływ na prowadzony biznes miałyby incydenty bezpieczeństwa, włączając w to także niedostępność. Wiedza ta pozwala na lepszy dobór mechanizmów bezpieczeństwa, tak aby ryzyko związane z bezpieczeństwem informacji, systemów teleinformatycznych, czy ich dostępności było jak najmniejsze.

Dlaczego warto wykonać CSA?

Najprostszą odpowiedzią na tak postawione pytanie jest: “aby zwiększyć bezpieczeństwo i zminimalizować ryzyko”. Cloud Security Assessment pozwala na zwiększenie bezpieczeństwa infrastruktury chmurowej w ujęciu całościowym. A jego niektóre elementy, jak chociażby zmiana kodu IaC, powodują, że poziom bezpieczeństwa nie zwiększa się tylko dla obecnej infrastruktury, ale także dla tej, która dopiero powstanie. Dla tych, którzy z racji presji biznesowej i ograniczonego czasu musieli odłożyć bezpieczeństwo na boczny tor, daje aktualny obraz (często zwany Cloud Security Posture) oraz szereg drogowskazów co jeszcze i w jaki sposób poprawić, aby czuć się stosunkowo bezpiecznie.

Kolejnym benefitem przeprowadzenia Cloud Security Assessment jest upewnienie się, czy nasza chmurowa infrastruktura jest zgodna z wszelkimi regulacjami, zarówno tymi wewnętrznymi, jak i zewnętrznymi, które nas obowiązują. Wykrycie ewentualnych niezgodności pozwala na szybką reakcję, ewentualne zmodyfikowanie wartości wynikających z szacowania ryzyka czy opracowanie planu jak do tej zgodności możemy dojść. Lepiej zweryfikować zgodność samemu, niż dowiedzieć się o błędach podczas audytu nadzoru czy audytu certyfikującego.

Warto zwrócić uwagę na dodatkowe korzyści, jakie niesie cykliczne wykonywanie takiego ćwiczenia. Osiągamy w ten sposób dwa niezwykle istotne cele. Pierwszy z nich to weryfikacja, czy faktycznie poprawiliśmy to, co zostało znalezione podczas ostatniego audytu. Czy plany, które sobie wówczas zrobiliśmy, zostały zrealizowane? Drugi z nich to weryfikacja, czy wobec nieustannie zmieniających się przepisów i regulacji nadal jesteśmy zgodni z wewnętrznymi i zewnętrznymi regulacjami?

Wszystko powyższe składa nam się w całość, jako świadome i odpowiedzialne zarządzanie bezpieczeństwem środowiska chmurowego. Analogicznie do sytuacji, w której zapewne jeszcze do niedawna realizowaliśmy wszystko w modelu on-premise.

Czy mogę to zrobić sam?

Teoretycznie jest to możliwe, chociaż w praktyce nie takie proste. Przede wszystkim osoby, które weryfikują bezpieczeństwo środowiska chmurowego nie mogą jednocześnie za nie odpowiadać. Gdyby doszło do takiej sytuacji braki nie zostałyby wykryte - albo świadomie (“tutaj mamy braki, ale nikt dotąd nie zauważył, więc lepiej tego nie zgłaszać”) albo nieświadomie, czyli z braku wiedzy (“od zawsze tak działamy, więc chyba jest dobrze”). Jak widać, żeby rzetelnie przeprowadzić CSA trzeba mieć odpowiednie zasoby, wiedzę i doświadczenie.

Jeżeli jednak w organizacji istnieją odpowiednie zasoby, to w ramach Cloud Security Assessment należy wykonać następujące kroki:

  1. Inwentaryzacja obowiązujących regulacji
  2. Dostosowanie regulacji do konkretnych wymagań technicznych
  3. Inwentaryzacja zasobów w chmurze
  4. Weryfikacja bezpieczeństwa poszczególnych komponentów
  5. Weryfikacja bezpieczeństwa środowiska chmurowego jako całości
  6. Opracowanie raportu z prac
  7. Weryfikacja wyników prac z poprzednim raportem.

Warto wiedzieć, że czołowi dostawcy usług chmury publicznej oferują wiele wbudowanych narzędzi, w tym rozwiązania klasy Cloud Security Posture. W przypadku Google Cloud jest to Security Command Center, a w przypadku Azure jest to Security Center. Oba narzędzia pozwalają na przeprowadzenie podstawowych weryfikacji bezpieczeństwa konfiguracji środowiska w ujęciu najlepszych praktyk czy norm i standardów, takich jak np. ISO 27001 czy CIS Benchmark. Należy jednak pamiętać, że narzędzia te nie zapewnią weryfikacji czy organizacja spełnia wymogi regulacyjne wewnętrzne oraz niektóre zewnętrzne. Nadal potrzebna jest praca analityka, chociaż Security Command Center i Security Center mogą ją przyspieszyć.

Jest jeszcze jedna zaleta zlecenia Cloud Security Assessment zewnętrznym doradcom - świeżość spojrzenia. Ktoś kto nie zna organizacji, może zauważyć o wiele więcej niedoskonałości w konfiguracji zabezpieczeń lub procedurach, tym bardziej, że analizując organizacje z różnych sektorów ma porównanie z innymi podmiotami.

Eksperci Chmury Krajowej, którzy mają doświadczenie w audytach oraz konfiguracji środowisk chmurowych w różnych organizacjach, również działających w sektorach regulowanych (finanse, ochrona zdrowia), oferują usługi Cloud Security Assessment dla organizacji różnej wielkości.