Jak efektywnie wykrywać podatności bezpieczeństwa w aplikacjach? OWASP 19.11.2014. The OWASP Foundation http://www.owasp.org



Podobne dokumenty
Fuzzing OWASP The OWASP Foundation Piotr Łaskawiec J2EE Developer/Pentester

Zapewnienie bezpieczeństwa w całym cyklu życia aplikacji (czyli dlaczego lepiej zapobiegać chorobom, niż leczyć je w zaawansowanym stadium)

Obsługa incydentów bezpieczeństwa: część I, z punktu widzenia menadżera. OWASP The OWASP Foundation

Bezpieczeństwo aplikacji Czy musi być aż tak źle? OWASP The OWASP Foundation

OWASP OWASP. The OWASP Foundation Cross-Site Scripting. Ryzyko do zaakceptowania? Warszawa, 27 stycznia 2011 Michał Kurek

Zagrożenia związane z udostępnianiem aplikacji w sieci Internet

Portal Security - ModSec Enterprise

OWASP OWASP. The OWASP Foundation Mariusz Burdach Prevenity

z testów penetracyjnych

Narzędzia OWASP dla developerów OWASP ESAPI & AppSensor OWASP The OWASP Foundation

OWASP Day - Spring of Code 2k7 OWASP The OWASP Foundation

Open(Source) Web Application Security Project

SQL z perspektywy hakera - czy Twoje dane są bezpieczne? Krzysztof Bińkowski MCT,CEI,CEH,ECSA,ECIH,CLFE,MCSA,MCSE..

Opis Przedmiotu Zamówienia na przeprowadzenie testów bezpieczeństwa systemu wspomagania nadzoru archiwalnego e-nadzór

JAK DOTRZYMAĆ KROKU HAKEROM. Tomasz Zawicki, Passus

Elektroniczny Case Report Form

Overlord - Plan testów

Web Application Firewall - potrzeba, rozwiązania, kryteria ewaluacji.

Architektura bezpiecznych aplikacji internetowych na platformie Java Enterprise Edition. Jakub Grabowski Warszawa,

Bezpieczeństwo danych w sieciach elektroenergetycznych

Grzegorz Ruciński. Warszawska Wyższa Szkoła Informatyki Promotor dr inż. Paweł Figat

Kurs ASP.NET ASP.NET CORE APLIKACJE WEBOWE

Usługa: Audyt kodu źródłowego

Interfejs do potwierdzania produkcji w SAP ze skanerem ELZAB

Projektowani Systemów Inf.

Testowanie oprogramowania

The OWASP Foundation Session Management. Sławomir Rozbicki.

Szczegółowy opis przedmiotu zamówienia:

QualitySpy moduł reports

Automatyczne testowanie infrastruktury pod kątem bezpieczeństwa. Leszek Miś IT Security Architect RHCA,RHCSS,Sec+ Linux Polska Sp. z o.o.

Testowanie aplikacji mobilnych na platformie Android - architektura, wzorce, praktyki i narzędzia

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

Testowanie oprogramowania. Piotr Ciskowski

Jak bezpieczne są Twoje dane w Internecie?

Zasady organizacji projektów informatycznych

Full Stack JavaScript z Angular i Nest. Dni: 5. Opis: Adresaci szkolenia

Całościowe podejście do testowania automatycznego dla programistów. (TDD, BDD, Spec. by Example, wzorce, narzędzia)

Wykrywanie i analiza złośliwych stron WWW. Łukasz Juszczyk CERT Polska/NASK lukasz.juszczyk@cert.pl

Program szkolenia: Symfony, nowoczesny framework PHP

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

System ZSIN wyzwanie dla systemów do prowadzenia EGiB

Bezpieczeństwo aplikacji WWW. Klasyfikacja zgodna ze standardem OWASP. Zarządzanie podatnościami

DOTYCZY KLIENTA PKO BIURO OBSŁUGI LEASING ZAPYTANIE O INFORMACJĘ OTYCZY: DOSTAWY PLATFORMY ELEKTRONICZNE DLA PKO

Sukces vs porażka. Sukces. Porażka

Bezpieczeństwo aplikacji webowych - standardy, przewodniki i narzędzia OWASP OWASP The OWASP Foundation

Automatyzacja testów aplikacji webowych w Selenium podstawy. Natalia Krawczyk

Przesłanki powstania książki... xvi Dla kogo przeznaczona jest ta książka?... xvi Co znajdziemy wewnątrz książki?... xvii

Projektowanie zabezpieczeń Centrów Danych oraz innych systemów informatycznych o podwyższonych wymaganiach bezpieczeństwa

