Bezpieczeństwo heterogenicznej platformy hostingowej Marcin Jerzak, Zespół Bezpieczeństwa PCSS Szczawno Zdrój, 24.02.2011
Agenda Kim jesteśmy, co robimy? Wprowadzenie do tematu Zagrożenia Bezpieczeństwo platformy hostingowej Instalacjaacja testowa IIS + PHP Bezpieczeństwo PHP Zakończenie 2
Kim jesteśmy i co robimy? 3
Zespół Bezpieczeństwa PCSS Od 1996r. zajmujemy się: Zabezpieczaniem infrastruktury PCSS Zadaniami bezpieczeństwa w projektachr&d Szkoleniami i transferemem wiedzy Badaniami własnymi Audytami i doradztwem w zakresie bezpieczeństwa IT Wybrane badania z ostatnich lat: Raportnt. bezpieczeństwa bankowości elektronicznej(2006) Bezpieczeństwo serwerówwww ApacheiMS IIS(2007) Bezpieczeństwo sklepów internetowych(2008) Testy porównawcze przeglądarek internetowych (2010) http://security.psnc.pl 4
Bezpieczeństwo heterogenicznej platformy hostingowej 5
Cel prezentacji Pokazanie różnych ataków na aplikacje webowe 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
Czego nie znajdziemy w prezentacji? Nie będzie wojny technologii Przegląd nie będzie kompletny, to raczej wskazanie na kierunek poszukiwań 7
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 8
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!) 9
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 10
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 11
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 12
Agenda Kim jesteśmy, co robimy? Wprowadzenie do tematu Zagrożenia Bezpieczeństwo platformy hostingowej Instalacjaacja testowa IIS + PHP Bezpieczeństwo PHP Zakończenie 13
Ile to kosztuje?
Najważniejsze zagrożenia (według OWASP TOP 10) Injections Cross-Site Scripting (XSS) Błędna obsługa sesji Insecure Direct Object References Cross-Site Request Forgery (CSRF) Security Misconfiguration
Injections(1) Zmuszenie aplikacji, aby wysłany przez użytkownika ciąg znaków przesłała do interpretera stron SQL Injection Command Injection Xpath Injection HTML Injection XML Injection
Injections(2) Wykorzystanie: Procedur składowanych Preparedstatements Walidacja danych przesyłanych przez użytkownika (white list) Zasada minimalnych uprawnień
Cross-sitescripting(XSS) (1) Dane pochodzące od atakującego przekazane są do przeglądarki użytkownika ReflectedXSS Persistent XSS Zagrożenia: Kradzież identyfikatora sesji Kradzież danych Phishing
Cross-sitescripting(XSS) (2) Filtrowanie danych pochodzących od użytkownika przy użyciu białych list Przekodowanie danych pochodzących od użytkownika http://www.owasp.org/index.php/xss
Błędna obsługa sesji (1) HTTP to protokół bezstanowy Szyfrowanie wykorzystywane jedynie w momencie logowania Łatwe do przewidzenia identyfikatory sesji Sesje w ukrytych polach lub w URL-u Przechwycenie sesji = kradzież poświadczeń Firesheep http://security.psnc.pl/reports/sklepy_interne towe_cookies.pdf
Błędna obsługa sesji (2) Sesje losowe Przycisk wyloguj powoduje unieważnienie aktualnej sesji Wykorzystanie SSL Identyfikator sesji zmienia się po zalogowaniu Ochrona przed tzw. session fixation
InsecureDirectObjectReferences Błędna polityka dostępu do zasobów www.jakiśbank.pl/client/10002341 www.jakiśbank.pl/client client/10002342 Każdorazowa weryfikacja uprawnień przy próbie dostępu do obiektu
Cross SiteRequestForgery(CSRF) (1) Zmuszenie przeglądarki ofiary do wykonania akcji na atakowanej stronie Wykorzystanie przeglądarki: Sesje Adres IP User-Agent Certyfikat SSL Poświadczenia domeny Windows <img src=http:// ://www.jakiśbank.pl/deleteuser.php?id=123& width=1&height=1>
Cross SiteRequestForgery(CSRF) (2) Tokendodawany do każdego wrażliwego zapytania: W ukrytym polu O losowej wartości CSRF za pomocą XSS
Security misconfiguration Poprawki Utwardzanie systemu Zmiany w systemie a wpływ na bezpieczeństwo Domyślne ustawienia
Agenda Kim jesteśmy, co robimy? Wprowadzenie do tematu Zagrożenia Bezpieczeństwo platformy hostingowej Instalacjaacja testowa IIS + PHP Bezpieczeństwo PHP Zakończenie 26
System operacyjny
Bezpieczeństwosystemu systemu operacyjnego Legalny i aktualny system Minimalizacja liczby orazseparacja uruchomionych 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 28
Zasady zabezpieczeń lokalnych Wyłączenie konta Gościa Konta nie powinno się kasować! Zmiana nazwy konta administracyjnego Zły pomysł: Admin, root, Administrator Blokada czasowa konta Ukrywanie nazwy ostatniego użytkownika Codzienna praca na koncie o zwykłych uprawnieniach 29
Szablony zabezpieczeń Security Compliance Management Toolkit Definiowanie szablonu zabezpieczeń Start Uruchom mmc Przystawka Szablony Zabezpieczeń 30
Aplikowanie szablonów (1) Do zasad lokalnych mmc Przystawka Konfiguracja i analiza zabezpieczeń Otwieranie bazy danych + <Nowa_Nazwa> 31
Aplikowanie szablonów (2) Do zasad lokalnych c.d. Import wybranego szablonu, np. MIC.inf Konfiguruj komputer 32
Kreator konfiguracji zabezpieczeń Komponent domyślnie niezainstalowany Kreator tworzenia polityki Wyłączenie zbędnych usług Zamknięcie niepotrzebnych portów Logowanie zdarzeń Import szablonów zabezpieczeń 33
Enhanced Mitigation Experience Toolkit
Aktualizacje Windows Update Aktualizacje baz sygnatur wirusów Microsoft Security Bulletin *Full Disclosure *Buqtraq 35
Serwer WWW
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 37
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) 38
Bezpieczny serwer IIS (2) Definicja odpowiednich uprawnień dlakont internetowych do katalogów nadrzędnych Wyłączenie niepotrzebnych filtrów ISAPI Wyłączenie mapowania dla nieużywanych typów plików:.asa,.bat,.cdx,.cer,.htr,.htw htw,.ida,.idc idc,.idq idq,.inc, printer,.shtml shtml,.shtm shtm,.stm stmi innych 39
Bezpieczny serwer IIS (3) Logowanie żądań HTTP 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 40
Agenda Kim jesteśmy, co robimy? Wprowadzenie do tematu Zagrożenia Bezpieczeństwo platformy hostingowej Instalacjaacja testowa IIS + PHP Bezpieczeństwo PHP Zakończenie 41
IIS instalacja testowa Panel Sterowania -> Programy i Funkcje -> Włącz lub wyłącz funkcje systemu Windows 42
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 43
IIS centrum zarządzania (2) 44
Dodajemy witrynę Nazwa serwera -> Witryny -> Dodaj witrynę sieci Web 45
Dodatkowe mechanizmy zabezpieczeń Microsoft BaselineSecurity Analyzer Zawiera sekcję Checkfor IIS administrative vulnerabilities Web Application Configuration Analyzer UrlScan Omówimy go za chwilę dokładniej 46
MBSA http://www.microsoft.com/poland/ technet/security/tools/mbsa.mspx 47
MBSA
Web ApplicationConfiguration Analyzer(WACA) Narzędzie firmy Microsoft (v. 1.0, 2010) Wspomaga wykrywanie błędów Zawiera zestaw prawie 150 reguł i porad Analizator konfiguracji: Serwera IIS Bazy danych SQL Zabezpieczeń lokalnych Eksport danych do Excela i Team Foundation Server
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 http://www.iis.net/extensions/urlscan Zaawansowane możliwości filtrowania oraz logowania informacji Instalacja z pakietu MSI Od IIS 7.0 większość funkcjonalności została zaimplementowana w ramach modułu: Filtrowanie zapytań Od IIS 7.5 w pełni zintegrowany z serwerem 52
URLScan instalacja (1) 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 53
URLScan instalacja (2)
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 55
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,, 56
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] -- -- 57
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 58
Restart serwera IIS IIS Manager -> Akcje -> Zarządzaj serwerem -> Uruchom ponownie Linia komend net stop w3svc net start w3svc 59
Działanie URLScanna na przykładzie http://127.0.0.1:8080/test-1.html1.html i test--2.html 60
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 61
Dodatkowa konfiguracja witryny (2) 62
Agenda Kim jesteśmy, co robimy? Wprowadzenie do tematu Zagrożenia Bezpieczeństwo platformy hostingowej Instalacjaacja testowa IIS + PHP Bezpieczeństwo PHP Zakończenie 63
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 64
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 65
Instalacja PHP jako ISAPI (1) Pobranie archiwum PHP (nie instalatora) Opcjonalnie pobranie rozszerzeń PECL http://pl2.php.net/get/php-5.2.14- 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 ext do głównego katalogu instalacji 66
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 i Zabezpieczenia -> System - > Zaawansowane ustawienia Systemu -> Zmienne środowiskowe Warto dodać ścieżkę na początek zmiennej Niezbędny restart serwera IIS 68
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] 69
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ń) 70
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 71
Prosty test działania Test: <?php phpinfo();?> 72
Agenda Kim jesteśmy, co robimy? Wprowadzenie do tematu Zagrożenia Bezpieczeństwo platformy hostingowej Instalacjaacja testowa IIS + PHP Bezpieczeństwo PHP Zakończenie 73
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 74
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,... 75
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 76
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 77
AnalogXPHP Config 78
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 theprogrammerof of a web application, thedatabaseadministrator administrator and the system administrator to ensurethatsecurity isnot compromised at severallevels(james D. Keeline) 79
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 80
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 81
82
83
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 prostych (darmowych) skanerów kodu PHP działających w środowisku Windows 84
RIPS podstawoweinformacje Analizator koduphp (napisany w PHP) Wizualizacja zmiennych, powiązanych funkcjii warunków Filtrowanie wyników w (verbosity, type) Generator exploitów dla CURL http://sourceforge.net/projects/rips-scannerscanner
RIPS
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 87 Obrazuje przepływ potencjalnie złośliwych danych
Wykorzystanie Pixy Należy uruchomić plik run-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 88
Wyniki Pixy standardowe wyjście Oprócz podatności narzędzie potrafi znaleźć np. partie nieosiągalnego kodu 89
Wyniki Pixy graf przepływu danych 90
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 91
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 92
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 Ostatnie błędy w PHP: 2.2250738585072011e-308308 (01.11) http://www.securityfocus.com/bid/45668 Denial Of Service (09.10) http://www.securityfocus.com/bid/43926 93
Zbliżamy się do końca 94
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 serwera IIS 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 95
Więcejinformacji(wybraneźródła) Instalacja i uruchomienie aplikacjiphp na IIS: 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 96
Informacje kontaktowe Autorprezentacji marcin.jerzak@man.poznan.plman.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 97
Pytania i dyskusja Dziękuję za uwagę! 98