Bezpieczeństwo Danych w Chmurze z Modułem HSM Utimaco
Na nic się zda nawet najdoskonalsze szyfrowanie danych, jeżeli dostęp do klucza kryptograficznego będą miały osoby postronne – choćby administratorzy firm oferujących hosting w chmurze. To ważne zagadnienie również z punktu widzenia regulacji prawnych. Sprzętowy moduł bezpieczeństwa (HSM) daje tu pewność i bezpieczeństwo również pod względem zgodności z przepisami.
Użytkownicy usług w chmurze muszą zatroszczyć się o odpowiednią ochronę krytycznych informacji biznesowych i osobowych. Tak przewidują unijne przepisy związane z ochroną danych. Pojawia się więc pytanie: jak zrealizować to postanowienie to w praktyce?
Podstawy prawne
Przepisy o ochronie danych obowiązujące przedsiębiorców zawarte są w ogólnym rozporządzeniu o ochronie danych (General Data Protection Regulation, GDPR). GDPR stanowi, że prawodawstwu europejskiemu w tym obszarze podlegają również dostawcy usług w chmurze z innych krajów.
GDPR wejdzie w życie w maju 2018 r. Wtedy użytkownicy korzystający z usług związanych z hostingiem danych w chmurze muszą wiedzieć, gdzie ich dane będą przetwarzane – dokładniej mówiąc: w którym centrum obliczeniowym. Operator usług w chmurze jest ponadto zobowiązany zastosować odpowiednie środki, by zapobiec sytuacji, w której dostęp do danych uzyska nieupoważniony użytkownik. Środkiem takim może zaś być w tym przypadku sprzętowy moduł bezpieczeństwa.
Czy wymogi GDPR oznaczają również dalej idące zobowiązania dla użytkowników chmur obliczeniowych, jeszcze nie wiadomo. W grę mogą jendka wchodzić rozwiązania, które wykluczą dostęp osób trzecich do kluczy użytych do szyfrowania. W tym przypadku dostawcy usług w chmurze musieliby, tak jak ich klienci, zrewidować stosowane do tej pory procedury postępowania z kluczami. Dotyczy to zwłaszcza technologii zintegrowanych w aplikacjach stosowanych w chmurze.
Zasadniczy problem: zarządzanie kluczami
Szyfrowanie wrażliwych danych przechowywanych i przetwarzanych w chmurze to abecadło bezpieczeństwa IT. Uświadamiają to wciąż swoim klientom również dostawcy usług. Z pola widzenia znika jednak wciąż kluczowe pytanie: kto kontroluje klucze służące do szyfrowania danych? Bo kto trzyma w ręku klucze, ten ma dostęp do wszystkich danych chronionych za jego pomocą.
Przyjrzyjmy się aplikacjom powszechnie używanym przez firmy, jak Dropbox czy Microsoft Onedrive. Właśnie tu trzeba udowodnić, jakie rozwiązania kryptograficzne zapewniają dostawcy usług w chmurze i jak ochrona danych wygląda w praktyce. W przypadku szyfrowania zintegrowanego to oprogramowanie generuje i gromadzi klucze. Banki danych w chmurze, jak Microsoft Azure SQL, wykorzystują do tego celu magazyn kluczy (Key Vault). Inne aplikacje stawiają na Key Splitting, czyli klucz dwuelementowy – dla użytkownika i dostawcy. Jednak w obydwu wariantach użytkownik ma niewielkie szanse zagwarantowania, że klucze nie dostaną się w niepowołane ręce i zarządzanie nimi spełnia wszystkie wymogi bezpieczeństwa. Z punktu widzenia zgodności z regulacjami prawnymi jest to więc dość niepewna droga.
Klucz w garści
Znacznie większą kontrolę nad kluczami zyskują użytkownicy, którzy w swoim centrum obliczeniowym mają moduł HSM. Jako dedykowane urządzenie w obrębie infrastruktury HSM przejmuje realizację wszystkich operacji kryptograficznych: generuje i gromadzi klucze oraz zarządza nimi za pomocą odpowiednich algorytmów. HSM jest niczym skarbiec, zapewnia danym szczególną ochronę między innymi dzięki następującym funkcjom:
- zapieczętowana jednostka obliczeniowa pozwalająca na rozpoznanie prób manipulacji i ochronę przed odczytaniem danych i sygnałów,
- funkcja automatycznego usuwania danych, aktywująca się w momencie ewentualnego ataku,
- specjalny, wzmocniony system operacyjny,
- procedury zezwalające na dostęp wyłącznie autoryzowanym administratorom.
W ten sposób dostęp podmiotów niepowołanych do materiału kluczy zostaje wykluczony. Funkcje HSM dostępne są przez zdefiniowany interfejs (API).
Cała procedura zarządzania kluczami zostaje przeniesiona do modułu HSM. Korzyścią jest nie tylko ich bezpieczeństwo, ale także odciążenie serwera aplikacji.
Usługi realizowane w chmurze, również kryptografia, wymagają specjalnych rozwiązań modułów bezpieczeństwa. Muszą one oferować takie opcje, które pozwolą na udostępnienie kluczy i algorytmów szyfrujących stosownie do potrzeb różnorodnych aplikacji. Zintegrowana funkcja równoważenia obciążenia odpowiada za to, by system był w stanie zaszyfrować nawet duże zbiory danych. Decydując się na wybór HSM przeznaczonego do działania w chmurze obliczeniowej, trzeba uwzględnić następujące elementy:
- Wielomandatowość: w infrastrukturze chmury publicznej z jednego modułu HSM korzystają jednocześnie różni klienci tego samego dostwcy usługi. Uwierzytelnianie użytkowników i zarządzanie kluczami to jednak oddzielne procesy dla każdego klienta.
- Bezpieczne otoczenie dla operacji kryptograficznych: rozwiązanie to musi gwarantować autentyczność, integralność oraz poufność danych i przekazywanych między modułem bezpieczeństwa w chmurze i aplikacjami użytkownika.
- Kompleksowy system zarządzania kluczami: wymagane jest zapewnienie całkowitej integralności materiału kryptograficznego kluczy. HSM musi być wyposażony w wydajny generator liczb losowych, a wszystkie klucze muszą być przechowywane wewnątrz modułu, co wyklucza ryzyko ich skopiowania lub przejęcia.
- Zdalne administrowanie: dostęp zdalny następuje wyłącznie poprzez bezpieczne połączenie, zgodnie z elastycznym modelem, zakładającym stopniowanie uprawnień w zależności od funkcji pełnionej przez użytkownika.
- Wsparcie trybów pracy bloków szyfrowych: HSM powinno wspierać takie tryby, jak AES GCM, GMAC, CCM i OFB biblioteki PKCS#11R2.
Usługi realizowane w chmurze obliczeniowej w połączeniu z szyfrowaniem bazującym na rozwiązaniach sprzętowych to doskonały pakiet, pozwalający dostawcom usług mogą poszerzyć swoją ofertę o operacje szyfrowania i deszyfowania czy bezpieczne przechowywanie kluczy kryptograficznych. W tym przypadku moduł HSM stanowi element centrum obliczeniowego dostawcy. Klienci uzyskują dostęp zdalny i zarządzają kluczami, których używają do zabezpieczenia istotnych danych. Dostęp zdalny można obudować jeszcze jednym zabezpieczeniem: za pomocą inteligentnej karty. Hakerzy nie mają wówczas żadnych szans, by uzyskać dostęp do takiego połączenia i przechwycić poufne dane.
Integracja HSM: nic prostszego
Wyborowi HSM towarzyszy często pytanie o nakład pracy związanej z jego implementacją. Z reguły administratorzy muszą określić i zintegrować pożądane funkcje w obrębie interfejsu oprogramowania aplikacji. I podczas gdy kiedy wymagania w dziedzinie bezpieczeństwa i wydajności są wysokie, zadanie to nie wymaga wielkiego know-how. Przykład? Przy integracji modułu HSM przez protokół interfejsu klienta, jak np. PKCS#11, mamy do dyspozycji niezliczone polecenia i atrybuty, z których większość użytkowników wykorzystuje zaledwie kilka. To zaś może skutkować powstaniem sporych luk w systemie zabezpieczeń.
Komfortową alternatywę stanowią funkcje oparte na skryptach, jak Cryptoscript. Są realizowane wyłącznie w obrębie HSM i dają użytkownikom możliwość rozszerzenia takich API, jak PKCS#11 o efektywne wywołania funkcji. W ten sposób integracja znacznie się upraszcza – przy wyraźnym wzroście bezpieczeństwa.
Podsumowując
Dla firm i instytucji, w których wymagania związane z bezpieczeństwem i zgodnością z regulacjami prawnymi są wysokie, HSM stanowi godną zaufania alternatywę dla rozwiązań opartych wyłącznie na oprogramowaniu. Najkorzystniejsze i najbardziej wydajne rozwiązanie to wykorzystywanie usług w chmurze oferowanych przez zewnętrznych dostawców i pozostawienie skarbca kluczy wewnątrz własnego przedsiębiorstwa. Mając w perspektywie wdrożenie rozporządzenia w GDPR w 2018 r., warto zawczasu przemyśleć tego rodzaju narzędzia w polityce bezpieczeństwa IT w swoim biznesie.