Szkolenie: Bezpieczeństwo aplikacji webowych

APPSEC-WEB

Współczesne metody ataku i ochrony aplikacji WWW i API

Dostępne na zamówienie dla grup.

Warszawa
  • 07.12 - 08.12 dzienny (zajęcia w dni powszednie)
Zdalnie
  • 07.12 - 08.12 dzienny (zajęcia w dni powszednie)
Żaden termin nie pasuje? Zaproponuj własny termin szkolenia

Tryb zdalny: online na żywo z trenerem i grupą. Zobacz więcej o kursach zdalnych i zakł. "Terminy".
Można: zrezygnować do 15 dni przed startem; w każdej chwili przejść z trybu "na sali" na zdalny.
Dostępne również na zamówienie, w terminie i lokalizacji do uzgodnienia , dla grup od 5 osób .

cena netto
dla podmiotów publicznych - zwolnione z VAT

Cena szkolenia: 1990 PLN

poczęstunek w cenie

stanowisko komputerowe w cenie

Kategoria: Bezpieczeństwo systemów IT. Metody ataku i obrony

O szkoleniu

Programiści, testerzy, administratorzy, architekci, osoby odpowiadające za bezpieczeństwo i ci, którzy odbierają aplikacje od zewnętrznych wykonawców — to szkolenie jest dla wszystkich mających w pracy do czynienia z aplikacjami webowymi i chcących je zobaczyć z obu stron: z tej, z której patrzą atakujący, i z tej, z której się te aplikacje zabezpiecza. Przez dwa dni pracujemy na przygotowanych podatnych systemach; uczestnicy sami wyszukują błędy, potwierdzają je, a następnie omawiamy, co należało zrobić inaczej w kodzie albo w konfiguracji.

Po tych dwóch dniach:

  • Zobaczysz swoją aplikację tak, jak widzi ją ktoś, kto szuka do niej “wejścia” — od czego zaczyna, czego szuka najpierw, które miejsca sprawdza, zanim w ogóle zajrzy do formularza logowania.
  • Poznasz kilkanaście narzędzi używanych w testach bezpieczeństwa, takich jak Burp Suite czy OWASP ZAP — proxy przechwytujące, skanery, narzędzia do automatyzacji wstrzyknięć — i dowiesz się, kiedy które z nich ma sens, a kiedy tylko generuje szum.
  • Samodzielnie przeprowadzisz ataki: wstrzyknięcie SQL, XSS, przejęcie sesji, wykorzystanie błędu kontroli dostępu — na przygotowanych aplikacjach, na których wolno to robić.
  • Do każdej podatności zobaczysz konkretną poprawkę: zmianę w kodzie albo w konfiguracji (a nie np. ogólną radę „waliduj dane wejściowe”).
  • Przejdziesz pełny test aplikacji od początku do końca — od rozpoznania, przez znalezienie i potwierdzenie kilku niezależnych błędów, po raport, z którego zespół rozwojowy wie, co poprawić. Przy okazji nauczysz się czytać raporty, które dostajesz od firm zewnętrznych.

Zakres obejmuje klasyczne klasy podatności aplikacji webowych — wstrzyknięcia, XSS, CSRF, błędy zarządzania sesją, path traversal, problemy z uploadem plików — oraz obszary, które w ostatnich latach stały się głównym źródłem incydentów: bezpieczeństwo API, kontrola dostępu i IDOR, SSRF, tokeny JWT. Do tego, omawiamy takie tematy, jak deserializacja danych wejściowych, konfiguracja nagłówków i polityki CSP. Osobno zwracamy uwagę na to, że aplikacje wystawione do internetu są dziś skanowane masowo i automatycznie — oraz na to, jak tych samych narzędzi użyć do przeglądu własnego serwisu, zanim zrobi to ktoś inny.

Każdy blok ma podobną strukturę: krótkie wprowadzenie, demonstracja ataku, samodzielne ćwiczenie uczestników, omówienie zabezpieczenia. Nie omawiamy ataku bez pokazania obrony. Szkolenie zamyka samodzielny test bezpieczeństwa aplikacji, w którym trzeba wykryć kilka niezależnych podatności, ocenić ich ryzyko i opisać je tak, żeby zespół rozwojowy wiedział, co poprawić. Pracujemy na narzędziach, których używa się w tej pracy naprawdę: Burp Suite jako podstawowe proxy i warsztat pracy, OWASP ZAP i Caido przy skanowaniu i automatyzacji, sqlmap przy wstrzyknięciach SQL, do tego narzędzia deweloperskie przeglądarki i narzędzia do enumeracji zasobów. Punktem odniesienia dla zakresu są OWASP Top 10, OWASP ASVS i OWASP Web Security Testing Guide.

