środa, 22 lutego 2012

Bezpieczeństwo w bazach danych Oracle


Obecne systemy informatyczne oferują oprócz przetwarzania danych, odpowiednią ich ochronę. Dane wykorzystywane w określonym procesie, dane rezydujące w pamięci, cały czas powinny podlegać pewnym ściśle określonym regułom. Cały proces oraz transakcje muszą być bezpieczne.

Takie bezpieczne przetwarzanie ma dać nam świadomość, iż z jednej strony realizujemy określone działania, a z drugiej strony ufamy, że sposób realizacji tych działań jest w pełni poprawny. Jednym z przykładów takiego repozytorium jest baza Oracle. Baza, sama w sobie posiada wiele mechanizmów bezpieczeństwa, pozwalających podnieść poziom jej zabezpieczeń. W przypadku jednak, gdy planujemy wdrażać bardziej złożoną politykę bezpieczeństwa, czyli np. szczególnie chronić informacje dla firmy najistotniejsze, niezbędne są tzw. opcje bezpieczeństwa bazy, dostępne jako osobne moduły. Najważniejsze z nich opisujemy poniżej.

Opcja realizująca klasyfikację informacji w bazie

Informacje posiadają różną wartość, co oznacza, iż różne informacje należy chronić odpowiednio do ich wartości. Pewne informacje są dla nas ważniejsze niż inne. Klasyfikacja przyjęta np. w sektorze publicznym dzieli informacje na kategorie: Publiczna, Poufna, Ściśle Tajna. Klasyfikacja informacji w obszarze ‘Publiczne’ oznacza, iż dokument jest informacją otwartą, której utrata nie niesie ze sobą ryzyka, a co za tym idzie, nie będzie wiązała się z faktyczną stratą dla przedsiębiorstwa. Informacja ‘Poufna’ oraz ‘Ściśle Tajna’ jest przeznaczona tylko dla uprawnionych odbiorców, a jej utrata wiąże się z poważnymi stratami dla instytucji, czy przedsiębiorstwa.

Opcje realizujące kontrolę dostępu do bazy

Standardowo, w bazie danych jesteśmy w stanie przydzielić pewnym grupom użytkowników, określone uprawnienia dostępu do danych, wynikające z ich roli w firmie. Kontrola dostępu odbywa się z wykorzystaniem stworzonej klasyfikacji danych, oraz polityki dostępowej do bazy. Problem pojawia się wtedy, gdy chcemy mieć pewność, że najbardziej uprawniony użytkownik np. administrator, nie będzie miał dostępu do informacji zawartych w bazie. Innym istotnym aspektem, jest monitorowanie wykorzystania bazy w obszarze bezpieczeństwa, czyli kontrola, czy stosowane mechanizmy działają zgodnie z założeniami, wykluczając utratę poufności informacji.

Opcje realizujące audyt bazy

Wykonana klasyfikacja danych oraz realizacja kontroli dostępu, powinna być w pełni audytowana - tak, aby mieć absolutną pewność, iż prowadzone przez nas działania są skuteczne i zgodne z przyjętymi założeniami. Aby zrealizować opisane powyżej aspekty polityki bezpieczeństwa, niezbędna jest baza danych Oracle Enterprise Edition, wraz z następującymi opcjami bezpieczeństwa:
1. w obszarze klasyfikacji informacji:
Oracle Label Security
2. w obszarze ochrony poufności oraz integralności informacji (kontroli dostępu do informacji):
Oracle Database Vault
Oracle Database Firewall
3. w obszarze ochrony poufności oraz integralności informacji (szyfrowanie informacji):
Oracle Advanced Security
4. w obszarze audytu oraz kontroli informacji:
Oracle Audit Vault
5. w obszarze ochrony poufności informacji (anonimizacja informacji):
Oracle Data Masking
6. w obszarze kontroli parametrów bezpieczeństwa bazy:
Oracle Database Lifecycle Management Pack

Oracle Database Vault – separacja uprawnień

Opcja ta pozwoli uporządkować kontrolę uprawnień oraz skupić się na obszarach informacyjnych w bazie, które wymagają najwyższej uwagi, a co za tym idzie większej ochrony. Przykładem takich obszarów podlegających szczególnej ochronie mogą być: dane osobowe, dane o klientach, dane finansowe. Osiągamy także minimalizację wszelkich ryzyk związanych z faktem, iż domyślnie wszystkie konta administratorów mają pełny dostęp do wszystkich danych w bazie (do wszystkich schematów). Brak jakiegokolwiek podziału uprawnień (Segregation of Duties) powoduje, że nie mamy wiedzy, którędy oraz kiedy nasze informacje z bazy mogą się wydostać. Opcja Database Vault minimalizuje ryzyko związane z tego typu zagrożeniami poprzez ograniczenie uprawnień użytkowników najbardziej uprawnionych oraz pozwala na wydzielenie obszarów (np. schematu bazy), który chcemy chronić. Nad takim wydzielonym obszarem posiadamy pełną kontrolę, a co więcej jesteśmy w stanie kontrolować każdą operację realizowaną na bazie.