Bezpieczeostwo aplikacyjne

INFORMATYKA Pytania ogólne na egzamin dyplomowy

Wybrane ataki na urządzenia sieciowe Secure Michał Sajdak, Securitum sekurak.pl

Budowa aplikacji ASP.NET z wykorzystaniem wzorca MVC

Sieci bezprzewodowe WiFi

Analiza i projektowanie aplikacji Java

PLAN WYNIKOWY PROGRAMOWANIE APLIKACJI INTERNETOWYCH. KL IV TI 6 godziny tygodniowo (6x15 tygodni =90 godzin ),

Narzędzia podnoszące jakość procesu wytwarzania i wdrażania

Sprzętowo wspomagane metody klasyfikacji danych

Piotr Bubacz Cloud Computing

Wybrane problemy bezpieczeństwa w urządzeniach sieciowych SEConference Michał Sajdak, Securitum sekurak.pl

Bezpieczeństwo aplikacji internetowych. Rozwój napędzany potrzebą WALLF Web Gateway. Leszek Miś, RHCA,RHCSS,Sec+ Linux Polska Sp. z o.o.

Aktualizacja do Microsoft SQL Server Adam Rynarzewski MCT

Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja II

Wstęp do testowania : Szymon Ramczykowski

Kontekst jest najważniejszy Application Security (WALLF-ng) Leszek Miś Head of IT Security Department Linux Polska Sp. z o.o.

Przewodnik użytkownika (instrukcja) AutoMagicTest

Bezpieczeństwo frameworków WEBowych Java na przykładzie ataku CSRF

Opis konfiguracji i wysyłki wniosków EKW w aplikacji Komornik SQL-VAT

Aplikacje webowe na celowniku. Leszek Miś IT Security Architect RHCA,RHCSS,Sec+ Linux Polska Sp. z o.o. 1

Szkolenie: Testowanie wydajności (Performance Testing)

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

ActiveXperts SMS Messaging Server

OFERTA DLA MIAST, GMIN, INSTYTUCJI FINANSOWYCH I PODMIOTÓW KOMERCYJNYCH DOTYCZĄCA ZAGADNIEŃ ZWIĄZANYCH Z CYBERBEZPIECZEŃSTWEM

Szkolenie autoryzowane. STORMSHIELD Network Security Administrator. Strona szkolenia Terminy szkolenia Rejestracja na szkolenie Promocje

Automatyzacja Testowania w WEB 2.0

Przygotowanie do nowoczesnego programowania po stronie przeglądarki. (HTML5, CSS3, JS, wzorce, architektura, narzędzia)

Agenda. Quo vadis, security? Artur Maj, Prevenity

Efektywne tworzenie aplikacji webowych z wykorzystaniem AngularJS, HTML5 i JavaScript

Tworzenie, zaciemnianie i analiza złośliwego kodu JavaScript. OWASP Czerwiec The OWASP Foundation

Projekt i implementacja filtra dzeń Pocket PC

Produkty. ESET Produkty

Architektura systemów webowych wysokiej przepustowości. na przykładzie Wikia

Currenda EPO Instrukcja Konfiguracji. Wersja dokumentu: 1.3

Automatyzacja testowania oprogramowania. Automatyzacja testowania oprogramowania 1/36

Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik

Tworzenie przypadków testowych

t e s t o w a n i e j e s t ł a t w e

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

Wykaz zmian w programie SysLoger

Opis komunikacji na potrzeby integracji z systemem klienta (12 kwiecień, 2007)

Przepełnienie bufora. SQL Injection Załączenie zewnętrznego kodu XSS. Nabycie uprawnień innego użytkownika/klienta/administratora

Rozkład materiału do nauczania informatyki w liceum ogólnokształcącym Wersja I

Aplikacje internetowe - opis przedmiotu

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

Technologia informacyjna (IT - Information Technology) dziedzina wiedzy obejmująca:

Instrukcja użytkownika systemu Komornik SQL-VAT

Produkty. MKS Produkty

Transkrypt:

Jak efektywnie wykrywać podatności bezpieczeństwa w aplikacjach? dr inż. Jakub Botwicz CISSP, ECSA, GWAPT 19.11.2014 jakub.botwicz@gmail.com Copyright The Foundation Permission is granted to copy, distribute and/or modify this document under the terms of the License. The Foundation http://www.owasp.org

