Gerard Frankowski, Zespół Bezpieczeństwa PCSS



Podobne dokumenty
Gerard Frankowski, Zespół Bezpieczeństwa PCSS. Nowoczesne technologie bliżej nas Poznań,

Zabezpieczanie platformy Windows Server 2003

Zespół Bezpieczeństwa PCSS. 36. Spotkanie Poznańskiej Grupy.NET

Poznańskie Centrum Superkomputerowo - Sieciowe

Administracja i programowanie pod Microsoft SQL Server 2000

Instrukcja instalacji Control Expert 3.0

Migracja bazy danych Microsoft Access *.mdb do Microsoft SQL 2008 Server R2 SP1 dla oprogramowania Płatnik

Płace Optivum. 1. Zainstalować serwer SQL (Microsoft SQL Server 2008 R2) oraz program Płace Optivum.

R o g e r A c c e s s C o n t r o l S y s t e m 5

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Jarosław Kuchta Administrowanie Systemami Komputerowymi. Internetowe Usługi Informacyjne

platforma zapewniająca usługi wirtualizacji

Instalacja Microsoft SQL Server 2014 Express

Kadry Optivum, Płace Optivum. Jak przenieść dane na nowy komputer?

Szczegółowy opis przedmiotu umowy. 1. Środowisko SharePoint UWMD (wewnętrzne) składa się z następujących grup serwerów:

Tomasz Nowocień, Zespół. Bezpieczeństwa PCSS

Instrukcja instalacji aplikacji i konfiguracji wersji sieciowej. KomKOD

MS Windows Vista. Spis treści. Autor: Jacek Parzonka, InsERT

Ko n f i gura cja p ra cy V ISO z bazą SQL S e rve r

Asix. Konfiguracja serwera MS SQL dla potrzeb systemu Asix. Pomoc techniczna NIEZAWODNE ROZWIĄZANIA SYSTEMÓW AUTOMATYKI

T-SQL dla każdego / Alison Balter. Gliwice, cop Spis treści. O autorce 11. Dedykacja 12. Podziękowania 12. Wstęp 15

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

Opisane poniżej czynności może wykonać administrator komputera lub administrator serwera SQL (tj. użytkownik sa).

System. Instalacja bazy danych MySQL. Autor : Piotr Zielonka tel Piotrków Tryb., sierpień 2018r.

Program kadrowo płacowy - wersja wielodostępna z bazą danych Oracle SQL Server 8 lub 9

Zastępstwa Optivum. Jak przenieść dane na nowy komputer?

Usługi ze wsparciem Centrum Innowacji Microsoft. Jerzy Mikołajczak, Marek Zawadzki

Aktualizacja do Microsoft SQL Server Adam Rynarzewski MCT

Wstęp... ix. 1 Omówienie systemu Microsoft Windows Small Business Server

Zarządzanie Infrastrukturą IT. Jak ręcznie utworzyć instancję EAUDYTORINSTANCE na SQL Serwerze

Pomoc dla usługi GMSTHostService. GMSTHostService. Pomoc do programu 1/14

Procedury techniczne modułu Forte Kontroling. Pakiety DTS

1. Zakres modernizacji Active Directory

Uwierzytelnianie użytkowników sieci bezprzewodowej z wykorzystaniem serwera Radius (Windows 2008)

OMNITRACKER Wersja testowa. Szybki przewodnik instalacji

Bezpieczne strony WWW dla edukacji, organizacji non-profit i uŝytkowników indywidualnych.

Bezpieczeństwo heterogenicznej. Zespół Bezpieczeństwa PCSS

Program szkolenia: Administracja SQL Server

Kim jesteśmy? PCSS i MIC. Paweł Berus, Zespół Bezpieczeństwa PCSS

Szkolenie autoryzowane. MS Administracja Windows Server Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje

Użytkownicy, uprawnienia, role w SQL Server (W oparciu o SQL Server 2008R2 Books Online)

Archiwizacja baz MSSQL /BKP_SQL/ opis oprogramowania

Currenda EPO Instrukcja Konfiguracji. Wersja dokumentu: 1.3

Problemy techniczne SQL Server

dziennik Instrukcja obsługi

Problemy techniczne SQL Server

Instalacja programu Ozon.

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

Pracownia internetowa w szkole ZASTOSOWANIA