Zastosowanie rozwiązania da pewność, że kluczowe dla nas informacje zawarte w bazie są odpowiednio chronione, adekwatnie do ich wartości. Będzie to jasny sygnał iż zarządzający (w tym dyrekcja) dba o informacje, których jest właścicielem. Dodatkową wartością jest obniżenie ryzyk w obszarze utraty informacji na skutek jej celowej lub przypadkowej modyfikacji wobec nieprawidłowych (zbyt dużych) uprawnień użytkowników w bazie.

Oracle Advanced Security – ochrona poufności i integralności informacji

Oracle Advanced Security jest mechanizmem kontrolnym wspomagającym bezpieczeństwo bazy danych Oracle Enterprise Edition w trzech obszarach:
· szyfrowania informacji,
· silnego uwierzytelniania,
· integralności informacji
Mechanizm szyfrowania może być stosowany w dwóch obszarach: wewnętrznym, przeźroczystym dla aplikacji korzystających z bazy oraz zewnętrznym (sieciowym), realizującym bezpieczne (szyfrowane) połączenie między bazą, a klientem (aplikacją). Warto pamiętać iż domyślnie każda informacja wysyłana od klienta (np. aplikacja) do bazy oraz w odwrotnym kierunku, jest transmitowana w postaci tekstu, a co za tym idzie może zostać w bardzo łatwy sposób przechwycona (np. przez wykorzystanie mechanizmów nasłuchiwania w sieci). Powstaje zatem pytanie, czy fakt, że każde zapytanie do bazy oraz odpowiedź bazy, wysyłane jest jawnym tekstem, który można w prosty sposób przechwycić, stanowi zagrożenie dla firmy? Co stanie się w przypadku kiedy takie zagrożenie się zmaterializuje, tzn. pojawi się osoba, która wykorzysta domyślne, nieszyfrowane, ustawienie? Czy ryzyko to będzie dla zarządu akceptowalne? Aby rozwiązać opisany problem, w obszarze realizacji szyfrowania sieciowego możliwa jest konfiguracja z wykorzystaniem protokołu SSL, realizująca nie tylko bezpieczną komunikację, ale także bezpieczne uwierzytelnienie z wykorzystaniem certyfikatów.

Zastosowanie tego rozwiązania minimalizuje ryzyko ujawnienia informacji w wyniku jej utraty, np. na skutek przypadkowego zgubienia backupu, lub w zagrożenia polegającego na podsłuchiwaniu sieci.

Oracle Data Masking - anonimizacja danych

Ten mechanizm kontrolny przeznaczony jest do minimalizacji ryzyk w sytuacji, w której przekazujemy dane produkcyjne do testów (np. testy nowej aplikacji), ale nie chcemy udostępniać danych, których ochroną jesteśmy zobligowani przez ustawy lub umowy. W takim przypadku stosuje się mechanizmy maskowania danych, które nie zmieniając struktury samych danych, udostępniają dane zanonimizowane. Mechanizm ten został wbudowany w bazę danych i jest dostępny z poziomu narzędzia graficznego Oracle Enterprise Manager.

Zastosowanie tego rozwiązania pozwoli swobodnie posługiwać się danymi produkcyjnymi dla środowisk testowych. Wszystkim partnerom i innym współpracownikami Warto zwrócić uwagę, że pomimo iż jest to opcja dostępna tylko dla bazy danych Oracle, może być używa do maskowania informacji przekazanych z Oracle do innych baz danych (MS SQL, DB2).

Oracle Database Lifecycle Management Pack - monitoring i wykrywanie zmian konfiguracyjnych

Jest to zbiór najlepszych praktyk bezpieczeństwa (np. grupy polityk bezpieczeństwa lub mechanizm informujący o nowych uaktualnieniach) dostępnych z poziomu graficznego Enterprise Managera. Szczególnie interesujący jest fakt, iż ta opcja pozwala na realizację obszarów związanych z analizą, detekcją zmiany i wieloma innymi aspektami bezpieczeństwa bazy. Komponent ten jest bardzo istotny z punktu widzenia monitorowania standardów bezpieczeństwa (wspiera ogólnie znany międzynarodowy standard CobiT - standard zarządzania mechanizmami kontrolnymi).

Zastosowanie tej opcji pozwala na praktyczną realizację procesu vulnerability management (analiza słabości), czyli bardzo ważnego obszaru w Analizie Ryzyka.

Podsumowanie

Wdrażanie polityki bezpieczeństwa wiąże się z realizacją różnych celów w różnym czasie. Celem strategicznym, długoterminowym, będzie osiągnięcie zgodności ze standardem ISO 27001. Celem taktycznym, średnioterminowym, będzie uporządkowanie polityki dostępu do wszystkich zasobów informatycznych w firmie. Aby osiągnąć cele strategiczne, nie wolno też zapominać o codzienności, czyli celach operacyjnych, polegających np. na implementacji poprawnej kontroli dostępu w bazie oraz pełnym monitoringu bazy. Wszystko to implementowane według planu ma szansę na duży sukces, rozumiany jako pełne uporządkowanie firmy w kontekście bezpieczeństwa, a z drugiej strony zapewniający płynną realizację celów biznesowych.

Brak komentarzy:

Prześlij komentarz