Bezpieczeństwo heterogenicznej platformy hostingowej Gerard Frankowski, Zespół Bezpieczeństwa PCSS Szkolenie Centrum Innowacji Microsoft Poznań, 23.06.2009
Agenda 11:00 Wprowadzenie, informacje organizacyjne 11:05 Poznajmy się: czym jest PCSS imic? Program szkoleń MIC 11:15 Bezpieczeństwo heterogenicznej platformy hostingowej(1) wprowadzenie + serwer IIS 11:50 Przerwa 12:00 Bezpieczeństwo heterogenicznej platformy hostingowej(2) interpreter PHP 12:45 Podsumowanie, pytania, dyskusja 13:00 Zakończenie 2
Informacje organizacyjne Ankieta Krótka i anonimowa Pomoc na przyszłość Lista obecności Konkursy 2 pytania = 2 nagrody Osoba znająca odpowiedź podnosi rękę Pierwsza poprawna odpowiedź wygrywa Prezentacja dostępna na stronach WWW http://mic.psnc.pl http://security.psnc.pl http://szkolenia.man.poznan.pl Webcast dziś brak 3
Kim jesteśmy i co robimy? 4
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 Zadania bezpieczeństwa w projektachr&d Szkolenia, transfer wiedzy Badania własne Usługizewnętrzne Najciekawsze badania z ostatnichlat Badania sieci bezprzewodowych na tereniepoznania Raportnt. bezpieczeństwa bankowości elektronicznej Bezpieczeństwo serwerów WWW (Apache, MS IIS) Bezpieczeństwo sklepów internetowych http://security.psnc.pl 6
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 Warszawie (IX-X X 2009) Szkolenia w zakresie bezpieczeństwa IT Doroczna Konferencja MIC 16 kwietnia 2009, 3. edycja 8
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 9
Wprowadzeniedo do programu szkoleniowegomic 10
Szkolenia MIC I półrocze 2009 Interoperacyjność 27.05: Zastosowanie technologii Silverlight... 10.06: Windows Server 2008 jako uniwersalna platforma zapewniająca usługi wirtualizacji i klastrowania 23.06: Bezpieczeństwo heterogenicznej platformy hostingowej Bezpieczeństwo 18.06: Omijanie firewalli w systemach Windows warsztaty BYOL dla specjalistów bezpieczeństwa 11
Szkolenia MIC II półrocze 2009 Interoperacyjność Windows HPC Server Exchange Labs jako uniwersalna platforma e-mail Bezpieczeństwo Bezpieczeństwo aplikacji ASP.NET MVC Bezpieczeństwo kontrolera domeny Szkolenia w Warszawie: IX/X 2009 (powtórzenie cyklu Interoperacyjność ) MTS 2009? (29-30.09.2009) Zachęcamy do zgłaszania w ankietach propozycji dalszych tematów! 12
Bezpieczeństwo heterogenicznej platformy hostingowej 13
Cel prezentacji Przedstawienie możliwości budowy mieszanegośrodowiska hostingowegow w kontekście bezpieczeństwa IT Szkolenie jest przeznaczone głównie dla administratorów serwerów WWW oraz twórców aplikacji webowych Częściowo skorzystają specjaliści bezpieczeństwa IT
Czego nie znajdziemy w prezentacji? Nie będzie wojny technologii Przegląd nie będzie kompletny, to raczej wskazanie na kierunek poszukiwań 15
Czy i dlaczego środowisko heterogeniczne? Kryteria wyboru Kwestie finansowe (MŚP, użytkownicy indywidualni) Doświadczenie Szybkość nauki Możliwości języka Dostępność specjalistów na rynku Docelowe wymagania stawiane przed aplikacją Preferencje i przekonania osobiste 16
PHP dobry pomysł Właściciel nowo działającego na rynku mikroprzedsiębiorstwa potrzebuje szybko uruchomić formularz zamówień oferowanego produktu Firma posiada tylko licencję na serwer Prezes firmy sam zaprojektował aplikację, a do jej wykonania zamierza zatrudnić studenta/praktykanta W celu zmniejszenia kosztów firma skorzysta z otwartego środowiska bazodanowego Docelowa aplikacja jest prosta i niewielka (Pamiętajmy o bezpieczeństwie!) 17
PHP zły pomysł Duża korporacja przygotowuje zestaw aplikacji intranetowychdo pracy grupowej oraz monitorowania działania sieci Firma posiada szereg licencji na różne rodzaje oprogramowania firmy Microsoft Koszt zatrudnienia nowych lub wyszkolenia własnych specjalistów ASP.NET jest pomijalny w stosunku do oczekiwanych zysków i możliwości firmy Aplikacje będą intensywnie korzystać z już zainstalowanego oprogramowania MS SQL Server 18
Bezpieczeństwowieloelementowegowieloelementowego środowiskahostingowego Bezpieczeństwo komponentów System operacyjny serwera Serwer WWW Serwer baz danych Interpreter języka stron Inne (np. aplikacje CMS, usługa FTP) Wzajemna współpraca heterogenicznych składników środowiska Możliwe problemy z bezpieczeństwem interfejsów 19
Najczęstsze komponenty środowiska interoperacyjnegohostingu Windows vs. Linux/Unix IIS vs. Apache MS SQL/Oracle vs. MySQL/Postgres ASP.NET vs. PHP Przedmiotem dzisiejszego szkolenia będzie środowisko hostingoweoparte oparte na MS Windows + IIS 7.0 oraz PHP 20
Bezpieczeństwosystemu systemu operacyjnego Przypomnienie Legalny i aktualny system Minimalizacja liczby oraz separacjauruchomionych programów i usług Dodatkowa ochrona na poziomie hosta, np.: Host-based IDS Firewall lokalny Antywirus, Antirootkit Moduł badania integralności systemu plików Backup danych Ścisła polityka kontroli dostępu 21
Bezpieczeństwo serwera WWW Poprzednie prace MIC: badania poziomu bezpieczeństwa serwera IIS v. 7.0 Prezentacje MIC m.in. na konferencjach SecureCON, Confidence Szkolenie MIC 30.10.2007 http://mic.psnc.pl/pl/ev_301007.html Slajdy i webcastydostępne na WWW MIC http://mic.psnc.pl/pl/download/slides.html http://mic.psnc.pl/pl/download/webcasts.html 22
BezpiecznyserwerIIS (1) Wybór odpowiedniego serwera Unikanie kontrolera domeny Maksymalnie okrojona instalacja Minimum privileges principle Decyzja o wyborze niezbędnych usług (www, w, smtp, nntp, ftp, ) Dobrze dobrany katalog domowy serwisów (wydzielona partycja nie systemowa) Usunięcie domyślnie zainstalowanych katalogów (icon, iishelp) 23
Bezpieczny serwer IIS (2) Definicja odpowiednich uprawnieńdla katalogu domowego serwera(read, Log) Ustawienie uprawnień do katalogu ze skryptami (Execute) Wyłączenie niepotrzebnych filtrów ISAPI (np. Digest, Frontpage, Compression) i skasowanie plików DLL Wyłączenie mapowania dla typów plików:.asa,.asp,.bat,.cdx,.cer,.htr,.htw htw,.ida,.idc idc,.idq,,.inc, printer,.shtml shtml,.shtm shtm,.stm stmi innych 24
Bezpieczny serwer IIS (3) Logowanie żądań HTTP Uprawnienia odczytu pliku logu jedynie dla administratora systemu Uprawnienia zapisu do HKLM/Software tylko dla administratora systemu Weryfikacja uprawnień grupy Everyonew stosunku do katalogów: Web root %systemroot% %systemroot%\system32system32 %systemroot%\system32\temptemp 25
IIS instalacja testowa na MS Vista Panel Sterowania -> Programy i Funkcje -> Włącz lub wyłącz funkcje systemu Windows 26
IIS centrum zarządzania (1) Uruchamianie menedżera IIS 7.0 Uruchamianie jako Administrator! Sposób 1: Konsola mmc -> Dodaj/Usuń przystawkę -> Menedżer internetowych usług informacyjnych -> Dodaj Sposób 2 (linia poleceń) inetmgr.exe 27
IIS centrum zarządzania (2) 28
Dodajemy witrynę Nazwa serwera -> Witryny -> Dodaj witrynę sieci Web 29
Dodatkowe mechanizmy zabezpieczeń IIS Lockdown Wizard Ostatnia wersja: 2.1, styczeń 2007 Obsługuje IIS 4.0, 5.0, 5.1 W dalszych wersjach konfiguracja domyślna została poprawiona i narzędzie określono jako zbędne Warto uruchomić przy migracji IIS 5.0/1 -> IIS 6.0 Microsoft BaselineSecurity Analyser Zawiera sekcję Checkfor IIS administrative vulnerabilities UrlScan Omówimy go za chwilę dokładniej 30
MBSA http://www.microsoft.com/poland/ technet/security/tools/mbsa.mspx 31
URLScan informacje ogólne URLScanjest filtrem ISAPI monitorującym i blokującym żądania HTTP Ostatnia wersja: 3.1 Działa dla IIS 5.1, 6.0, 7.0 Systemy: Windows Vista, 2008 Server http://www.iis.net/extensions/urlscan Zaawansowane możliwości filtrowania oraz logowania informacji Instalacja z pakietu MSI 32
URLScanczy czy funkcjonalność IIS? Spora część funkcjonalności narzędzia może być osiągnięta w samym IIS Czy URLScan jest zatem potrzebny? URLScan jest bardziej elastyczny Działa na wcześniejszym etapie przetwarzania żądania, szybciej (wydajniej) odrzucając groźne pakiety Pozwala zdywersyfikować ryzyko popełnienia błędu Jego zastosowanie lepiej realizuje strategię Defense in depth 33
URLScan-instalacja Pakiet instalacyjny urlscan_v31_x86.msi Instalacja z konta administratora Może być konieczne korzystanie z linii komend msiexec/a urlscan_v31_x86.msi msiexec/a urlscan_v31_x86.msi /l*v urlscan_install.log msiexec/a urlscan_v31_x86.msi TARGETDIR=c:\windows Domyślne lokalizacje: Binaria: %SystemRoot%\System32\inetsrv\urlscan\urlscan.dllurlscan.dll Plik konfiguracyjny: %SystemRoot%\System32\inetsrv\urlscan\urlscan.iniurlscan.ini Pliki logu: %SystemRoot%\System32\inetsrv\urlscan\logslogs 34
URLScan konfiguracja narzędzia Przykładowy plik konfiguracyjny: http://www.iis.net/downloads/files/urlscan/urlscan- ini_v3.zipdownloads/files/urlscan/urlscan-ini_v31.zipini_v31.zip Zawiera dość dokładne wyjaśnienie używanych opcji Wybrane opcje UseAllowVerbs Biała lub czarna lista dozwolnonych/zabronionych metod HTTP Wartość domyślna = 1 (dopuszczanie żądań wymienionych w sekcji [AllowVerbs], 0 powoduje odrzucanie żądań z sekcji [Deny Verbs]) UseAllowExtensions Działa na identycznej zasadzie, jak powyżej, ale odnosi się do rozszerzeń żądanych plików 35
URLScan konfiguracja narzędzia (2) Wybrane opcje c.d. NormalizeUrlBeforeScan Wartość domyślna = 1 powoduje, że przekazany adres URL jest poddawany odkodowaniu Wartość 0 powoduje, że łatwo ominąć testy rozszerzeń lub URL! VerifyNormalization Wartość domyślna = 1 przekazany adres URL jest odkodowany po raz drugi, jeśli wystąpią różnice, żądanie jest odrzucane Wykrywa podwójne kodowanie złośliwych znaków, np. &-> %26-> %2526 Limity nakładane na żądanie Sekcja [RequestLimits] Długość żądania, długość URL, długość querystring,, 36
Konkurs 1 Nagroda: MS Office Standard Możliwość dowolnego (także komercyjnego) wykorzystania Pytanie Jak nazywa się jedna z opcji URLScan, która bezpośrednio wpływa na możliwość zabezpieczenia się przed atakiem typu Directory Traversal? Podpowiedź przykłady ataku Directory Traversal http://vulnerable.com/main.php?file=../../../../etc/passwd http://insecure.org/images/../../../../../../../boot.ini 37
Konkurs 1 -odpowiedź Odpowiedź Nazwa opcji to AllowDotInPath Możliwe wartości: 0/1 0 = żądania plików o ścieżce zawierającej wielokrotne wystąpienie znaku.. zostaną odrzucone 1 = test nie jest przeprowadzany 38
URLScan tworzenie własnych reguł Zadanie: odrzucić żądania, w których nazwa pliku bądź parametr zapytania zawierają dwa myślniki RuleList=testowatestowa [testowa] AppliesTo=.html DenyDataSection=denied_strings ScanUrl=1 ScanQueryString=1 [denied_strings] -- -- 39
URLScan konfiguracja IIS Po instalacji URLScannależy należy dać znać IIS-owi o jego obecności Dodajemy filtr ISAPI dla serwera lub witryny Menedżer IIS -> Widok funkcji -> IIS -> Filtry ISAPI -> Akcje -> Dodaj Restartujemy serwer IIS 40
Restart serwera IIS IIS Manager -> Akcje -> Zarządzaj serwerem -> Uruchom ponownie Linia komend net stop w3svc net start w3svc 41
Działanie URLScanna na przykładzie http://127.0.0.1:8080/test-1.html1.html i test--2.html 42
Dodatkowa konfiguracja witryny (1) Co jeszcze warto zrobić na początek? Nałożenie limitów Własne strony z komunikatami o błędach Zapewnienie, że nie są przeglądane katalogi Dostarczenie domyślnych podstron serwisu Dostrojenie funkcjonalności logowania Wygodny w użyciu Menedżer IIS Modyfikacji możemy dokonać globalnie dla serwera lub dla poszczególnych witryn Po dokonaniu zmian restartujemy serwer 43
Dodatkowa konfiguracja witryny (2) 44
Słowoo o hostingu współdzielonym Maksymalne ograniczenia przywilejów Minimalizacja liczby usług Maksymalne ograniczenie możliwości ładowania plików do katalogu WWW Usługi FTP i WWW w tym samym katalogu to prosta droga do problemów! Separacja katalogów użytkowników od danych systemowych i wzajemnie od siebie 45
Przerwa 46
JakpostawićPHP naiis? Interpreter php-cgi cgi.exe Wyjątkowo prosty Bardzo niewydajny Wtyczka ISAPI (php5isapi.dll) Szybsza niż interpreter Problemy z wielowątkowością Mechanizm FastCGI Nieco szybszy niż interpreter Znacznie stabilniejszy niż wtyczka ISAPI Implementacje Zend i Microsoft 47
Instalacja PHP jako ISAPI (1) Pobranie archiwum PHP (nie instalatora) Opcjonalnie pobranie rozszerzeń PECL http://www.php.net/get/php-5.2.10- Win32.zip/from/a/mirror Rozpakowanie np. do D:\PHP (w nazwie katalogu nie powinno być spacji!) Należy pobrać PECL dla PHP 5.2.6: http://www.php.net/get/pecl-5.2.6- Win32.zip/from/a/mirror Załadowanie zawartości archiwum do podkatalogu D:\PHP\ext Skopiowanie php5activescript.dll i php5servlet.dll z podkatalogu extdo głównego katalogu instalacji 48
Instalacja PHP jako ISAPI (2) Plik konfiguracyjny php.ini D:\PHP\php.ini-recommended -> D:\PHP PHP\php.ini Plik tekstowy możliwy do edycji np. w Notatniku Istotna zmiana (instalujemy jako ISAPI): ;cgi.force_redirect= 1 -> cgi.force_redirect = 0 Uaktywnienie zarządzania sesjami: session.save_path = "d:\php\sessions" Lokalizacja może znajdować się na maszynie sieciowej, ale musi być podmapowana jako napęd Uaktywnienie pożądanych rozszerzeń: ;extension=php_mysql.dll-> extension=php_mysql.dll
Instalacja PHP jako ISAPI (3) Dodanie ścieżki instalacyjnej PHP do zmiennej systemowej PATH Panel sterowania -> System -> Zaawansowane ustawienia Systemu -> Zmienne środowiskowe Warto dodać ścieżkę na początek zmiennej Niezbędny restart serwera IIS 50
Instalacja PHP jako ISAPI (4) Konfiguracjaścieżki php.ini Uniknięcie problemów katalog systemowy czy instalacyjny? Uruchomienie regedit.exe HKLM -> Software -> [Nowy klucz: PHP] -> PHP -> [Nowa wartość ciągu: IniFilePath = D:\PHP] 51
Instalacja PHP jako ISAPI (5) Końcowa konfiguracja IIS Menedżer IIS -> Widok funkcji -> Mapowania obsługi -> Dodaj mapę skryptu Warto skonfigurować ograniczenie metod (żądań) 52
Instalacja PHP jako ISAPI (6) Końcowa konfiguracja IIS c.d. Dodanie filtru ISAPI Menedżer IIS -> Widok funkcji -> Filtry ISAPI -> Akcje -> Dodaj Restart serwera 53
Prosty test działania Testowy skrypt PHP: info.php <?php phpinfo();?> 54
Konkurs 2 Nagroda: Create the next generation Web - Developer Resource Kit Pytanie Dlaczego skrypt z poprzedniego slajdu, w nieco zmienionej postaci: <? phpinfo();?> nie zadziałał? Podpowiedź co oznacza parametr short_open_tag? 55
Konkurs 2 -odpowiedź Odpowiedź W domyślnym pliku konfiguracyjnym znajduje się klauzula short_open_tag = Off która blokuje użycie znaczników <??> z przyczyn kompatybilnościowych W celu umożliwienia użycia skróconych znaczników należy: Zmienić odpowiednią linię pliku php.ini na: short_open_tag = On Zrestartować serwer WWW 56
Wybrane aspekty konfiguracji PHP (1) Polityka ujawniania informacji error_reporting = E_ALL & ~E_NOTICE expose_php = off display_errors = off log_errors = on error_log = c:\mylogs 57
Wybrane aspekty konfiguracji PHP (2) Limity memory_limit = 8M max_input_time = 60 max_execution_time= 120 Ograniczenie inwencji użytkownika file_uploads = off register_globals = off magic_quotes_gpc = on (?) allow_url_fopen = off disable_functions = passthru, exec,... 58
Lista niebezpiecznych funkcji (dla IIS) chmod exec get_cfg_var getenv ini_get ini_get_all ini_set mail passthru pcntl_exec phpuname popen proc_open send_mail shell_exec syslog system Dodatkowe funkcje dla serwera Apache, platform uniksowych, POSIX Jeśli powyższe funkcje nie są niezbędne, powinny być dopisane do php.iniw klauzuli disable_functions 59
Modyfikacja pliku php.ini Edytor tekstowy Narzędzie graficzne pod Windows AnalogX PHPConfig http://www.analogx.com/contents/download/ Network/phpconf/Freeware.htm Freeware Wersja 1.01 (2009) Instalacja przebiega bezproblemowo Plus: wygodny interfejs i grupowanie opcji o podobnym znaczeniu Minus: usuwanie komentarzy 60
AnalogXPHP Config 61
Czy PHP jest bezpieczny? To say PHP has a security problem suggests that it's impossible to develop a secure PHP application, but to say PHP doesn't have a security problem suggests that everything is perfect neither is true(chris Shifflet) PHP is neither inherintly securenor insecure. Itis theresponsibilityof of the programmerof of a web application, the databaseadministrator administrator and the system administrator to ensurethatsecurity isnot compromised at severallevels(james D. Keeline) 62
Zagrożenia związane z PHP Błędy w konfiguracji: Ujawnianie informacji Zła polityka logowania Zbyt szerokie uprawnienia użytkownika Błędy w tworzonych aplikacjach: Błędyprojektu Błędykodu Błędyśrodowiska PHP Współpracującekomponenty 63
Testy bezpieczeństwa konfiguracji Narzędzie PHPSecInfo Najnowsza wersja: 0.2.1, kwiecień 2007 http://phpsec.org/projects/phpsecinfo Projekt PHP Security Consortium Narzędzie napisanew PHP ;) Prosta analiza konfiguracji środowiska PHP Wgrywamynp. pod http://127.0.0.1/phpsecinfo Przyjaznyinterfejs Obszerneobjaśnienia Niewszystkietesty testy działają w środowisku Windows 64
65
66
Testy bezpieczeństwa kodu Bezpieczeństwo kodu kwestia programisty, administratora, czy specjalisty ds. bezpieczeństwa? Programista powinien znać i stosować dobre praktyki bezpiecznego programowania Przeszkolony administrator może (powinien?) stosować proste metody testowania kodu, aby wiedzieć, co dzieje się na jego serwerze Specjalista ds. bezpieczeństwa będzie optymalnie wykorzystany, gdy skoncentruje się na trudniejszych do wykrycia podatnościach Dlatego chcemy zachęcić do przetestowania prostego skanera kodu PHP działającego w środowisku Windows 67
Pixy podstawowe informacje Skaner kodu źródłowego PHP 4.x oraz nieobiektowy PHP 5.x Ostatnia wersja: 3.0.3, lipiec 2007 Autorzy: Secure System Labs (Politechnika Wiedeńska) http://pixybox.seclab.tuwien.ac.at/pixy Narzędzie uruchamiane z linii komend WymagaSun JRE oraz narzędziadotty dotty z pakietu Graphvizdo analizy wyników Graphviz: http://www.graphviz.org Całość działa w środowisku Windows WykrywapodatnościXSS oraz SQL Injection 68 Obrazuje przepływ potencjalnie złośliwych danych
Wykorzystanie Pixy Należy uruchomić plik run-all.bat all.batz katalogu instalacyjnego Pixydziała na pojedynczych plikach: skanowanie katalogów wymaga oskryptowania run-all.bat all.bat[opcje] [plik_php plik_php] Program wypisuje część wyników na standardowe wyjście Po zakończeniu parsowaniaplików plików w podkatalogu graphs znajdują się dodatkowe rezultaty calledby_[ _[filename].txt includes_[ _[filename].txt xss_[ _[filename]_[n]_[dep min].dot sql_[ _[filename]_[n]_[dep min].dot 69
Wyniki Pixy standardowe wyjście Oprócz podatności narzędzie potrafi znaleźć np. partie nieosiągalnego kodu 70
Wyniki Pixy katalog graphs Pliki należy zachować samodzielnie Pixy nadpisze je przy następnym uruchomieniu Pliki.dotnależy analizować narzędziem dotty 71
Analiza grafów -dotty Tutorial: http://pixybox.seclab.tuwien.ac.at/pixy/basics.php 72
Pixy-kilka podpowiedzi Wykryte podatności dpowiadajągrafom zawierającym sufiks _min W przypadku tworzenia skryptów można zachować jedynie wspomniane grafy Grafy przechowywane są w formie tekstowej Można łatwo napisać własne narzędzie do kompleksowej analizy wyników 73
Inne narzędzia pod Windows RATS http://www.fortify.com/security-resources/rats.jspresources/rats.jsp Służy do badania kodu C i PHP Bada głównie użycie niebezpiecznych funkcji YASCA http://www.yasca.org Kombajn do badania m.in. kodu PHP (wykorzystuje m.in. Pixy) PHPLint http://www.icosaedro.it/phplint Walidator i generator dokumentacji do PHP 4.x/5.x 74
Pamiętajmy, że Narzędzia testujące kod wykrywają tylko niektóre podatności Skanery kodu zgłaszają dużo false positives Wyniki analizy kodu muszą być przeanalizowane przez specjalistę do spraw bezpieczeństwa Wyniki działania skanerów powinny być dla administratora jedynie uzupełnieniem, przesłanką do zawiadomienia dedykowanego audytora kodu 75
Jak dowiedzieć się o błędach środowiska Portale i listy publikujące informacje o podatnościach http://secunia.com http://cve.mitre.org Bugtraq Full Disclosure Ostatni błąd w PHP: ogłoszony 19.06.09! http://secunia.com/advisories/35441 Błędy PHP specyficzne dla środowiska Windows 14.04.09: PHP for Windows OpenSSLMultiple Vulnerabilities http://secunia.com/advisories/34666 76
Zbliżamy się do końca 77
Gdyby ta prezentacja była dłuższa Kolejne tematy do poruszenia: Bezpieczeństwo serwera baz danych Porównanie poziomu bezpieczeństwa MS SQL Serveraoraz MySQL Bezpieczna konfiguracja środowisk bazodanowych Hardening serwerowego systemu operacyjnego Bezpieczeństwo aplikacji CMS w systemach Windows Porównanie dostępnych rozwiązań Narzędzia skanujące Wykorzystanie kryptografii w zabezpieczaniu środowiska hostingowego Ochrona przed atakami DoS/DDoSDDoS 78
Podsumowanie Są sytuacje, w których warto pomieszać pomieszać technologie, ale nie zawszeinie wszystkie Nie ma problemu z hostowaniem aplikacjiphp pod Windows za pośrednictwem serweraiis Trzeba zwrócić uwagę na kwestiebezpieczeństwaw kontekście wszystkich wykorzystanychrozwiązań, a także interfejsów międzynimi Dla systemu Windows istnieje szereg narzędzi, które wspomagają bezpieczną konfigurację i wykorzystanie elementów środowiska hostingowego Dziś poruszyliśmy jedynie wierzchołek góry lodowej 79
Więcejinformacji(wybraneźródła) Instalacja i uruchomienie aplikacjiphp na IIS: http://shabbir.hassanally.net/blog/2007/10/11 http://learn.iis.net/page.aspx/24/running-php-applications- on-iis http://www.webcheatsheet.com/php/install_and_configur e.php http://www.techit.pl/demonstracje/view.aspx?3582.instala cja+php+w+modelu+isapi+na+serwerze+iis+7(screencastscreencast dla konfiguracji PHP na IIS 7.0 dla Windows Server 2008) PHP Security Consortium http://phpsec.org http://phpsec.org/projects/guide 80
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 81
Pytania i dyskusja Dziękuję za uwagę! 82