INFORMATOR TECHNICZNY WONDERWARE. Ograniczenie wyświetlania listy zmiennych w przeglądarce zmiennych ActiveFactory

BACKUP BAZ DANYCH MS SQL

DESlock+ szybki start

Instrukcja instalacji programu SYSTEmSM

Serock warsztaty epuap 28 październik 2009 r. Sławomir Chyliński Andrzej Nowicki WOI-TBD Szczecin

asix Autoryzacja dostępu do zasobów WWW systemu asix (na przykładzie systemu operacyjnego Windows 2008)

Kancelaria Prawna.WEB - POMOC

Metodologia ochrony informacji w systemach klasy desktop oraz na urządzeniach przenośnych

Użycie pakietów instalacyjnych.msi w oprogramowaniu WYWIAD Plus

Wstęp. Opis ten dotyczy wydziałów orzeczniczych.

baza MS SQLEXPRES domyślnie po instalacji nie umożliwia obsługi połączenia z innego komputera

Win Admin Replikator Instrukcja Obsługi

Problemy techniczne SQL Server

Obsługa poczty elektronicznej w domenie emeritus.ue.poznan.pl

R o g e r A c c e s s C o n t r o l S y s t e m 5

11. Autoryzacja użytkowników

Zalecana instalacja i konfiguracja Microsoft SQL Server 2016 Express Edition dla oprogramowania Wonderware

ZAŁĄCZNIK Nr 3 do CZĘŚCI II SIWZ

Tomasz Greszata - Koszalin

Wykaz zmian w programie SysLoger

Zadanie1: Odszukaj w serwisie internetowym Wikipedii informacje na temat protokołu http.

Problemy techniczne SQL Server

SAP BASIS Architektura systemu klient Server

Pracownia internetowa w każdej szkole (edycja Jesień 2007)

Win Admin Replikator Instrukcja Obsługi

Migracja Business Intelligence do wersji

OMNITRACKER Wersja testowa. Szybki przewodnik instalacji

Audytowane obszary IT

ZAŁĄCZNIK Nr 1 do CZĘŚCI II SIWZ

Przebieg instalacji NKP

INSTRUKCJA OBSŁUGI DLA SIECI

RODO a programy Matsol

Sage Migrator 2019.e Migracja do Sage 50c wersja 2019.a i 2019.b

Prawa dostępu do serwera. Nadawanie i odbieranie uprawnień DCL. Użytkownicy a role

Wykonać Ćwiczenie: Active Directory, konfiguracja Podstawowa

Problemy techniczne SQL Server. Zarządzanie bazami danych na serwerze SQL


oprogramowania F-Secure

Z pojedynczym obiekcie zasady grupy znajdziemy dwa główne typy ustawień:

William R. Stanek. Vademecum Administratora 2012 R2. Windows Server. Podstawy i konfiguracja. Przekład: Leszek Biolik

Egzamin : zabezpieczanie systemu Windows Server 2016 / Timothy Warner, Craig Zacker. Warszawa, Spis treści

CREATE USER

Problemy techniczne SQL Server

Sieciowa instalacja Sekafi 3 SQL

Jak bezpieczne są Twoje dane w Internecie?

ActiveXperts SMS Messaging Server

Materiały dla studentów Sieci Komputerowe. Aby zainstalować usługę Active Directory dla nowej domeny, należy wykonać następujące kroki:

Instalacja i podstawowa konfiguracja aplikacji ImageManager

Projekt: MS i CISCO dla Śląska

Aktualny stan i plany rozwojowe

Transkrypt:

Bezpieczeństwo SQL Server 2008 Gerard Frankowski, Zespół Bezpieczeństwa PCSS Spotkanie społeczności PLSSUG i PG.NET 19.11.2009

Agenda Poznajmy się: czym jest PCSS imic? Wprowadzenie bezpieczeństwo wieloaspektowe Bezpieczeństwo SQL Server Znane błędy, wersje, aktualizacje (krótko) Najważniejsze cechy, inne narzędzia (krótko) Tryb uwierzytelniania Demonstracja wyciek haseł do pamięci Zasada minimalnych przywilejów Tropimy słabe hasła Podsumowanie, pytania, dyskusja 2

Kim jesteśmy i co robimy? 3

