Testy bezpieczeństwa nowoczesnych aplikacji internetowych

Czas trwania szkolenia:3 dni (24h)

Kod kursu:SEC/WEB

Poziom zaawansowania:

owasp

Szkolenie na zamówienie

Szkolenie dostosowane do potrzeb Twojego zespołu.
Dostępne wyłącznie na zamówienie

  • Dostosowany program
  • Indywidualna wycena
  • Dowolny termin
Icon with laptop

O szkoleniu Testy bezpieczeństwa nowoczesnych aplikacji internetowych

W cenie otrzymasz:

  • Materiały szkoleniowe
  • Certyfikat ukończenia szkolenia
  • W przypadku szkolenia w trybie stacjonarnym zapewnimy Ci również lunch oraz sprzęt niezbędny do nauki

Dla kogo?

  • Szkolenie jest kierowane do testerów, programistów, administratorów aplikacji, audytorów oraz fascynatów bezpieczeństwa pragnących zdobyć całościową wiedzę z zakresu prowadzenia testów penetracyjnych oraz wykorzystania jej do weryfikacji bezpieczeństwa złożonych systemów informatycznych

Wymagania

  • Od uczestników wymagane jest doświadczenie w pracy z aplikacjami internetowymi - najlepiej jako programista lub wdrożeniowiec albo doświadczenie z dziedziny bezpieczeństwa takich rozwiązań
  • Znajomość podstaw Java oraz .NET a także podstaw administracji w systemach Windows i Linux pozwoli bezboleśnie przejść przez wszystkie laboratoria

Zalety

  • Mocną stroną szkolenia są przykłady dla aplikacji .NET (stack Microsoft) i Java (stack Oracle i open source) - z dziedziny bankowości oraz aplikacje mobilne Android i iOS
  • Uczestnicy wykonują zadania związane z projektem testów penetracyjnych na laboratorium w formie zwirtualizowanego środowiska symulującego typowej problemy złożonej infrastruktury
  • Praktyka przed teorią - wszystkie szkolenia technologiczne prowadzone są w formie warsztatowej. Konieczna teoria jest wyjaśniana na przykładzie praktycznych zadań
  • Nauka z praktykami - wszyscy trenerzy na co dzień pracują w projektach, gwarantuje to dostęp do eksperckiej wiedzy i praktycznego know-how

Cele szkolenia

  • Przekazanie wiedzy, która uczyni z uczestnika nie tylko weryfikatora bezpieczeństwa na podstawie baz wiedzy i gotowych exploitów ale da podstawy do zostania researcherem bezpieczeństwa zdolnym do pracy z nieznanymi aplikacjami i protokołami oraz wyszukiwania nowych podatności w nich

Program

Rodzaje testów penetracyjnych

  • Różnica między testem penetracyjnym a audytem
  • Metodyki prowadzenia testów penetracyjnych
  • Typy testów: whitebox, blackbox, greybox
  • Fazy testów penetracyjnych
  • Szacowanie zagrożeń, modelowanie zagrożeń i drzewa ataku
  • Zakres testu
  • Projekty R&D
  • Checklisty w testach penetracyjnych, standardy kodowania: CIS, CERT

Rodzaje podatności, typy podatności według różnych klasyfikacji

  • Klasyfikacja podatności według OWASP i CWE
  • Co to jest CVE? - otwarte i zamknięte bazy podatności

Narzędzia do analizy sieci i fazy rozpoznania, zbierania informacji o celu ataku

  • Sniffery
  • Narzędzia aktywne
  • Narzędzia pasywne
  • Weryfikacja konfiguracji
  • Wykorzystanie: Foca, MassDNS, subfinder, dirsearch, dirb
  • Google dorks
  • Shodan
  • Użycie baz FuzzDB i Directory List

Ataki na aplikacje webowe

  • SQL Injection
  • Różne ataki typu Injection (XPath, XML, Command, Script, LDAP)
  • Deserializacja w Javie
  • Wstrzykiwanie kodu przez JSON w usługach REST
  • Mass assignment
  • Ataki na usługi REST JAX-RS
  • XSS
  • CSRF
  • Bezpośredni dostęp do danych i obiektów (IDOR)
  • Path Traversal
  • XXE
  • Spring EL Injection, ataki na Spring Framework
  • Command Injection (Shellshock)
  • Zarządzanie sesją
  • Typowe problemy z rejestracją użytkowników i odzyskiwaniem hasła
  • Podatności w JWT

Narzędzia do testów manualnych typu proxy

  • Wykorzystanie Burp Suite, OWASP ZAP

Automatyczne skanery bezpieczeństwa

  • Wykorzystanie Nessus, Nexpose, Burp Suite Scan, Skipfish, Arachni, OpenVAS
  • Narzędzia zapewniające bezpieczeństwo w trakcie developmentu: OWASP Dependency Check, Retire.js, Find-Sec-Bugs, PMD

Zbiory exploitów

  • Wykorzystanie Metasploit

Skrypty i automatyzacja testów bezpieczeństwa

  • Wykorzystanie ZAP i Mozilla ZEST
  • Integracja OWASP ZAP z Jenkins
  • Wykrywanie dziurawych komponentów z OWASP Dependency Check w CI

Testowanie WebServices

  • XXE
  • SOAP
  • XSLT
  • BPEL

Kryptografia

  • Weryfikacja poprawnej konfiguracji SSL
  • Man-in-the-middle
  • Słabości w implementacji kryptografii

Ataki DoS i DDoS

  • Ataki na logikę aplikacji: ReDOS, XML Bomb, Flood

Cloud

  • Specyficzne zagadnienia dla cloud: AWS
  • Wykorzystanie cloud w testach: DoS, DDoS

Zarządzanie informacją w trakcie testu penetracyjnego

  • Budowanie bazy wiedzy i bazy ataków
  • Dradis Framework, Faraday IDE, Magic Tree

Tworzenie raportu

  • Co powinien zawierać dobry raport z testów penetracyjnych?
  • Jak formułować zalecenia i obejścia?
  • Jak bezpiecznie dostarczyć raport do klienta?
  • Jak opisać podatność i uzyskać CVE?

Planowanie i zarządzanie projektem testów penetracyjnych

  • Formalności w pracy z klientem
  • Zarządzanie zakresem

Wizerunek pentestera

  • Networking
  • Wizytówka

Podobne szkolenia