Bezpieczeństwo baz danych

W świecie, w którym aplikacje biznesowe w zasadzie nie funkcjonują bez platformy bazodanowej, zabezpieczenie tej ostatniej staje się coraz istotniejsze. Zwłaszcza że w bazach przechowywane są dane nie tylko kluczowe z punktu widzenia organizacji, ale także chronione prawem. Spróbujmy zatem dokonać przeglądu niektórych zagrożeń dla baz danych oraz mechanizmów mogących pomóc w ich ochronie.

Na czyha wiele zagrożeń. Większość z nich wcale nie wiąże się z wykorzystaniem wyszukanych technik. Częściej naruszenie bezpieczeństwa jest efektem takich błędów, jak wadliwa konfiguracja bazy czy pozostawienie nośników zawierających kopie zapasowe bez odpowiedniego nadzoru. Dopiero potem pojawiają się bardziej złożone technicznie ataki.

Zagrożenia i ataki

Typowym zagrożeniem może być wykorzystanie podatności bądź to systemu operacyjnego, pod którego kontrolą pracuje serwer bazodanowy, bądź aplikacji bezpośrednio komunikującej się z bazą, czy wreszcie samego oprogramowania bazodanowego. Do tego dochodzą problemy z kontami umożliwiającymi dostęp do bazy. Tutaj możliwości jest bardzo dużo. Stale podkreśla się, że zagrożeniem dla danych są pracownicy.

Kto zagraża bazom?

· Zwykli użytkownicy

Nie mają bezpośredniego dostępu do bazy, ale w codziennej pracy korzystają z aplikacji, których backendem jest baza.

· Użytkownicy uprzywilejowani

Ci, którzy mogą, a czasami muszą mieć bezpośredni dostęp do bazy, np. administratorzy, programiści, kontraktorzy.

· Pracownicy IT

Zatrudnieni w działach zajmujących się siecią i bezpieczeństwem, audytorzy. Nie muszą mieć bezpośredniego dostępu do bazy. Mogą podsłuchiwać ruch, korzystać z informacji dostarczanych przez inne systemy.

· Goście

Osoby, które mogą podłączyć się do sieci firmowej i, znając "namiary" na serwer bazodanowy, przeprowadzić celowany atak na określoną podatność.

Zestawienie z podziałem na grupy osób mogące zagrażać informacjom w bazach danych pokazuje, że nie tylko administrator bazy danych może być jedynym winowajcą. Kontynuując wątek kont, warto wspomnieć o innej pomijanej czasami kwestii - kontroli kont. Z reguły konta użytkowników bazodanowych dzieli się na konta zwykłe i uprzywilejowane. Tylko te drugie mają niestandardowe uprawnienia - przynajmniej w teorii. W rzeczywistości mamy wiele poziomów zwykłości i uprzywilejowania. Częstą praktyką ogólną, która rozciągana jest także na systemy bazodanowe, jest kontrola kont uprzywilejowanych, co jest słusznym podejściem, ale niestety dziurawym. Zdarza się bowiem, że przez nieuwagę konto zwykłe otrzyma w prezencie uprawnienia, których być może mieć nie powinno. Stanie się w pewnym sensie kontem uprzywilejowanym, ale nie zostanie objęte kontrolą. Może nawet częściej od tego występuje podejście stosowane przez leniwych administratorów. Jeżeli użytkownik nie może czegoś zrobić, to być może jest to problem uprawnień, więc na wszelki wypadek daje się pełnię praw testowo. Problem polega na tym, że testy te niekiedy nigdy się nie kończą…

Dostrzec atak

Jak już wspominaliśmy, stale podkreślanym problemem związanym z atakami na bazy danych jest niedocenianie źródeł ataków znajdujących się wewnątrz firmy - pracowników i kontraktorów. Nie muszą korzystać z wyszukanych narzędzi, których instalacja może być blokowana przez oprogramowanie typu endpoint protection - wystarczy Excel, który ma prostego klienta do komunikacji z bazą. Można podejmować próby logowania na konta domyślne (takie jak CTXSYS - hasło "ctxsys" czy MGWUSER hasło "mgwuser" w Oracle - wersja 10g wyeliminowała większość haseł domyślnych; konto SA w Express w trybie mieszanym jest domyślnie puste; w Sybase "SA" może być puste lub mieć hasło "sasasa" itp.).


TOP 200