PCSS Poznańskie Centrum Superkomputerowo- Sieciowe (1993) Operator sieci PIONIER oraz POZMAN Uczestnik projektów naukowo-badawczych Główne obszary zainteresowań: Gridy, sieci nowej generacji, portale Bezpieczeństwo sieci i systemów http://www.pcss.pl

Zespół Bezpieczeństwa PCSS Zespół BezpieczeństwaPCSS istnieje od 1996r. Zabezpieczanie infrastruktury PCSS Bezpieczeństwo w projektachr&d Szkolenia, transfer wiedzy Badania własne Usługizewnętrzne Ciekawsze badania z ostatnichlat Sieci bezprzewodowe w Poznaniu Raportnt. bezpieczeństwa bankowości elektronicznej Bezpieczeństwo serwerów WWW (Apache, MS IIS) Bezpieczeństwo sklepów internetowych http://security.psnc.pl 5

Centrum Innowacji Microsoft Centrum bezpieczeństwa i usług outsourcingowych http://mic.psnc.pl Działa od 1.06.2006r. Partnerzy projektu Microsoft Polska PCSS Politechnika Poznańska

Wybrane zadania MIC w 2009 Nowe obszary badań (od I 2009) Interoperacyjność systemów i technologii Wirtualizacja systemów Wysokowydajne przetwarzanie komputerowe (HPC) m.in. udział w programie HPC TAP Program szkoleniowy Interoperacyjność systemów i technologii Szkolenia w zakresie bezpieczeństwa IT Windows 2008 Server R2 Doroczna Konferencja MIC 16 kwietnia 2009, 3. edycja 7

Bezpieczeństwow w MIC Ochrona infrastruktury MIC Audyty bezpieczeństwa, konsultacje Program szkoleń bezpieczeństwa Więcej informacji w programie szkoleń http://mic.psnc.pl/szkolenia Badania poziomu bezpieczeństwa technologii Microsoft (2007-08) Audyty bezpieczeństwa dla administracji i MŚP (2007) Konferencje, MS Speakers Biuro 8

Plany na przyszłość Rozwijanie prac nad wirtualizacją, interoperacyjnością technologii i HPC Szkolenia w 2010 r.: Windows Server 2008R2 Bezpieczeństwo ASP.NET MVC Bezpieczeństwo kontrolera domeny Exchange Labs Windows HPC Server Zachęcamy do zgłaszania własnych tematów! Współpraca z Microsoft Research 4. Konferencja MIC: 4.03.2010, Poznań 9

Bezpieczeństwo SQL Server 2008 10

Cel prezentacji Przegląd kwestii związanych z bezpieczeństwem oprogramowania MS SQL Server 2008 Niekoniecznie zestaw gotowych recept, raczej lista tematów do rozważenia Grupa docelowa: użytkownicy MS SQL Server Także specjaliści ds. bezpieczeństwa pragnący zainteresować się serwerem

Wprowadzenie Bezpieczeństwo serwera jest tematem wieloaspektowym Paul S. Randal w CommonSQL Server Security Issuesand Solutions wymienia: bezpieczeństwo fizyczne, sieci, ograniczenie powierzchni ataku, konta usługowe, ograniczenie wykorzystania uprawnień administracyjnych, uwierzytelnianie, autoryzację, podatności SQL Injection, odtwarzanie systemu oraz logowanie informacji An article that describes all thesecurity problems you shouldbe looking at wouldbe a whole magazine in itself Więcej: http://technet.microsoft.com/en- us/magazine/2009.05.sql.aspx

Które aspekty poruszymy? Przegląd najnowszych funkcji SQL Server 2008 związanych z bezpieczeństwem Krótki (wskazanie cech) Przegląd narzędzi konfiguracyjnych Tryb uwierzytelniania Wady i zalety SQL (Mixed) Authentication Błąd ujawniania haseł w pamięci: demonstracja Zasada minimalnych przywilejów Przykład możliwość enumeracji kont użytkowników Silne hasła Różne metody zapewnienia odpowiedniej siły haseł 13

Przegląd błędów ;)