Szkolenie różni się od kursów pentesterskich tym, że punktem odniesienia jest praca programisty i testera, a nie zawód pentestera. Celem nie jest wykonanie efektownego ataku, tylko umiejętność znalezienia błędu we własnej aplikacji, potwierdzenia go i naprawienia.

Czas trwania

2 dni, 9:00 - 17:00

Program

  1. Wprowadzenie do testowania bezpieczeństwa aplikacji webowych
    • Architektury i technologie aplikacji webowych, a klasy podatności: aplikacje serwerowe, SPA, aplikacje mobilne korzystające z API
    • Styk aplikacji z bazą danych, usługami zewnętrznymi i systemami wewnętrznymi
    • Zagrożenia po stronie serwera, przeglądarki, integracji i konfiguracji środowiska
    • OWASP Top 10, ASVS i Testing Guide — zastosowanie każdego z dokumentów
    • Raport z testów penetracyjnych: struktura, klasyfikacja znalezisk, sposób czytania
    • Klasy narzędzi w pracy testera: proxy przechwytujące, klienty HTTP, narzędzia deweloperskie przeglądarki. Burp Suite, OWASP ZAP i narzędzia pokrewne.
  2. Rozpoznanie aplikacji i praca z ruchem HTTP
    • Mapowanie aplikacji i wyszukiwanie zasobów nieujętych w nawigacji
    • Środowiska deweloperskie i testowe wystawione do internetu
    • Rozpoznanie wersji komponentów, informacje wyciekające przez komunikaty błędów
    • Masowe, automatyczne skanowanie aplikacji wystawionych do internetu — skala zjawiska i konsekwencje
    • “Google hacking”, wyszukiwarki i publiczne bazy zasobów jako źródło informacji o infrastrukturze
    • Przechwytywanie i modyfikowanie żądań w Burp Suite: parametry, nagłówki, pola ukryte
    • Walidacja po stronie klienta i dlaczego nie jest zabezpieczeniem
    • Techniki brute force i enumeracji zasobów (ffuf lub narzędzie analogiczne)
  3. Wstrzyknięcia po stronie serwera
    • SQL injection klasyczne i ślepe: wykrywanie, potwierdzenie, pobranie danych
    • Automatyzacja wstrzyknięć narzędziem sqlmap — możliwości, ograniczenia, weryfikacja wyników
    • Techniki omijania filtrów danych wejściowych
    • Ochrona: zapytania parametryzowane, warstwa ORM, uprawnienia konta bazodanowego
    • Wstrzykiwanie komend systemowych i kodu do aplikacji
    • Path traversal i dostęp do plików spoza katalogu aplikacji
    • Bezpieczny upload plików i błędy walidacji opartej o rozszerzenie
  4. Przetwarzanie danych strukturalnych i wyczerpywanie zasobów
    • XXE — nieautoryzowany dostęp do plików przez przetwarzanie XML
    • Niebezpieczna deserializacja danych wejściowych
    • ReDoS oraz spreparowane archiwa i dokumenty jako wektor odmowy usługi
    • Ochrona przed atakami wolumetrycznymi i aplikacyjnymi na poziomie aplikacji i infrastruktury
  5. Ataki po stronie przeglądarki
    • XSS odbity, trwały i oparty o DOM
    • Omijanie filtrów oraz kodowania danych wyjściowych
    • Kradzież sesji i danych użytkownika przez XSS
    • CSRF: mechanizm ataku, warunki powodzenia i skuteczne zabezpieczenia
    • Clickjacking i ochrona przed osadzaniem aplikacji w ramkach
    • Same Origin Policy i CORS — konsekwencje poluzowania polityki
    • Content Security Policy: zakres ochrony i ograniczenia
    • Mechanizmy bezpieczeństwa współczesnych przeglądarek i ich ograniczenia
    • Ochrona: kodowanie kontekstowe, tokeny, atrybuty ciasteczek, nagłówki bezpieczeństwa
  6. Sesje, uwierzytelnianie i kontrola dostępu
    • Zarządzanie sesją: generowanie, rotacja, unieważnianie, czas życia
    • Ciasteczka i ich atrybuty bezpieczeństwa
    • Tokeny JWT — typowe błędy implementacji i weryfikacji
    • Ścieżka logowania: enumeracja kont, brute force, ograniczanie liczby prób
    • Reset hasła jako najsłabsze ogniwo procesu uwierzytelniania
    • Uwierzytelnianie wieloskładnikowe i sposoby jego obchodzenia
    • Ochrona przed automatyzacją, spamem i enumeracją kont oraz haseł
    • Błędy kontroli dostępu: IDOR, eskalacja pozioma i pionowa uprawnień
  7. Bezpieczeństwo API
    • Specyfikacja API (OpenAPI/Swagger) jako mapa powierzchni ataku
    • Autoryzacja na poziomie zasobu i pojedynczej operacji
    • Nadmiarowe przypisanie parametrów i nadmiarowe dane w odpowiedziach
    • Ograniczanie liczby żądań i ochrona przed nadużyciem interfejsu
    • SSRF: wykorzystanie aplikacji do sięgania po zasoby wewnętrzne
    • Testowanie usług REST i SOAP, generowanie żądań na podstawie specyfikacji (Postman i/lub Burp Suite)
  8. Konfiguracja, komponenty i ochrona brzegowa
    • Nagłówki bezpieczeństwa i konfiguracja serwera aplikacyjnego
    • Konfiguracja TLS i błędy w zabezpieczeniu transmisji
    • Przechowywanie haseł i danych wrażliwych w aplikacji
    • Sekrety w repozytorium, plikach konfiguracyjnych i zmiennych środowiskowych
    • Podatności w zależnościach i komponentach zewnętrznych oraz narzędzia do ich wykrywania. OWASP Dependency-Check, audyt zależności w menedżerach pakietów
    • WAF, IDS i IPS: realny zakres ochrony, ograniczenia i techniki omijania
    • Skanery podatności aplikacji webowych (OWASP ZAP i analogiczne). Co wykrywają, czego nie wykryją, jak weryfikować wyniki
    • Przegląd własnej aplikacji i kodu narzędziami wspieranymi przez AI oraz weryfikacja fałszywych trafień
  9. Test całościowy i raportowanie
    • Samodzielny test bezpieczeństwa aplikacji podsumowujący zakres szkolenia
    • Wykrycie i potwierdzenie kilku niezależnych klas podatności
    • Ocena ryzyka i priorytetyzacja znalezisk
    • Opis podatności i rekomendacji w formie użytecznej dla zespołu rozwojowego

