Szkolenie „Java Security”
Cel szkolenia: Szkolenie porusza tematy związane z bezpieczeństwem aplikacji webowych pisanych w Javie, najpopularniejszym obecnie języku programowania. Java wykorzystywana jest głównie do tworzenia rozbudowanych aplikacji biznesowych, w których zagwarantowanie odpowiedniego poziomu bezpieczeństwa jest priorytetem. Kurs ten ma za zadanie w praktyczny sposób przedstawić najlepsze praktyki stosowane podczas tworzenia bezpiecznego oprogramowania oraz przybliżyć najlepsze narzędzia wspomagające ten proces.
Grupa docelowa: Szkolenie przeznaczone jest dla programistów tworzących aplikacje webowe z wykorzystaniem Javy, projektantów systemów informatycznych oraz pentesterów.
Wymagana wiedza: Znajomość języka Java na poziomie średnio-zaawansowanym. Znajomość podstawowych zagadnień związanych z bezpieczeństwem aplikacji.
Czas trwania szkolenia: 2 dni (2x8h)
Formuła szkolenia: BYOL (Bring Your Own Laptop). Wymagane oprogramowanie jest niezależne od wykorzystywanego systemu operacyjnego. Udostępniamy także obrazy maszyn wirtualnych z preinstalowanym oprogramowaniem.
Cena: 750zł netto
Liczba uczestników: 10 osób
Dodatkowe informacje: W ciągu każdego dnia szkolenia przewidziane są dwie przerwy kawowe oraz przerwa obiadowa (obiad wliczony jest w koszt szkolenia). Każdy uczestnik po zakończonym kursie otrzymuje certyfikat uczestnictwa i zestaw materiałów szkoleniowych (m.in. papierowa wersja prezentacji)
Ścieżka szkoleniowa:
- Wprowadzenie:
- Java – historia języka, zakres zastosowań, przyszłość technologii
- Rozwój technologii webowych opartych o Java:
- Servlety, JSP
- Java Server Faces
- Pozostałe rozwiązania
- Opis najpopularniejszych błędów spotykanych w aplikacjach webowych:
- Ataki polegające na wstrzyknięciu danych
- Cross-Site Scripting
- Cross-Site Request Forgery
- Błędy logiczne
- Konsekwencje błędów w bezpieczeństwie
Bezpieczeństwo aplikacji pisanych w Java:
- Bezpieczeństwo Java:
- Dekompilacja oprogramowania
- Ataki na mechanizm serializacji
- Identyfikacja niebezpiecznych elementów API
- Deklaratywne bezpieczeństwo aplikacji webowych - plik web.xml
- Uwierzytelnienie
- Autoryzacja
- Integralność danych
- Popularne błędy w aplikacjach webowych – atak i obrona w odniesieniu do Javy
- XSS - Cross-Site Scripting
- CSRF - Cross-Site Request Forgery
- SQL Injection
- Ataki na sesję
- Przykłady ataków na aplikacje napisane przy pomocy popularnych frameworków
- Tworzenie własnego filtru ochronnego
- Implementacja aplikacyjnego firewalla
- Wykrywanie anomalii
- JAAS - Java Authentication and Authorization Service
- Popularne rozwiązania zwiększające bezpieczeństwo:
- Spring Security
- Apache Shiro
- OWASP ESAPI
- Bezpieczeństwo kontenerów webowych oraz serwerów aplikacyjnych:
- Tomcat
- Glassfish
- WebSphere
- Jboss
- Bezpieczeństwo WebService'ów
- Podsumowanie szkolenia
- Pytania
Warsztaty:
- Uczestnicy szkolenia będą brać udział w procesie zabezpieczania przykładowej aplikacji webowej napisanej w Javie. Krok po kroku dodawane będą mechanizmy służące do uwierzytelniania, autoryzacji, filtrowania danych wejściowych oraz wykrywania anomalii. Zaprezentowane zostaną także dobre praktyki zwiększające bezpieczeństwo kontenera, na którym uruchomiona zostanie aplikacja webowa. Wykorzystane zostaną najciekawsze i najlepsze biblioteki, takie jak Apache Shiro czy też OWASP ESAPI. Uczestnicy szkolenia będą mieli dostęp do kodów źródłowych zabezpieczanej aplikacji i będą mogli samodzielnie wykonywać wszystkie omawiane operacje.
- Zaprezentowany zostanie atak na aplikację opartą na frameworku Struts2, który pozwala na wykonanie dowolnego kodu na serwerze.
- Zaprezentowany zostanie atak typu „Padding Oracle” na aplikację opartą na Java Server Faces, pozwalający na odszyfrowanie newralgicznych danych przechowywanych w ViewState. Atak typu „Padding Oracle” związany jest z koniecznością podziału szyfrowanych danych na bloki o rozmiarze 8 lub 16 bajtów i uzupełniania ostatniego bloku brakującymi bajtami. Wykorzystanie wszystkich możliwych kombinacji danych uzupełniających ostatni blok oraz nasłuchiwanie na odpowiedzi usługi informującej o poprawności danych użytych do uzupełnienia, pozwalają na odkodowanie zaszyfrowanych informacji.
Pobierz opis szkolenia w PDF
W razie ewentualnych pytań prosimy o kontakt.