Wersje oprogramowania MS SQL Server 2008 I wydanie sierpień 2008 (10.00.1600) MS SQL Server 2008 SP1 Wydany w kwietniu 2009 (10.00.2531) Zawiera przede wszystkim poprawki błędów, mało nowej funkcjonalności, anonsuje się też poprawę bezpieczeństwa Cumulative Update 4 wrzesień 2009 (10.00.2734) MS SQL Server 2008 R2 Hurtownie i centra danych CTP listopad 2009 (już dostępny do testów!) Wersja finalna wiosna 2010 15

Czy zawsze aktualizować nasz serwer? Wpływ na poziom bezpieczeństwa Czy najnowsza wersja zawiera poprawki bezpieczeństwa? Czy adresują one znane podatności (czy są exploity?) Wpływ na dostępność usługi Czy możemy przerwać działanie usługi? Czy mamy zapasowe środowisko testowe? Jak długo potrwają testy? Jakie jest prawdopodobieństwo wystąpienia błędów po aktualizacji? Zwykle należy instalować aktualne oprogramowanie, ale niekiedy pośpiech nie jest najlepszym doradcą 16

Nowefunkcje, innenarz narzędzia 17

SQL Server 2008 przegląd cech bezpieczeństwa Różnice między SQL Server 2005 a 2008 (przykłady) Brak niektórych narzędzi lub znaczące zmiany w korzystaniu z nich Inne, np. usunięcie polecenia DBCC BYTES Nowe lub ulepszone mechanizmy bezpieczeństwa Extensible Key Management Transparent Data Encryption SQL Server Audit Zarządzanie oparte na zasadach (policies) 18

Ulepszenia w zakresie szyfrowania Extensible KeyManagement Możliwość rejestracji zewnętrznych urządzeń bezpieczeństwa (HSM) w SQL serwerze Dostępne są dodatkowe, zaawansowane funkcje (np. wygasanie klucza) Dostęp z poziomu poleceń T-SQL Transparent Data Encryption Realizacja szyfrowania i deszyfrowania plików danych i logu w czasie rzeczywistym (AES, 3DES) Brak konieczności jakichkolwiek zmian na poziomie aplikacji korzystającej z danych Zabezpieczenie także kopii zapasowych! 19

Uwierzytelnianie i logowanie Większe możliwości uwierzytelniania Kerberos Rozszerzenie na wszystkie protokoły komunikacyjne Zaawansowane usługi raportowania (Reporting Services) SQL Server Audit Poprawiona wydajność logowania informacji Bardzo duża granularnośćkonfiguracji poziom serwera, bazy danych, rodzaju instrukcji (np. SELECT, INSERT) wydawanych przez poszczególnych użytkowników Zapis informacji do dziennika systemu(sql Servermusi mieć niezbędne uprawnienia), aplikacji lub do osobnego pliku Możliwość zatrzymania serwera w przypadku błędu 20

Policy-basedManagement Zasady stosowane na poziomie bazy, serwera lub grupy serwerów Możliwość definicji polityki i eksportu na wszystkie posiadane serwery Kolejność działania Tworzenie warunków odnoszących się do różnych aspektów (ang. facet) Tworzenie polityk grupujących różne warunki Ewaluacja i/lub stosowanie polityk w odniesieniu do serwera lub serwerów Narzędzie: SQL Server Management Studio Możliwość eksportu bieżącej konfiguracji jako polityki 21

Narzędzia SQL Server 2005 (1) SQL Server 2005 Surface AreaConfiguration 22

Narzędzia SQL Server 2005 (2) Microsoft BaselineSecurity Analyzer SQL Server 2005 Best Practices Analyzer 23

Jak to wygląda w SQL Server 2008? Nie ma już SCT oraz BPA Analogiczną funkcjonalność do SCT można uzyskać za pośrednictwem SQL Server Management Studio lub SQL Server Configuration Manager BPA -Microsoft uznał, że narzędzia, które jedynie wskazują problemy, ale ich nie naprawiają, nie są przydatne użytkownikom (?) Większość ustawień konfiguracyjnychmożna ustalić na zasadzie zarządzania politykami 24

Odpowiednik SCT w SQL Server 2008 25

Przykład konfiguracja xp_cmdshell Scenariusz: chcemy przygotować honeypota Otwarty na zewnątrz standardowy port, konto gościa ze słabym hasłem, uaktywnione xp_cmdshell Co nowi użytkownicy będą wpisywać jako parametr xp_cmdshell? Kolejne kroki: SMS: [Serwer] Management Policy Management Conditions (a następnie Policies) Tworzenie warunku (facet: Surface AreaConfiguration, warunek: @XPCmdShellEnabled = True) Utworzenie polityki zawierającej przygotowany warunek Ewentualna ewaluacja oraz zastosowanie polityki 26

