Dlaczego (nie) warto przeprowadzać testów bezpieczeństwa? Konferencja IIA Polska – Iława, 11-13.04.2016 r. PROFESJONALNE TESTY OPROGRAMOWANIA #WHO I AM ERYK TRYBULSKI Dyrektor ds. bezpieczeństwa w Soflab Technology Audytor wiodący ISO/IEC 27001:2013 Biegły sądowy z dziedziny informatyki Ponad 20 lat doświadczenia w obszarze IT [email protected] PROFESJONALNE TESTY OPROGRAMOWANIA 2 SŁOWEM WSTĘPU CZY WARTO PRZEPROWADZAĆ TESTY BEZPIECZEŃSTWA? PROFESJONALNE TESTY OPROGRAMOWANIA 3 60 SEKUND… Źródło: „What Happens in an Internet Minute?”, http://scoop.intel.com/what-happens-in-an-internet-minute PROFESJONALNE TESTY OPROGRAMOWANIA 4 CIEMNA STRONA MOCY… Źródło: „Bezpieczeństwo w sieci: Hakerskie żniwa” , http://www.focus.pl/technika/bezpieczenstwo-w-sieci-hakerskie-zniwa-9731 PROFESJONALNE TESTY OPROGRAMOWANIA 5 Z ŻYCIA WZIĘTE... PROFESJONALNE TESTY OPROGRAMOWANIA 6 TREND ZAGROŻEŃ - 2016 Phishing/spear phishing/social engineering 65% Insider abuse 48% Inadvertent employee actions 47% Targeted attacks/advanced persistent threats 47% Zero-day malware/spayware 42% Denial-of-service attacks 34% Insecure mobile devices 33% Insecure third-party/supplier/partner applications and… 30% Insecure applications 29% Insecure processes 28% Hacktivism/hacktivist attacks 23% Randsomware/cyber extortion 23% IP/trade secret theft 21% Watering hole attacks/drive-by downloads 14% Government spying/surveillance 11% 0% 10% 20% 30% 40% 50% 60% 70% Źródło: 2016 Cybersecurity Tend Report, UBM Tech PROFESJONALNE TESTY OPROGRAMOWANIA 7 TREND UJAWNIANIA NARUSZEŃ Źródło: 2015 Data Breach Investigations Report, Verizon PROFESJONALNE TESTY OPROGRAMOWANIA 8 PRZESŁANKI MUSZĘ CHCĘ Prawne i wewnętrzne Wdrożenie nowego systemu Incydent bezpieczeństwa Certyfikacja Połączenie firm Bilans otwarcia PROFESJONALNE TESTY OPROGRAMOWANIA 10 W CZYM WIĘC TKWI SEDNO… PONIEWAŻ PYTANIE NIE BRZMI: „DLACZEGO” PYTANIE BRZMI: „JAK” PRZEPROWADZAĆ TESTY BEZPIECZEŃSTWA? PROFESJONALNE TESTY OPROGRAMOWANIA 11 CEL TESTÓW BEZPIECZEŃSTWA UJĘCIE BIZNESOWE uniknięcie strat finansowych są efektywnym i elastycznym kosztowo sposobem zwiększania bezpieczeństwa służą ochronie marki i reputacji firmy zapewniają właściwe przestrzeganie zasad bezpieczeństwa przez pracowników zapewniają zgodność z aspektami prawnymi związanymi z wymogami zachowania bezpieczeństwa informacji UJĘCIE TECHNOLOGICZNE wskazują rzeczywisty stan zabezpieczeń organizacji Umożliwiają zasymulowanie rzeczywistego włamania i oceny jego konsekwencji Pozwalają wdrożyć nowe lub usprawnić dotychczasowe rozwiązania bezpieczeństwa PROFESJONALNE TESTY OPROGRAMOWANIA 12 PROBLEMATYCZNE DEFINICJE AUDYT AUDYT BEZPIECZEŃSTWA TEST BEZPIECZEŃSTWA systematyczny, niezależny i udokumentowany proces uzyskiwania dowodu z audytu oraz jego obiektywnej oceny w celu określenia stopnia spełnienia kryteriów audytu (ISO/IEC 27000) niezależny przegląd i ocena działania systemu w celu przetestowania adekwatności środków nadzoru systemu, upewnienia się, czy system działa zgodnie z ustaloną polityką bezpieczeństwa i z procedurami operacyjnymi oraz w celu wykrycia przełamań bezpieczeństwa i zalecenia wskazanych zmian w środkach nadzorowania, polityce bezpieczeństwach oraz w procedurach (PN-I-02000:2002) kontrolowany atak na system informatyczny, mający na celu praktyczną ocenę bieżącego stanu bezpieczeństwa tego systemu, w szczególności obecności znanych podatności i odporności na próby przełamania zabezpieczeń. PROFESJONALNE TESTY OPROGRAMOWANIA 13 TYPY TESTÓW BEZPIECZEŃSTWA SKANOWANIE PODATNOŚCI Skanowanie systemu w celu identyfikacji podatnych sygnatur oraz luk SAST Celem statycznej analizy kodu źródłowego (ang. Static Application Security Testing) jest wyszukiwanie nieefektywnych konstrukcji oraz fragmentów kodu, które noszą znamiona błędów bezpieczeństwa TESTY PENETRACYJNE SOCJOTECHNIKA Kontrolowany atak na system informatyczny, mający na celu praktyczną ocenę bieżącego stanu bezpieczeństwa tego systemu, w szczególności obecności znanych podatności i odporności na próby przełamania zabezpieczeń Badanie odporności najważniejszego, a zarazem najsłabszego ogniwa w systemie bezpieczeństwa przy użyciu technik inżynierii społecznej TESTY DoS/DDoS Symulacja obciążenia możliwie zbliżonego do ruchu produkcyjnego, umożliwia lokalizację wąskich gardeł w systemie PROFESJONALNE TESTY OPROGRAMOWANIA 14 RODZAJE TESTÓW BEZPIECZEŃSTWA BLACK BOX Pentester nie posiada żadnych szczegółowych informacji na temat badanego obiektu. Ten rodzaj weryfikacji jest stosowany do symulacji zewnętrznego ataku, bez posiadania wiedzy wewnętrznej. WHITE BOX Pentester posiada kompleksowe informacje na temat badanego obiektu. Obejmują one dane dostępowe, dokumentację analityczną, kod źródłowy oraz wszelkie inne informacje, które pomogą uzyskać pełny obraz badanego systemu. GREY BOX Typ testu zawierający się pomiędzy Black a White box. W tym przypadku pentester może otrzymać okrojone informacje o badanym obiekcie, np. na poziomie wiedzy zwykłego użytkownika. PROFESJONALNE TESTY OPROGRAMOWANIA 15 KIEDY PRZEPROWADZAĆ TESTY? DEFINIOWANIE Przypadki użycia Wymagania bezpieczeństwa PROJEKTOWANIE Modelowanie zagrożeń Planowanie testów ROZWÓJ Analiza statyczna kodu źródłowego WDROŻENIE Testy penetracyjne Skanowanie podatności UTRZYMANIE Testy penetracyjne Skanowanie podatności Szacowanie aktywów i zagrożeń PROFESJONALNE TESTY OPROGRAMOWANIA 16 PLANOWANIE TESTÓW DEV/UAT PREPROD PRODUKCJA PROFESJONALNE TESTY OPROGRAMOWANIA 17 CZAS TRWANIA TESTU „Czas to pieniądz… pieniądz jest czasem… a czasem go nie ma.” CZYNNIKI WYCENY Ilość stron/modułów/funkcji Ilość parametrów we/wy Badanie ograniczonej próbki PROFESJONALNE TESTY OPROGRAMOWANIA 18 CZŁOWIEK CZY SKANER? SKANERY AUTOMATYCZNE Masowe, cykliczne skany podobnych zasobów Czasowa przewaga w testach rozbudowanych aplikacji Możliwość pominięcia nietypowych zasobów Niska skuteczność wobec aplikacji Możliwość pominięcia oczywistych choć nietypowych podatności Niska skuteczność w testowaniu logiki biznesowej PROFESJONALNE TESTY OPROGRAMOWANIA 19 WYBÓR DOSTAWCY USŁUG POZACENOWE KRYTERIA WYBORU Wysoka jakość usług Solidna reputacja (referencje) Portfolio usług Kompetencje zespołu Wdrożone standardy bezpieczeństwa i zarządzania ryzykiem we własnej organizacji Stosowane metodyki Legalność wykorzystywanego oprogramowania STABILNY ZESPÓŁ != LUDZIE Z ŁAPANKI (CROWD TESTING) PROFESJONALNE TESTY OPROGRAMOWANIA 20 RAPORT Z TESTÓW BEZPIECZEŃSTWA Czy kiedykolwiek byli Państwo ofiarą/Klientem* usługi testów bezpieczeństwa? * Niepotrzebne skreślić Czy objętość raportu była podobna do przedstawionego obok? Czy na podstawie przedstawionego raportu można było odtworzyć kroki testowe? PROFESJONALNE TESTY OPROGRAMOWANIA 21 CO POWIE… RAPORT? Czy środki bezpieczeństwa zostały odpowiednio dobrane? Czy wdrożone mechanizmy zostały prawidłowo skonfigurowane? Czy chroniony zasób nie posiada w sobie luk umożliwiających atak? PROFESJONALNE TESTY OPROGRAMOWANIA 22 CEL RAPORTU AUTENTYFIKACJA AUTORYZACJA DOSTĘPNOŚĆ Sprawdzenie prawidłowego funkcjonowania mechanizmu weryfikacji cyfrowej tożsamości użytkownika, systemu bądź procesu Weryfikacja mechanizmu zarządzania prawami dostępu do określonych treści bądź funkcji systemu wyłącznie uprawnionym użytkownikom Sprawdzenie dostępności zasobów i funkcji systemu na każde żądanie uprawnionego użytkownika POUFNOŚĆ INTEGRALNOŚĆ NIEZAPRZECZALNOŚĆ Weryfikacja czy zasoby systemu dostępne są wyłącznie uprawnionym użytkownikom Sprawdzenie czy system dostarcza kompletną i nienaruszalną informację Weryfikacja czy wymiana informacji następuje wyłącznie między autentycznymi procesami i użytkownikami PROFESJONALNE TESTY OPROGRAMOWANIA 23 W CZYM PROBLEM… 7 GRZECHÓW TESTÓW BEZPIECZEŃSTWA PROFESJONALNE TESTY OPROGRAMOWANIA 24 7 GRZECHÓW… PYCHA „Mamy świetne zabezpieczenia i kto by chciał nas zaatakować” BRAK DOJRZAŁOŚCI ORGANIZACJI NIEOMYLNOŚĆ LUDZKA RAPORT „AD ACTA” PROFESJONALNE TESTY OPROGRAMOWANIA 25 7 GRZECHÓW… CHCIWOŚĆ „Testy bezpieczeństwa to zbędne koszty… Zróbmy to jak najtaniej” CENA CZY JAKOŚĆ… CZY JAKOŚ(Ć) TO BĘDZIE CZAS TO PIENIĄDZ… NIEDOSZACOWANIE WYDATKÓW PROFESJONALNE TESTY OPROGRAMOWANIA 26 Z ŻYCIA WZIĘTE… Usługa: Przeprowadzenie audytu bezpieczeństwa systemu FIRMA KWOTA BRUTTO (PLN) A ~ 40 500,00 B ~ 55 000,00 C ~ 77 500,00 D ~ 80 000,00 E ~ 105 000,00 F ~ 190 000,00 G ~ 230 000,00 I ~ 825 000,00 BUDŻET ZAMAWIAJĄCEGO: 250 000,00 PLN PROFESJONALNE TESTY OPROGRAMOWANIA 27 7 GRZECHÓW… NIECZYSTOŚĆ "Wreszcie nauczyłem się czym jest 'zgodność w górę'. Oznacza to, żeby utrzymywać wszystkie stare błędy." BRAK STRATEGII ROZMYCIE ODPOWIEDZIALNOŚCI … A JA CI POKAŻĘ… PROFESJONALNE TESTY OPROGRAMOWANIA 28 7 GRZECHÓW… ZAZDROŚĆ „Są dwa rodzaje użytkowników komputerów – ci, którzy robią backup’y i ci, którzy będą je robić.” KNOW HOW MODA NA „NOWINKI” PROFESJONALNE TESTY OPROGRAMOWANIA 29 7 GRZECHÓW… NIEUMIARKOWANIE „Ludzie uważają, że bezpieczeństwo to rzeczownik, coś co możesz pójść kupić. W rzeczywistości jest to abstrakcyjna koncepcja jak szczęście.” James Gosling (twórca języka Java) NA WCZORAJ… GWIAZDKA Z NIEBA PROFESJONALNE TESTY OPROGRAMOWANIA 30 7 GRZECHÓW… GNIEW „Testy bezpieczeństwa? Nasz dział IT przeprowadzi je sam” PRZETESTUJMY TO SAMI PIES OGRODNIKA PROFESJONALNE TESTY OPROGRAMOWANIA 31 7 GRZECHÓW… LENISTWO „Wybawi się od niebezpieczeństwa jedynie ten, kto czuwa także gdy czuje się bezpieczny” Publiusz Siro GOOGLE CTRL+C / CTRL+V DROGA NA SKRÓTY NIE WARTO… PROFESJONALNE TESTY OPROGRAMOWANIA 32 JAK ZACZĄĆ? OKREŚL POTRZEBY Zdefiniuj cel Zakres i typ testu (uwzględnij retesty) Ustal kryteria wyboru oferty Oszacuj budżet i harmonogram prac REALIZACJA Podpisz umowę Potwierdź gotowość do testu Ustal zasady realizacji Zleć wykonanie prac POPRAWA BEZPIECZEŃSTWA Zapoznaj się z raportem Wdróż działania korygujące Przeprowadź retest PROFESJONALNE TESTY OPROGRAMOWANIA 33 PODSUMOWANIE PROFESJONALNE TESTY OPROGRAMOWANIA 34 CO DALEJ? Czy Twój Biznes jest bezpieczny? „Tam gdzie rodzą się wątpliwości, nie ma bezpieczeństwa.” ROZWIĄZANIE? Przeprowadzanie cyklicznych audytów i testów bezpieczeństwa PROFESJONALNE TESTY OPROGRAMOWANIA 35 Soflab Technology PROFIL FIRMY Dostawca usług Quality Assurance sektora ICT Zespół Soflab to ponad 200 osób Ponad 2000 projektów w wielu krajach Autorska metodyka Soflab TESt Approach Centrum Testów Oprogramowania (CTO) w Warszawie NAJWIĘKSZY I NAJBARDZIEJ DOŚWIADCZONY DOSTAWCA NIEZALEŻNYCH TESTÓW SYSTEMÓW IT w POLSCE WYSOKA JAKOŚĆ NASZYCH USŁUG została potwierdzona przez brytyjski Test Magazine przez umieszczenie Soflab na liście 20 światowych liderów testowania PROFESJONALNE TESTY OPROGRAMOWANIA 36 Soflab Technology OFEROWANE USŁUGI Testy biznesowe systemów Testy aplikacji mobilnych Testy wydajnościowe Testy bezpieczeństwa Testy techniczne Narzędzia, dane i środowiska testów Audyt, doradztwo, zarządzanie jakością Zarządzanie projektami Szkolenia Usługi QA „tailor made" Budowa hurtowni danych Architektura baz danch Budowa systemów klasy BI Portale i aplikacje internetowe Tworzenie aplikacji reaktywnych Intranet - systemy komunikacji wew. Systemy BPMS Platformy e-Learning Systemy aukcji elektronicznych Aplikacje dedykowane Usługi zdalne Usługi cykliczne Wynajem zespołów Kompleksowy outsourcing Realizacja projektu PROFESJONALNE TESTY OPROGRAMOWANIA 37 Soflab Technology TESTOWANIE OPROGRAMOWANIA Testy biznesowe systemów Testy aplikacji mobilnych Testy wydajnościowe ▪ Testy odbioru ▪ ▪ ▪ Testy systemów zarządzania przedsiębiorstwem (SAP, Oracle EBS) Testy użyteczności oparte o standard AQuA Generowanie wysokiego obciążenia (1M+ VU) ▪ Wieloplatformowe testy automatyczne ▪ Definiowanie profili ruchu ▪ Badanie wydajności we wdrożeniach agile (SCRUM, SAFe) ▪ Testy systemów sprzedaży i rozliczania ▪ Testy ciągłości biznesowej ▪ Walidacja procesów biznesowych ▪ ▪ Testy bezpieczeństwa ▪ Testy wydajnościowe z emulowaniem parametrów sieci ▪ Testy funkcjonalne ciągłości biznesowej ▪ Weryfikacja użyteczności ▪ Testy regresji procesów biznesowych ▪ Testy integracji aplikacji mobilnych z systemami korporacyjnymi Testy z użyciem własnego laboratorium urządzeń mobilnych ▪ ▪ Monitoring elementów infrastruktury systemów Weryfikacja skalowalności systemów Testy bezpieczeństwa Testy techniczne ▪ Testy penetracyjne aplikacji ▪ Testy systemowe ▪ Audyt konfiguracji systemów i usług ▪ Testy integracyjne ▪ Automatyzacja testów ▪ Monitoring i analiza ruchu sieciowego ▪ Migracja danych ▪ Testy bezpieczeństwa infrastruktury sieciowej ▪ Testy automatyczne środowiska BI ▪ Testy odporności na ataki DoS/DDoS ▪ Testy systemów wbudowanych (embedded) ▪ Testy disaster recovery ▪ Monitoring procesów biznesowych (APM) PROFESJONALNE TESTY OPROGRAMOWANIA 38 Soflab Technology USŁUGI WSPIERAJĄCE Narzędzia, dane i środowiska testów ▪ ▪ ▪ ▪ ▪ Audyt, doradztwo, zarządzanie jakością Wdrażanie narzędzi wspierania ▪ testów (HP ALM/QC, JIRA i inne) ▪ Continuous Integration ▪ Zarządzanie danymi testowymi ▪ Zarządzanie środowiskami testowymi ▪ Raportowanie testów ▪ Zarządzanie projektami Przegląd, usprawnianie ▪ i wdrażanie procesu testowego ▪ Organizacja i nadzór testów Zarządzanie testami Zarządzanie problemami testowymi Audyt bezpieczeństwa systemów informatycznych Weryfikacja gotowości operacyjnej Zwinne zarządzanie projektami ▪ Zarządzanie dostawą oprogramowania (Delivery Management) ▪ Zarządzanie projektami w tradycyjnym podejściu ▪ Biuro zarządzania projektami (PMO) Usługi QA „tailor made" Szkolenia ▪ ▪ ▪ ▪ Realizacja testów w Agile / Scrum Testy i usługi QA dostosowane do specyficznych potrzeb Klienta ▪ Szkolenia Scaled Agile Framework (Leading SAFe, SAFe Scrum XP for Teams) Testowanie rozwiązań embedded, w tym także elementów mechanicznych ▪ Realizacja badań z użytkownikami końcowymi „w terenie” ▪ Audyty Bezpieczeństwa Czynnika Ludzkiego (socjotechnika) ISTQB Foundation – akredytowanie szkolenie Wybór narzędzi automatyzacji PROFESJONALNE TESTY OPROGRAMOWANIA 39 Soflab Technology MODELE WSPÓŁPRACY Kompleksowy outsourcing testów Realizacja projektu Usługi zdalne Usługi cykliczne Wynajem zespołów Zobowiązanie do dostarczenia rezultatów Zapewnianie jakości przez cały proces Elastyczny zespół profesjonalistów w optymalnej cenie Rozwiązania najwyższej jakości świadczone regularnie Właściwi ludzie, na właściwym miejscu, we właściwym czasie ▪ Pełna odpowiedzialność za jakość rozwiązań ▪ ▪ Optymalizacja kosztowa i czasowa ▪ Stałe monitorowanie poziomu jakości ▪ Uzupełnienie zespołów w wymaganym czasie ▪ Usługi oparte o wynik zgodnie z SLA Odpowiedzialność za osiągnięcie celów jakościowych projektu ▪ Dynamiczny i elastyczny personel ▪ Koordynacja dostarczania produktów projektu Elastyczne dostosowanie czasu realizacji prac do potrzeb Klienta ▪ ▪ ▪ Zapewnienie stałej dostępności, bezpieczeństwa, wydajności rozwiązania ▪ Umowa oparta na czasie i zakresie projektu Bezpieczeństwo informacji oparte o ISO27001 ▪ ▪ Szybki dostęp do brakujących kompetencji ▪ Sprawdzone praktyki rynkowe ▪ Zapewnienie środowiska narzędziowego ▪ Stałe doskonalenie świadczonych usług Łatwe planowanie budżetu po stronie Klienta PROFESJONALNE TESTY OPROGRAMOWANIA 40 Soflab Technology METODYKI POSŁUGUJEMY SIĘ autorską metodyką testów Soflab TESt Approach zgodną z normami ISO/IEC/IEEE 29119 oraz ISTQB PRACUJEMY W PODEJŚCIU • • zwinnym (agile) klasycznym (waterfall) PROFESJONALNE TESTY OPROGRAMOWANIA 41 Soflab Technology NARZĘDZIA Nasi Partnerzy WYKORZYSTUJEMY ponad 50 narzędzi do zarządzania i realizacji testów WSPIERAMY procesy rozwoju i utrzymania produktów oraz systemów PROFESJONALNE TESTY OPROGRAMOWANIA 42 Soflab Technology ZESPÓŁ I KOMPETENCJE METODYKA, PROCES, PROCEDURY DOKUMENTY, RAPORTY SPECJALIŚCI, ZESPOŁY, WIEDZA I DOŚWIADCZENIE Test Manager – tworzy Strategię i Plan, organizuje i zarządza Analityk Testów – analizuje Zakres, przygotowuje testy Tester – wykonuje i dokumentuje Testy, obsługuje defekty Inżynier Automatyzacji – organizuje, tworzy i uruchamia Automaty Ponad 200 certyfikatów - ISTQB, CISA, CISSP, CEH, LA 27001, Prince2, Agile PM, Professional Scrum Master, SAFe Practitioner, SAFe Agilist, ITIL, REQB oraz związanych z SQL, UML, GAMP i inne. Unikalne doświadczenie w dużych i złożonych projektach informatycznych realizowanych dla renomowanych polskich oraz międzynarodowych Klientów. PROFESJONALNE TESTY OPROGRAMOWANIA 43 Soflab Technology ZARZĄDZANIE BEZPIECZEŃSTWEM INFORMACJI Testowanie aplikacji Zarządzanie testami Testowanie systemów Integracja systemów Testowanie bezpieczeństwa Zarządzanie jakością w projektach IT Działamy zgodnie z certyfikowanym Systemem Zarządzania Bezpieczeństwem Informacji ISO/IEC 27001:2013 PROFESJONALNE TESTY OPROGRAMOWANIA 44 Soflab Technology ZAUFALI NAM TELEKOMUNIKACJA I MEDIA BANKOWOŚĆ TRANSPORT I LOGISTYKA ENERGETYKA UBEZPIECZENIA SEKTOR PUBLICZNY OCHRONA ZDROWIA INNE PROFESJONALNE TESTY OPROGRAMOWANIA 45 Soflab Technology DLACZEGO SOFLAB? Największy wyspecjalizowany dostawca testów ICT i usług QA w Polsce Ponad 2000 zrealizowanych projektów Zna specyfikę branżową różnych sektorów rynkowych Wykorzystuje ponad 50 narzędzi różnych producentów Oferuje elastyczne modele dostarczania usług PROFESJONALNE TESTY OPROGRAMOWANIA 46 SOFLAB TECHNOLOGY Sp. z o.o. ul. Ligocka 103 40-568 Katowice Tel: Fax: Biuro Sprzedaży: ul. Złota 59 00-120 Warszawa +48 22 211 26 02 +48 22 211 26 03 www.soflab.pl Dziękuję za uwagę! [email protected] PROFESJONALNE TESTY OPROGRAMOWANIA