Plan Szkolenia
I. Wprowadzenie do bezpiecznego kodowania i bezpieczeństwa aplikacji internetowych
1. Współczesny krajobraz zagrożeń dla aplikacji internetowych
- Typowe wektory ataków na aplikacje internetowe
- Zagrożenia bezpieczeństwa we współczesnych aplikacjach ASP.NET
- Rola bezpiecznego kodowania w tworzeniu oprogramowania
- Wprowadzenie do Fundacji OWASP i jej zasobów
2. Zasady bezpiecznego tworzenia oprogramowania
- Bezpieczeństwo projektowane od podstaw
- Obrona w głąb
- Zasada najmniejszych uprawnień
- Bezpieczne działanie w przypadku awarii
- Bezpieczne ustawienia domyślne
- Podstawy modelowania zagrożeń
II. Bezpieczny cykl życia oprogramowania (SDL)
1. Bezpieczny cykl życia oprogramowania
- Bezpieczeństwo w całym cyklu życia oprogramowania
- Wymagania bezpieczeństwa
- Bezpieczna architektura i projektowanie
- Praktyki bezpiecznego kodowania
- Testowanie i walidacja bezpieczeństwa
- Bezpieczne wdrażanie i utrzymanie
2. Ocena ryzyka i modelowanie zagrożeń
- Identyfikacja zasobów i zagrożeń
- Analiza powierzchni ataku
- Przegląd metodyki STRIDE
- Priorytetyzacja ryzyk bezpieczeństwa
III. OWASP Top 10 dla aplikacji ASP.NET
1. Zrozumienie OWASP Top 10
- Niewłaściwa kontrola dostępu
- Błędy kryptograficzne
- Wstrzykiwanie kodu (Injection)
- Niebezpieczny projekt
- Błędna konfiguracja zabezpieczeń
- Podatne i nieaktualne komponenty
- Błędy identyfikacji i uwierzytelniania
- Błędy integralności oprogramowania i danych
- Błędy rejestrowania i monitorowania zdarzeń bezpieczeństwa
- Fałszowanie żądań po stronie serwera (SSRF)
2. Stosowanie zaleceń OWASP
- Techniki bezpiecznego kodowania
- Kontrole zapobiegawcze
- Praktyki bezpiecznej konfiguracji
- Przykłady i demonstracje z życia wzięte
IV. Bezpieczeństwo uwierzytelniania i autoryzacji
1. Podstawy uwierzytelniania
- Mechanizmy uwierzytelniania w ASP.NET
- Bezpieczeństwo haseł
- Uwierzytelnianie wieloskładnikowe
- Zarządzanie sesjami
- Zarządzanie tożsamością
2. Autoryzacja i kontrola dostępu
- Autoryzacja oparta na rolach
- Autoryzacja oparta na oświadczeniach (claims)
- Autoryzacja oparta na zasadach (policies)
- Zapobieganie eskalacji uprawnień
- Ochrona zasobów wrażliwych
V. Zapobieganie atakom typu Injection
1. Podatności typu Injection
- Wstrzykiwanie SQL (SQL Injection)
- Wstrzykiwanie poleceń (Command Injection)
- Wstrzykiwanie LDAP (LDAP Injection)
- Wstrzykiwanie XML (XML Injection)
- Przegląd wstrzykiwania NoSQL (NoSQL Injection)
2. Techniki bezpiecznego kodowania
- Zapytania sparametryzowane
- Walidacja danych wejściowych
- Kodowanie danych wyjściowych
- Zagadnienia bezpieczeństwa ORM
- Bezpieczne praktyki dostępu do bazy danych
VI. Zapobieganie atakom Cross-Site Scripting (XSS)
1. Zrozumienie XSS
- XSS trwały (Stored XSS)
- XSS odbity (Reflected XSS)
- XSS oparty na DOM (DOM-based XSS)
- Scenariusze ataków
2. Zapobieganie XSS
- Kodowanie danych wyjściowych
- Walidacja danych wejściowych
- Polityka bezpieczeństwa treści (CSP)
- Bezpieczne obchodzenie się z HTML i JavaScript
- Funkcje bezpieczeństwa ASP.NET zapobiegające XSS
VII. Zapobieganie atakom Cross-Site Request Forgery (CSRF)
1. Zrozumienie CSRF
- Jak działają ataki CSRF
- Typowe scenariusze ataków
- Wpływ na biznes
2. Ochrona przed CSRF
- Tokeny zapobiegające fałszerstwom (anti-forgery tokens)
- Ciasteczka SameSite
- Bezpieczne zarządzanie sesjami
- Mechanizmy zapobiegające fałszerstwom w ASP.NET
VIII. Bezpieczna konfiguracja aplikacji ASP.NET
1. Funkcje bezpieczeństwa ASP.NET
- Bezpieczeństwo konfiguracji
- Bezpieczne nagłówki HTTP
- Konfiguracja HTTPS i TLS
- Zarządzanie sekretami
- Bezpieczna obsługa błędów
2. Ochrona danych wrażliwych
- Interfejsy API ochrony danych
- Bezpieczne przechowywanie poświadczeń
- Podstawy szyfrowania
- Zarządzanie kluczami
IX. Walidacja danych wejściowych i bezpieczne przetwarzanie danych
1. Walidacja danych wprowadzanych przez użytkownika
- Listy dozwolonych a listy zablokowanych (whitelisting vs blacklisting)
- Walidacja po stronie serwera
- Zagadnienia walidacji po stronie klienta
- Bezpieczeństwo przesyłania plików
2. Bezpieczne przetwarzanie danych
- Bezpieczeństwo serializacji
- Ryzyka deserializacji
- Integralność danych
- Bezpieczne praktyki rejestrowania zdarzeń
X. Testy penetracyjne i weryfikacja bezpieczeństwa
1. Metodyka testów penetracyjnych
- Planowanie ocen bezpieczeństwa
- Identyfikacja podatności
- Koncepcje eksploitacji
- Raportowanie wyników
2. Techniki testowania bezpieczeństwa
- Statyczne testowanie bezpieczeństwa aplikacji (SAST)
- Dynamiczne testowanie bezpieczeństwa aplikacji (DAST)
- Interaktywne testowanie bezpieczeństwa aplikacji (IAST)
- Analiza zależności i komponentów
- Ręczny przegląd kodu
XI. Zabezpieczanie aplikacji ASP.NET
1. Stosowanie praktyk bezpiecznego kodowania
- Bezpieczna implementacja uwierzytelniania
- Bezpieczna implementacja autoryzacji
- Bezpieczeństwo sesji
- Obsługa wyjątków
- Rejestrowanie i monitorowanie zdarzeń
- Zagadnienia bezpiecznego wdrażania
2. Najlepsze praktyki bezpieczeństwa
- Standardy bezpiecznego kodowania
- Zarządzanie zależnościami
- Zarządzanie poprawkami
- Ciągłe doskonalenie bezpieczeństwa
XII. Praktyczne warsztaty bezpieczeństwa
1. Identyfikacja i wykorzystywanie typowych podatności
- Analiza niezabezpieczonego kodu ASP.NET
- Identyfikacja podatności z listy OWASP Top 10
- Zrozumienie technik ataków
- Ocena bezpieczeństwa aplikacji
2. Usuwanie problemów bezpieczeństwa
- Stosowanie poprawek bezpiecznego kodowania
- Walidacja zastosowanych zabezpieczeń
- Testowanie naprawionych aplikacji
- Ćwiczenie z przeglądu bezpiecznego kodu
XIII. Podsumowanie i przegląd kursu
1. Przegląd kluczowych koncepcji
- Zasady bezpiecznego projektowania
- Strategie łagodzenia zagrożeń z listy OWASP Top 10
- Funkcje bezpieczeństwa ASP.NET
- Bezpieczny cykl życia oprogramowania
2. Dyskusja końcowa
- Najlepsze praktyki bezpiecznego kodowania
- Wdrażanie bezpieczeństwa w zespołach programistycznych
- Dodatkowe zasoby i narzędzia OWASP
- Pytania i odpowiedzi oraz kolejne kroki
Wymagania
Doświadczenie w pracy z ASP.NET
Doświadczenie w tworzeniu aplikacji internetowych
Opinie uczestników (5)
Wprowadzenie do wielu różnych typów niebezpiecznych zachowań.
Zhongqi
Szkolenie - Secure Developer .NET (Inc OWASP)
Przetłumaczone przez sztuczną inteligencję
Sesja jedynasto-jedna z Raymondem była niesamowita. Był naprawdę wspaniały i skupiony na moich potrzebach szkoleniowych.
Joshua
Szkolenie - Secure Developer .NET (Inc OWASP)
Przetłumaczone przez sztuczną inteligencję
Wysoki poziom wiedzy instruktora oznaczał, że uzyskaliśmy bardzo dobry wgląd w omawiane tematy.
Dafydd - TATA Steel
Szkolenie - Secure Developer .NET (Inc OWASP)
Przetłumaczone przez sztuczną inteligencję
odnośniki referencyjne
Abraham Gonzalez - ATEB Servicios
Szkolenie - Secure Developer .NET (Inc OWASP)
Przetłumaczone przez sztuczną inteligencję
Wiedza trenera w dziedzinie przedmiotu była znakomita, a sposób prezentacji sesji, który umożliwiało publiczności podążanie za demonstracjami, naprawdę pomagał w utrwaleniu tej wiedzy w porównaniu z samym siedzeniem i słuchaniem.
Jack Allan - RSM UK Management Ltd.
Szkolenie - Secure Developer .NET (Inc OWASP)
Przetłumaczone przez sztuczną inteligencję