27

Tryby uwierzytelniania i co może z tego wyniknąć 28

Tryby uwierzytelniainaw w SQL Server 2 tryby uwierzytelniania SQL (Mixed Mode) Windows (Trusted Mode) Mixed Mode Trusted Mode 29

UwierzytelnianieMixedModeMode Szersze możliwości Poprawia kompatybilność ze starszymi rozwiązaniami Umożliwia łączenie się użytkownikom o różnych tożsamościach Zwiększa interoperacyjność Więcej problemów z bezpieczeństwem Dodatkowa para użytkownik/hasło do zapamiętania Mniejsze możliwości wymuszenia polityki kontroli dostępu Konieczność każdorazowego uwierzytelniania się Serwer musi gdzieś sprawdzać/przechowywać hasła Obejrzymy dziś błąd charakterystyczny tylko dla Mixed Mode;)

Którą metodę wybrać? O ile to możliwe, należy korzystać z uwierzytelniania zintegrowanego z systemem W przeciwnym przypadku należy zwrócić szczególną uwagę na konfigurację bazy danych zgodnie z zasadą minimalnych przywilejów oraz tropić słabe hasła kont SQL-owych Wybór trybu uwierzytelniania Podczas instalacji Podczas użytkowania serwera Weryfikacja trybu SQL Server Management Studio EXEC xp_loginconfig login mode

Uwierzytelnianie w SQL SMS

SQL Server CleartextPassword PasswordExposure Data ogłoszenia: 2 września 2009 (Sentrigo) Podatne wersje SQL Server 2000, 2005, 2008 Dotyczy SQL (Mixed) Authentication Mode Hasła użytkowników łączących się z serwerem są przechowywane w pamięci w formie niezaszyfrowanej Odczyt wymaga uprawnień lokalnego administratora W związku z powyższym producent nie uznał odkrycia za lukę bezpieczeństwa oraz odmówił przygotowania poprawki 33

Odpowiedź producenta Za: http:// ://blogs.technet.com/srd/archive/2009/09/02/sql- server-information-disclosure-non-vulnerability.aspx 34

Demonstracja-scenariuszscenariusz Dołączenie się do procesu SQL Server przy pomocy debuggera Przeglądanie zaalokowanej pamięci Po wydaniu polecenia CREATE LOGIN Po podłączeniu się użytkownika do serwera (za pomocą różnych interfejsów) Użycie narzędzia Passwordizer 35

Demo 36

Możliwe zagrożenia Administrator systemu i tak ma praktycznie pełną władzę nad kontami użytkowników SQL Servera Nie chodzi więc o to, że np. zobaczy ich dane Złośliwy administrator może jednak: Odczytać hasła (nie skróty!) użytkowników i próbować wykorzystać je w innych serwisach Podszyć się niepostrzeżenie pod użytkownika i wykonać niepożądane działania w jego imieniu Hasła w otwartej postaci nigdy nie powinny być ujawniane w pamięci (pliku) Gdyby tak było, obronilibyśmy się na tym polu także przed złośliwym administratorem 37

Jesteśmy złośliwym administratorem Ślad definicji hasła użytkownika Wydano zapytanie: CREATE LOGIN supertajny WITH PASSWORD = 'Teg0NIKT_nie_zgadn1E:)' Jest to sam w sobie przypadek ujawniania wrażliwych danych w pamięci! 38

Większe zagrożenie Użytkownik supertajnyłączy się później z serwerem Może mieć już zmienione hasło, nieznane administratorowi 39

PasswordExposure ochrona ochrona (?) Unikanie SQL Authentication Mode Zastosowanie narzędzia Sentrigo Passwordizer Do bezpłatnego pobrania ze strony producenta Wymaga wypełnienia krótkiego formularza rejestracyjnego Czyści pamięć alokowaną przez SQL Server (nie rozwiązuje problemu, tylko usuwa jego skutki) Jest możliwe, że spowoduje efekty uboczne! Musi być uruchamiane regularnie (mogą nadejść nowe połączenia ) Naprawdę złośliwy administrator systemu nie ma żadnego powodu, aby je zastosować 40

