Najskuteczniejsze sposoby zabezpieczania baz danych, w jaki sposób je monitorować oraz jak audytować Bartosz Kryński Dział Usług Profesjonalnych, Clico Sp. z o.o. bartosz.krynski@clico.pl InfoTRAMS 1 Fusion Tematyczny, Bazy Danych, Kariera I Prywatny Sprzęt t W Pracy
Plan wystąpienia ZagroŜenia dla środowisk bazodanowych i związanych z nimi aplikacji web Aplikacyjny firewall web jako pierwszy krok do ochrony DB Zarządzanie uprawnieniami uŝytkowników i testy podatności środowiska bazodanowego Monitoring dostępu do kluczowych informacji Jak je zdefiniować? Co i jak zapisywać? MoŜliwości ochrony baz danych przy uŝyciu systemu database firewall Testy podatności systemów 2
Wprowadzenie Naruszania bezpieczeństwa w systemach informatycznych (m.in. nieupowaŝniony odczyt z bazy danych, modyfikacja i uszkodzenie danych; zablokowanie usług) odbywają się z wykorzystaniem podatności (m.in. błędów implementacji w systemach operacyjnych i aplikacjach, błędów w konfiguracji zabezpieczeń, niskim poziomie świadomości ludzi). W praktyce nie ma moŝliwości usunięcia wszystkich podatności systemów komputerowych, głównie z uwagi na ich dynamiczny rozwój (m.in. nowe słabo przetestowane wersje oprogramowania). 3
Wprowadzenie Klasyfikacja zagroŝeń: 1. Ataki sieciowe (np. włamania i penetracje, ataki DoS) 2. ZagroŜenia transmisji danych (np. podsłuch sieciowy, przechwytywanie sesji) 3. ZagroŜenia aplikacyjne (np. wirusy, robaki, konie trojańskie) 4. ZagroŜenia kryptograficzne (np. nieaktualne, bądź zagubione klucze szyfrowania) 5. Przeciek informacji (np. informacje o klauzuli tajności Tajne są dostępne dla systemu komputerowego o klauzuli Jawne) 6. ZagroŜenia komunikacyjne (np. przeciąŝenia sieci, niewłaściwy ruting sieci) 7. Awarie techniczne (np. awaria sprzętu, błąd oprogramowania) 8. Błędy ludzi (np. błędy uŝytkowników, administratorów) 9. ZagroŜenie fizyczne (np. kradzieŝ, poŝar, zalanie) 10. Ulot elektromagnetyczny 4
Techniki rekonesansu Często spotykane podatności: DNS Zone Transfer (niepoprawna konfiguracja DNS, firewall zezwala TCP-53) Anonimowe FTP z plikami konfiguracyjnymi Niezabezpieczony hasłem Listener w bazie Oracle Niezabezpieczone hasłem aplikacje Web do zarządzania Informacje o sieci i zabezpieczeniach na stronach Web Nieświadomi pracownicy Agent SNMP Stosowanie domyślnych haseł i kont 5
Przykład symulacji włamań serwera bazy danych Oracle 1. Audytor z wykorzystaniem niezabezpieczonego hasłem procesu Listener uzyskał informacje o systemie i bazie danych Oracle (wersja, katalogi) # tnscmd10g.pl version -h <IP serwera> --indent # tnscmd10g.pl status -h <IP serwera> --indent 2. Audytor wykorzystując standardowe konto w Oracle 'dbsnmp' z hasłem 'dbsnmp' uzyskał dostęp do bazy danych i odczytał hashe haseł uŝytkowników (m.in. sys i system) w celu uzyskania hasła administratora bazy # sqlplus dbsnmp/dbsnmp@<ip serwera>/spac (...) SQL> select username, password from dba_users; USERNAME PASSWORD ------------------------------ ------------------------------ SYS... SYSTEM... (...) 3. Audytor dokonał sprawdzenia haseł w bazie Oracle (narzędzia 'checkpwd') 4. Audytor uzyskał hasło dostępu i zalogował się na konto administratora serwera bazy danych i odczytał plik z hashami haseł uŝytkowników # ssh <IP serwera> # cd /etc/security # cat passwd 5. Audytor zatrzymał proces bazy danych Oracle Listener # tnscmd10g.pl stop -h <IP serwera> 6
ZagroŜenia dla aplikacji web Raport według OWASP TOP 10: A1: Injection A2: Cross-Site Scripting (XSS) A3: Broken Authentication and Session Management A4: Insecure Direct Object References A5: Cross-Site Request Forgery (CSRF) A6: Security Misconfiguration A7: Insecure Cryptographic Storage A8: Failure to Restrict URL Access A9: Insufficient Transport Layer Protection A10: Unvalidated Redirects and Forwards 7
Wyzwania dla znanych systemów zabezpieczeń Ataki HTTP są poprawnymi zapytaniami do aplikacji, nie do wykrycia przez zapory sieciowe Protokół HTTP jest bezstanowy, aplikacje są stanowe, SSL utrudnia analizę zdarzeń ZróŜnicowanie aplikacji nie ma przygotowanych sygnatur stricte dla TWOJEJ aplikacji System zabezpieczeń MUSI analizować nie tylko zapytania, ale równieŝ odpowiedzi Niewiedza nie jest błogosławieństwem brak narzędzi w korporacjach analizy/rejestrowania/raportowania ataków dotyczących HTTP 8
Jak przeciwdziałać atakom / naduŝyciom? Chronić przed atakiem Wprowadzać poprawki Kontrola reputacji Monitoring wykorzystania Zarządzanie uprawnieniami Kontrola dostępu 9
10 OCHRONA PRZED ATAKAMI Z ZEWNĄTRZ
1. Ochrona warstwy prezentacji Czym jest WAF? Web Application Firewall (WAF) zabezpieczenia dedykowane do ochrony aplikacji Web System zabezpieczeń WAF bazuje w głównej mierze na automatycznie tworzonym i aktualizowanym profilu aplikacji Web. Tworzenie profilu ma na celu niezaleŝne odwzorowanie oczekiwanych, poprawnych zachowań uŝytkowników przy dostępie do aplikacji/serwisu web 11
1. Ochrona warstwy prezentacji Imperva Web Application Firewall zasada działania Metody Katalogi Typy oraz akceptowalna długość ciągu znaków Parametry, pola formularzy URLe 12 Program podnoszenia poziomu świadomości w zakresie bezpieczeństwa teleinformatycznego wśród pracowników Grupy TP
1. Ochrona warstwy prezentacji Przykład ochrony przed atakami aplikacyjnymi - Intruz wysyła do serwera odpowiednio spreparowane zapytanie - Firewall oraz IPS nie wykrywają anomalii, gdyŝ komunikacja odbywa się na dozwolonym porcie oraz nie ma aktywnej sygnatury blokującej ruch / zapytanie zostało wielokrotnie zakodowane - Imperva WAF wykrywa anomalię na podstawie nie tylko sygnatur, ale równieŝ: typu znaków wpisanych w pole formularza, długości wpisanej frazy oraz nieodpowiedniego kodowania URLa. %20UNION%20SELECT%201%2C1%2Cusername%... Intruz INTERNET Data Center Web Servers Firewall IPS WAF User 13
14 IDENTYFIKACJA PRZYDZIELONYCH UPRAWNIEŃ W BAZIE DANYCH
2. Zarządzanie uprawnieniami uŝytkowników Inspekcja uprawnień uŝytkowników jest jednym z podstawowych wymagań regulacji, jak PCI DSS czy SOX Nadmierne, niewykorzystywane uprawnienia powinny być wyłączane ze względu na zwiększenie prawdopodobieństwa wystąpienia naruszeń / naduŝyć 15
2. Zarządzanie uprawnieniami uŝytkowników Jak zatem analizować uprawnienia? Jeden widok: Kto, Co, Kiedy UŜytkownik Prawa dostępu Waga Dostęp Klasyfikacja, URM (DB) DAM 16
17 MONITORING DOSTĘPU DO ISTOTNYCH INFORMACJI
3. Monitoring dostępu do istotnych informacji Definicja i podstawowe wymagania na system DAM While a number of tools can monitor various level of database activity, Database Activity Monitors are distinguished by five features: The ability to independently monitor and audit all database activity, including administrator activity and SELECT transactions... The ability to store this activity securely outside the database. The ability to aggregate and correlate activity from multiple heterogeneous Database Management Systems (e.g., Oracle, Microsoft, IBM) and normalize transactions from different DBMSs despite differences between SQL flavors. 4. The ability to enforce separation of duties on database administrators. The ability to generate alerts on policy violations. Tools don't just record activity, they provide real-time monitoring and rule-based alerting... Źródło: http://securosis.com/reports/dam-whitepaper-final.pdf 18
3. Monitoring dostępu do istotnych informacji Sposób identyfikacji kluczowych informacji Definiowanie reguł rejestrowania transakcji Typ operacji Grupa tabel podlegających analizie Dostępne kryteria Identyfikacja danych na bazie predefiniowanych wzorców, jak email, CCNumber, hasła, lub zdefiniowanych przez uŝytkownika wyraŝeń regularnych. 19
3. Monitoring dostępu do istotnych informacji Zarejestrowane szczegóły zdarzeń Kompletny ślad zarejestrowanych zdarzeń Gdzie? Kto? Jak? Do czego? SecureSphere DAM posiada funkcję identyfikacji unikalnych uŝytkowników łączących się przez aplikacje Web do baz danych. System DAM posiada dodatkowo moŝliwość pobrania dodatkowych danych, np. na temat uŝytkowników z zewnętrznych źródeł, jak system biletowy, LDAP, bazy danych czy inne systemy, np. HR 20
21 KONTROLA I OGRANICZANIE DOSTĘPU DO BAZ DANYCH DLA GRUP UśYTKOWNIKÓW
4. Database Firewall Ochrona baz danych vs. rejestracja zdarzeń DAM Ile procent ruchu ma podlegać analizie w celu ochrony DB przed atakami? Ile procent tego samego ruchu ma być zapisywanych w DAM? 30%? 50%? 80%?... Ochrona i audyt MUSZĄ być róŝnymi procesami, analizowanymi osobno Ruch DB Wybiórczy audyt Sygnatury T Anomalia profilu T T Podejrzane zachowanie N N N 22 Program podnoszenia poziomu świadomości w zakresie bezpieczeństwa teleinformatycznego wśród pracowników Grupy TP
4. Database Firewall Identyfikacja nietypowych zachowań uŝytkowników Profil wykorzystania danych budowany na bazie analizy ruchu sieciowego Automatyczna aktualizacja profilu w przypadku zmian uprawnień Niezgodność ruchu ze zbudowanym profilem moŝe generować alarm lub zablokowanie ruchu Obiekt Istotność Obserwowane typowe zachowanie 23 Program podnoszenia poziomu świadomości w zakresie bezpieczeństwa teleinformatycznego wśród pracowników Grupy TP
4. Database Firewall Egzekwowanie zdefiniowanych reguł dostępu Predefiniowane i/lub własne reguły Alarm przy próbie wykonania operacji uprzywilejowanej Kto wykonał polecenie? Zidentyfikowane zapytanie 24
25 TESTY PODATNOŚCI SYSTEMÓW
5. Testy podatności systemów Wymagania przedsiębiorstw i regulacji Automatyczne wykrycie podatności produkcyjnych / testowych elementów związanych z bazami danych Definiowanie priorytetów dla systemów Analiza i eliminacja podatności Analiza ryzyka 26
5. Testy podatności systemów Konfiguracja i wybór testów Vulnerability Assessments Ponad 1500 testów dla róŝnych platform oraz DB Testy aktualizowane przez zespół Imperva ADC Predefiniowane oraz konfigurowalne grupy testów Dodaj własne testy/skrypty Wbudowane testy podatności 27
5. Testy podatności systemów Zarządzanie wykrytymi podatnościami Śledzenie, zarządzanie oraz eliminacja podatności w systemie zabezpieczeń Usuwanie podatności poprzez Virtual Patch dzięki integracji z DBF Data Risk Navigator Virtual Patching 28
29 6. Architektura systemu SecureSphere
7. Podsumowanie Ochrona przy wykorzystaniu specjalizowanej warstwy zabezpieczeń SecureSphere: Zabezpiecza dostęp kaŝdą moŝliwą metodą (bezpośrednio do bazy, poprzez grube aplikacje, architekturę trójwarstwową, serwisy web) Posiada dodatkowe funkcje, jak serwis reputacyjny oraz szczegółowe informacje o źródle ataku System oprócz aktywnej ochrony moŝe niezaleŝnie rejestrować dostęp do kluczowych informacji, zarówno w bazach danych jak i danych niestrukturalnych w plikach Administrator posiada na jednej centralnej konsoli informacje z wielu warstw zabezpieczeń (WAF/DBF/FF), dzięki czemu moŝliwe jest generowanie spójnych raportów i eliminacja fałszywych alarmów 30
31 DZIĘKUJĘ ZA UWAGĘ