Pobierz w wersji PDF

Training also available in English .

Przeznaczenie i wymagania

Szkolenie jest przeznaczone przede wszystkim dla:

  • Programistów, webowych, backendowych i full-stack, którzy tworzą lub utrzymują aplikacje webowe i/lub API,
  • Testerów i inżynierów QA rozszerzających plany testów o testy bezpieczeństwa,
  • Pentesterów, audytorów,
  • Administratorów i inżynierów DevOps odpowiedzialnych za aplikacje wystawione do internetu,
  • Architektów i liderów technicznych, którzy muszą oceniać ryzyko i priorytetyzować poprawki,
  • Osób rozpoczynających pracę w obszarze testów bezpieczeństwa aplikacji,
  • zespołów utrzymujących systemy udostępniane publicznie, także w instytucjach publicznych.

Oczekiwania wobec uczestników:

  • Znajomość protokołu HTTP,
  • Umiejętność czytania kodu HTML i JavaScript, podstawy SQL,
  • Umiejętność programowania w dowolnym języku.

Nie wymagamy doświadczenia w bezpieczeństwie ani w testach penetracyjnych — szkolenie jest wejściem w ten obszar.

Szkolenie będzie za proste dla osób zawodowo wykonujących testy penetracyjne aplikacji webowych. Może być trudne dla osób bez żadnego praktycznego kontaktu z aplikacjami webowymi i kojarzeniem protokołu HTTP.

Certyfikaty

Uczestnicy szkolenia otrzymują imienne certyfikaty sygnowane przez ALX.

Zapisz się
Wybierz interesujący Cię termin oraz miasto
Warszawa:
Zdalnie:
Żaden termin nie pasuje?
Podaj swój adres e-mail, a my powiadomimy Cię o przyszłych terminach