PasswordExposurew SQL Server 2005 Niebezpieczeństwo jest większe niż w najnowszej wersji SQL Server Do SQL Server 2005 włącznie nie był potrzebny administracyjny dostęp do systemu, wystarczyła możliwość zadawania zapytań Uzyskanie listy zaalokowanych obszarów pamięci SELECT* FROM sys.dm_os_virtual_address_dump Przeglądanie poszczególnych obszarów pamięci: DBCC TRACEON(3604) DBCC BYTES(adres, liczba bajtów) DBCC BYTES nie działa już w SQL Server 2008 41

Zasada minimalnych przywilejów 42

Konfiguracja domyślna Należy stwierdzić, że od SQL Server 2005 domyślna instalacja serwera jest dość dobrze zabezpieczona Przede wszystkim wyłączone są niebezpieczne opcje, takie jak uaktywnienie xp_cmdshell, Database Mail itd. Domyślnie zablokowane konto sa Przydatne (ale i groźne) ustawienia administrator musi świadomie uaktywnić Nadal jednak można przeprowadzić działania dodatkowo uodparniające system na ataki 43

Konta usług SQL Server działa w systemie Windows jako zbiór usług skojarzonych z kontami Należy absolutnie unikać uruchamiania na koncie Lokalnym (Systemu lub Administratora) Zwykle używa się wbudowanego konta Usługa Sieciowa Idealną sytuacją jest przygotowanie konta o odpowiednio zdefiniowanych uprawnieniach dla każdej usługi składowej Wyboru najlepiej dokonać podczas instalacji Mając już wcześniej przygotowany spis usług i odpowiednie konta! Narzędzie konfiguracyjne: SQL Server Configuration Manager, ewentualnie services.msc 44

Zasada minimalnych przywilejów a procedury składowane Domyślnie niektóre procedury składowane mające wpływ na bezpieczeństwo systemu cechują się szerokimi uprawnieniami dostępu Przed pochopnym odbieraniem uprawnień należy szczegółowo przeanalizować, czy procedury nie są niezbędne dla działania uruchomionych usług Szczególnie uważnie trzeba przeanalizować procedury składowane, które mogą wywoływać wszyscy użytkownicy (rola public) 45

Jak sprawdzić i ograniczyć listę groźnych procedur? Procedury rozszerzone SELECT object_name(major_id) ASsecurable FROM sys.database_permissionswhere grantee_principal_id= user_id('public') AND objectproperty(major_id major_id, 'IsExtendedProc')=1 ORDER BY securable Procedury zwykłe ANDobjectproperty(major_id major_id, 'IsProcedure')=1 Zabronienie wykonywania procedury REVOKE EXECUTE ON xp_revokelogin TO public 46

Procedury składowane -ciekawostka Możliwość enumeracji kont Windows z poziomu konta gościa przy pomocy procedury składowanej xp_revokelogin Uwaga: wbrew nazwie, nie jest to procedura rozszerzona ;) Testy przeprowadzono na domyślnej instalacji systemu Różne komunikaty błędów dla istniejących i nieistniejących nazw kont Podobna sytuacja występuje dla sp_revokelogin, ale już nie dla xp_grantloginczy sp_grantlogin Ciekawostka istniała także w SQL Server 2005 (i już kilka razy ją pokazywaliśmy ;) 47

Procedury składowane ciekawostka (2) 48

Procedury składowane zalecenia Maksymalne ograniczenie użytkowników publicdo procedur składowanych mogących mieć wpływ na bezpieczeństwo Przykłady takich procedur domyślnie dostępnych: xp_dirtree, xp_fileexist, xp_getnetname, xp_instance_regread, xp_regread Uwaga na funkcjonalność! W konkretnym przypadku xp_revokeloginproducent producent rekomenduje używanie DROP LOGIN, a same procedury mają zostać w przyszłości usunięte 49

Jak jeszcze uodpornić konfigurację? Zmiana nazwy konta sa(nawet jeśli go na codzieńnie używamy) Najlepiej zarządzać bazą danych z poziomu innego konta Zablokowanie dostępu konta guestdo baz systemowych Rozważenie usunięcia wbudowanej domyślnie grupy BUILTIN\Administrators Wymaga analizy mogą przestać działać np. usługi klastrowane Uaktywnienie weryfikacji polityki wygasania hasła (więcej szczegółów za chwilę) 50