Wykrywanie podatności bezpieczeństwa <y bezpieczeństwa (penetracyjne) 4White box vs. Grey box vs. Black box 4Aplikacji i/lub infrastruktury <Analiza dynamiczna aplikacji 4y interfejsów webowych lub webserwisowych 4Monitorowanie działania aplikacji <Analiza statyczna aplikacji 4Manualne przeglądy kodu lub binariów 4Analiza automatyczna kodu lub plików binarnych <Programy bug bounty

ANALIZA DYNAMICZNA 3

Skanery podatności aplikacji webowych Fazy działania: I. Rozpoznanie aplikacji (znalezienie dostępnych adresów URL i parametrów) II. Próby ataków (użycie np. fuzzingu) III. Weryfikacja wyników (sprawdzenie czy podatności rzeczywiście istnieją) IV. Zebranie wyników 4

Ograniczenia skanerów automatycznych <Niestandardowe sposoby komunikacji aplikacji Skanery nie rozumieją formatu wiadomości <Operacje inicjowane w sposób niestandardowy Skanery nie potrafią wywołać operacji <Walidacja danych Skanery nie rozumieją komunikatów o błędach <Formularze wielostopniowe Skanery nie potrafią dokończyć operacji <Zabezpieczenia przeciw automatom CAPTCHA, uwierzytelnienie SMS lub tokenem 5

y manualne vs. y automatyczne Czynniki wpływające na jakość wyników: 4Doświadczenie testera 4Czas dostępny na testy 4Zmęczenie testera aplikacją 4Jakość narzędzia 4Odpowiednia konfiguracja narzędzia 4Dopasowanie narzędzia do aplikacji Zalety: 4Lepsze zrozumienie aplikacji i logiki biznesowej 4Wykrywanie nietypowych podatności 4 Grupowanie podatności w scenariusze ataku 4Niższe koszty 4Krótszy czas testowania 4owanie poza godzinami pracy 4Powtarzalność wyników 4Możliwość częstego powtarzania

Połączenie testów automatycznych i manualnych Koniec etapu Koniec etapu Tworzenie aplikacji manualny Tworzenie aplikacji manualny automatyczny automatyczny automatyczny automatyczny automatyczny automatyczny automatyczny automatyczny Uzupełnienie bazy reguł 4y automatyczne wykonywać często i regularnie (regresja) 4y manualne wykonywać przy istotnych zmianach na podstawie ich wyników uaktualniać testy automatyczne

ANALIZA STATYCZNA 8

Techniki działania narzędzi automatycznych <Wyszukiwanie wzorców 4podejrzane funkcje Random, gets(), MD5, DES 4słowa kluczowe password <Analiza source to sink 4wejście interfejs webowy 4wyjście baza danych 4podatność SQL Injection inne podatności: XSS, większość Injection <Metryki 4Złożoności funkcji lub gęstości komentarzy 9

Analiza source to sink RIPS 4Source funkcje wprowadzające 4Sink funkcje wyprowadzające 4Path ścieżka przetwarzania 10

Analiza statyczna (Przegląd kodu lub binariów) vs. Analiza dynamiczna Łatwość analizy: (y penetracyjne) 4Sposobu przechowywania danych w bazie 4 Szyfrowania danych 4 Komunikacji z wewnętrznymi systemami 4Logowania zdarzeń 4Obsługi interfejsów wejściowych 4Logiki biznesowej aplikacji Problemy: 4Trudniej jest zweryfikować czy określony kod jest używany (więcej błędów false-positive) 4Trudniej jest zweryfikować istniejące ale nieskuteczne mechanizmy

Continous Inspection SonarQube 12

Programy bug bounty <Trudności z oszacowaniem kosztów programu 4Płacimy za rzeczywiste znalezione podatności 4Musimy obsłużyć wszystkie otrzymane zgłoszenia <W produkcyjnym systemie pojawiają się testerzy 4Jak odróżnić bug bountera od włamywacza? 4Poszukiwacze błędów generują dodatkowy ruch <Co będzie po znalezieniu poważnego błędu? 4Czy nie będzie prób szantażu? 13

Monitorowanie działania aplikacji <Analiza 4zdarzeń (logów) SIEM 4ruchu sieciowego IDS/IPS 4ruchu webowego WAF <Techniki 4Wykrywanie anomalii 4Analiza powłamaniowa 4Debuggowanie lub profilowanie aplikacji 14

y na poziomie infrastruktury <Konfiguracja serwerów SSL/TLS <Niezabezpieczone konsole administracyjne <Nieużywane moduły aplikacji <Niezabezpieczone usługi systemów operacyjnych 4FTP 4SMTP 15

Dziękuję za uwagę! Czy mają Państwo jakieś pytania? 16