Hasła użytkowników 51

Tropimy słabe hasła użytkowników I linia obrony: nieużywamy SQL Authentication II linia obrony: powiązanie z politykami systemowymi 52

CHECK_POLICY, CHECK_EXPIRATION Próba utworzenia konta użytkownika ze zbyt krótkim hasłem CREATE LOGIN test WITH PASSWORD = test, CHECK_POLICY= ON, CHECK_EXPIRATION = ON Msg 15116, Level 16, State 1, Line 1 Password validation failed. The password does not meet Windows policy requirements because it is too short. Sprawdzenie wygasania hasła (password expiration) jest domyślnie wyłączone! Działanie w systemach Server 2003 i późniejszych 53

Wykorzystanie funkcji pwdcompare Możliwość testowania słabych haseł Puste hasło SELECT name FROM sys.sql_loginswhere PWDCOMPARE ('', password_hash) = 1 Hasło takie samo, jak nazwa konta SELECT name FROM sys.sql_logins WHERE pwdcompare(name, password_hash) = 1 Modyfikacje: nazwa konta z dodanym 1, numerem miesiąca, powtórzona dwukrotnie itd. Hasło znane słowo SELECT name FROM sys.sql_loginswhere PWDCOMPARE('admin123', password_hash) = 1 54

Łamanie dowolnych haseł kont SQL-owych Jak przechowywane są hasła w SQL Server 2008? SELECT name, password_hashfrom sys.sql_logins 0x01004AF7912142C377569BD3B50E27F272D5BD04742C377569BD3B50E27F272D5BD047 06BB166BB6E to: Wartość stała (2 bajty) Sól(ang. salt, 4 bajty) Skrót SHA1 soli oraz hasła (20 bajtów) 55

Cain& Abel Narzędzie do odzyskiwania haseł z systemów Windows Wersja4.9.35 do pobrania spod http://www.oxid.it/cain.html Możliwość żliwośćwykonywania wykonywania ataków słownikowych i bruteforce 56

Cain& Abel w akcji (1) AddMSSQL HashesUppercase H UppercaseHashto zaszłość z SQL Server 2000 57

Cain& Abel w akcji (2) Co to znaczy słabe hasło Słownikowe, nazwa konta + 123, Takie, które da się złamać podczas weekendu, np. do 8 znaków [a-z, 0-9, dodatkowo kilka znaków specjalnych] 58

Zbliżamy się do końca 59

Podsumowanie SQLServer Server 2008 to ogromny kombajn i nie jest łatwo ogarnąć wszystkie aspekty bezpieczeństwa Producent czyni wiele wysiłków: Coraz lepsza (dobrze chroniona) domyślna konfiguracja Nowe, zaawansowane mechanizmy ochrony Prawdopodobnie mało błędów bezpieczeństwa w kodzie Wsparcie ze strony innych elementów infrastruktury (jak system operacyjny) Nie zawsze można je wykorzystać ze względu na chęć zapewnienia interoperacyjności Dlatego nadal niezbędny jest nadzór i uważne przystosowanie konfiguracji do swych potrzeb 60

Więcejinformacji(wybraneźródła) Bezpieczeństwo SQL Server: http://www.microsoft.com/sqlserver/2008/en/us/security. aspx- SQL Server 2008 Security (opis ogólny) http:// ://technet.microsoft.com/en-us/library/bb283235.aspx -Securing SQL Server (punkt startowy dla administratora) http:// ://www.sqlcrunch.com/security/tabid/89/default.aspx -zbiór artykułów poświęconych różnym aspektom bezpieczeństwa (SQL Server 2000, 2005, 2008) http://www.microsoft.com/sqlserver/2008/en/us/wp-sql- 2008-security.aspx-Security Overviewfor Database Administrators 61

Informacje kontaktowe Autorprezentacji gerard.frankowski@man.poznan.pl Centrum Innowacji Microsoft: http://mic.psnc.pl mic@man.poznan.pl.pl PCSS http://www.pcss.pl Zespół Bezpieczeństwa PCSS http://security.psnc.pl security@man.poznan.pl 62

Pytania i dyskusja Dziękuję za uwagę! 63