EITC/IS/WASF Web Applications Security Fundamentals to europejski program certyfikacji IT dotyczący teoretycznych i praktycznych aspektów bezpieczeństwa usług WWW, począwszy od bezpieczeństwa podstawowych protokołów internetowych, poprzez prywatność, zagrożenia i ataki na różne warstwy ruchu sieciowego, komunikacji sieciowej, sieci bezpieczeństwo serwerów, zabezpieczenia w wyższych warstwach, w tym przeglądarek i aplikacji internetowych, a także uwierzytelnianie, certyfikaty i phishing.
Program nauczania Podstawy bezpieczeństwa aplikacji internetowych EITC/IS/WASF obejmuje wprowadzenie do aspektów bezpieczeństwa sieci Web w języku HTML i JavaScript, DNS, HTTP, pliki cookie, sesje, ataki na pliki cookie i sesje, zasady tego samego pochodzenia, fałszowanie żądań między witrynami, wyjątki od tego samego Zasady dotyczące pochodzenia, Cross-Site Scripting (XSS), Ochrona przed Cross-Site Scripting, odciski palców w sieci, prywatność w sieci, DoS, phishing i kanały boczne, odmowa usługi, phishing i kanały boczne, ataki polegające na wstrzykiwaniu kodu, wstrzykiwanie kodu, transport Layer security (TLS) i ataki, HTTPS w świecie rzeczywistym, uwierzytelnianie, WebAuthn, zarządzanie bezpieczeństwem sieci, obawy dotyczące bezpieczeństwa w projekcie Node.js, bezpieczeństwo serwera, bezpieczne praktyki kodowania, lokalne bezpieczeństwo serwera HTTP, ataki z ponownym wiązaniem DNS, ataki przeglądarkowe, przeglądarka architektury, a także napisanie bezpiecznego kodu przeglądarki, w ramach poniższej struktury, obejmującej obszerne treści dydaktyczne wideo jako odniesienie dla tego Certyfikatu EITC.
Bezpieczeństwo aplikacji internetowych to podzbiór zabezpieczeń informacji, który koncentruje się na bezpieczeństwie witryn internetowych, aplikacji internetowych i usług internetowych. Bezpieczeństwo aplikacji internetowych na swoim najbardziej podstawowym poziomie opiera się na zasadach bezpieczeństwa aplikacji, ale dotyczy ich w szczególności internetu i platform webowych. Technologie zabezpieczeń aplikacji sieci Web, takie jak zapory aplikacji sieci Web, to wyspecjalizowane narzędzia do pracy z ruchem HTTP.
Open Web Application Security Project (OWASP) oferuje zasoby, które są zarówno bezpłatne, jak i otwarte. Odpowiada za to fundacja non-profit OWASP. Ranking OWASP Top 2017 10 jest wynikiem obecnego badania opartego na obszernych danych zebranych od ponad 40 organizacji partnerskich. Przy użyciu tych danych wykryto około 2.3 miliona luk w zabezpieczeniach ponad 50,000 10 aplikacji. Dziesięć najważniejszych problemów związanych z bezpieczeństwem aplikacji online, według rankingu OWASP Top 2017 – XNUMX, to:
- Wtrysk
- Problemy z uwierzytelnianiem
- Ujawnione dane wrażliwe XML zewnętrzne podmioty (XXE)
- Kontrola dostępu, która nie działa
- Błędna konfiguracja zabezpieczeń
- Skrypty typu site-to-site (XSS)
- Deserializacja, która nie jest bezpieczna
- Korzystanie z komponentów, które mają znane wady
- Rejestrowanie i monitorowanie są niewystarczające.
Dlatego praktyka ochrony witryn i usług online przed różnymi zagrożeniami bezpieczeństwa, które wykorzystują słabości w kodzie aplikacji, jest znana jako ochrona aplikacji internetowych. Systemy zarządzania treścią (np. WordPress), narzędzia do administrowania bazami danych (np. phpMyAdmin) i aplikacje SaaS są powszechnymi celami ataków na aplikacje online.
Aplikacje internetowe są uważane przez sprawców za cele o wysokim priorytecie, ponieważ:
- Ze względu na złożoność ich kodu źródłowego bardziej prawdopodobne są nienadzorowane luki w zabezpieczeniach i złośliwe modyfikacje kodu.
- Nagrody o wysokiej wartości, takie jak wrażliwe dane osobowe uzyskane w wyniku skutecznego manipulowania kodem źródłowym.
- Łatwość wykonania, ponieważ większość ataków można łatwo zautomatyzować i zastosować bezkrytycznie przeciwko tysiącom, dziesiątkom, a nawet setkom tysięcy celów jednocześnie.
- Organizacje, które nie zabezpieczą swoich aplikacji internetowych, są narażone na ataki. Może to prowadzić między innymi do kradzieży danych, napiętych relacji z klientami, anulowania licencji i działań prawnych.
Luki w witrynach internetowych
Luki czyszczenia wejścia/wyjścia są powszechne w aplikacjach internetowych i często są wykorzystywane do zmiany kodu źródłowego lub uzyskania nieautoryzowanego dostępu.
Te wady pozwalają na wykorzystanie różnych wektorów ataku, w tym:
- Wstrzyknięcie SQL — gdy sprawca manipuluje bazą danych za pomocą złośliwego kodu SQL, ujawniane są informacje. Nielegalne przeglądanie list, usuwanie tabel i nieautoryzowany dostęp administratora to jedne z konsekwencji.
- XSS (Cross-site Scripting) to atak polegający na wstrzykiwaniu, którego celem są użytkownicy w celu uzyskania dostępu do kont, aktywacji trojanów lub zmiany zawartości strony. Gdy złośliwy kod jest wstrzykiwany bezpośrednio do aplikacji, nazywa się to przechowywanym XSS. Gdy złośliwy skrypt jest kopiowany z aplikacji do przeglądarki użytkownika, jest to znane jako odbicie XSS.
- Odległe dołączanie plików — ta forma ataku umożliwia hakerowi wstrzyknięcie pliku do serwera aplikacji internetowej ze zdalnej lokalizacji. Może to prowadzić do wykonywania niebezpiecznych skryptów lub kodu w aplikacji, a także kradzieży lub modyfikacji danych.
- Cross-site Request Forgery (CSRF) — rodzaj ataku, który może spowodować niezamierzony transfer gotówki, zmianę hasła lub kradzież danych. Dzieje się tak, gdy złośliwy program sieciowy instruuje przeglądarkę użytkownika, aby wykonała niepożądane działanie w witrynie, w której jest zalogowany.
Teoretycznie skuteczne oczyszczanie wejścia/wyjścia może wyeliminować wszystkie luki w zabezpieczeniach, czyniąc aplikację niewrażliwą na nieautoryzowane modyfikacje.
Jednak ponieważ większość programów jest w ciągłym stanie rozwoju, kompleksowa sanityzacja rzadko jest realną opcją. Ponadto aplikacje są często ze sobą integrowane, co powoduje, że kodowane środowisko staje się coraz bardziej złożone.
Aby uniknąć takich zagrożeń, należy wdrożyć rozwiązania i procesy bezpieczeństwa aplikacji internetowych, takie jak certyfikacja PCI Data Security Standard (PCI DSS).
Zapora dla aplikacji internetowych (WAF)
WAF (zapory aplikacji internetowych) to rozwiązania sprzętowe i programowe, które chronią aplikacje przed zagrożeniami bezpieczeństwa. Rozwiązania te mają na celu inspekcję ruchu przychodzącego w celu wykrycia i zablokowania prób ataków, kompensując wszelkie błędy oczyszczania kodu.
Wdrożenie WAF spełnia kluczowe kryterium certyfikacji PCI DSS, chroniąc dane przed kradzieżą i modyfikacją. Wszystkie dane posiadaczy kart kredytowych i debetowych przechowywane w bazie danych muszą być chronione zgodnie z Wymaganiem 6.6.
Ponieważ znajduje się przed strefą DMZ na brzegu sieci, ustanowienie WAF zwykle nie wymaga żadnych zmian w aplikacji. Następnie służy jako brama dla całego ruchu przychodzącego, odfiltrowując niebezpieczne żądania, zanim będą mogły wejść w interakcję z aplikacją.
Aby ocenić, jaki ruch ma dostęp do aplikacji, a który należy wyeliminować, WAF stosują różne heurystyki. Dzięki regularnie aktualizowanej puli sygnatur mogą szybko identyfikować złośliwych aktorów i znane wektory ataków.
Prawie wszystkie pliki WAF można dostosować do indywidualnych przypadków użycia i przepisów bezpieczeństwa, a także do zwalczania pojawiających się zagrożeń (znanych również jako zero-day). Wreszcie, aby uzyskać dodatkowy wgląd w przychodzących odwiedzających, większość nowoczesnych rozwiązań wykorzystuje dane dotyczące reputacji i zachowania.
Aby zbudować obwód bezpieczeństwa, pliki WAF są zwykle łączone z dodatkowymi rozwiązaniami bezpieczeństwa. Mogą one obejmować rozproszone usługi zapobiegania atakom typu „odmowa usługi” (DDoS), które zapewniają dodatkową skalowalność niezbędną do zapobiegania masowym atakom.
Lista kontrolna bezpieczeństwa aplikacji internetowych
Oprócz plików WAF istnieje wiele różnych podejść do zabezpieczania aplikacji internetowych. Każda lista kontrolna bezpieczeństwa aplikacji internetowych powinna zawierać następujące procedury:
- Zbieranie danych — przeglądaj aplikację ręcznie, szukając punktów wejścia i kodów po stronie klienta. Klasyfikuj treści hostowane przez stronę trzecią.
- Autoryzacja — podczas testowania aplikacji szukaj przechodzenia ścieżek, problemów z kontrolą dostępu w pionie i poziomie, brakującej autoryzacji i niezabezpieczonych, bezpośrednich odwołań do obiektów.
- Zabezpiecz wszystkie transmisje danych za pomocą kryptografii. Czy jakiekolwiek poufne informacje zostały zaszyfrowane? Czy zastosowałeś jakieś algorytmy, które nie nadają się do tabaki? Czy są jakieś błędy losowości?
- Odmowa usługi — Przetestuj pod kątem ochrony przed automatyzacją, blokady konta, DoS protokołu HTTP i DoS z wieloznacznymi znakami SQL w celu zwiększenia odporności aplikacji na ataki typu „odmowa usługi”. Nie obejmuje to ochrony przed masowymi atakami DoS i DDoS, które wymagają kombinacji technologii filtrowania i skalowalnych zasobów, aby się oprzeć.
Więcej szczegółów można znaleźć w OWASP Web Application Security Testing Cheat Sheet (jest to również świetne źródło do innych tematów związanych z bezpieczeństwem).
Ochrona DDoS
Ataki DDoS lub rozproszone ataki typu „odmowa usługi” to typowy sposób na przerwanie działania aplikacji internetowej. Istnieje wiele podejść do łagodzenia ataków DDoS, w tym odrzucanie ruchu związanego z atakami wolumetrycznymi w sieciach dostarczania treści (CDN) i wykorzystywanie sieci zewnętrznych do odpowiedniego kierowania prawdziwych żądań bez powodowania przerw w świadczeniu usług.
Ochrona DNSSEC (Domain Name System Security Extensions)
System nazw domen lub DNS to internetowa książka telefoniczna, która odzwierciedla sposób, w jaki narzędzie internetowe, takie jak przeglądarka internetowa, znajduje odpowiedni serwer. Zatruwanie pamięci podręcznej DNS, ataki na ścieżce i inne sposoby zakłócania cyklu życia wyszukiwania DNS będą używane przez złe podmioty do przejęcia tego procesu żądania DNS. Jeśli DNS jest internetową książką telefoniczną, DNSSEC jest identyfikatorem dzwoniącego, którego nie można sfałszować. Żądanie wyszukiwania DNS można chronić za pomocą technologii DNSSEC.
Aby dokładnie zapoznać się z programem certyfikacji, możesz rozwinąć i przeanalizować poniższą tabelę.
Program EITC/IS/WASF Web Applications Security Fundamentals Certification Curriculum odwołuje się do ogólnodostępnych materiałów dydaktycznych w formie wideo. Proces uczenia się podzielony jest na etapy (programy -> lekcje -> tematy) obejmujące odpowiednie części programu nauczania. Zapewnione są również nieograniczone konsultacje z ekspertami dziedzinowymi.
Aby uzyskać szczegółowe informacje na temat procedury certyfikacji, sprawdź Wygodna Subskrypcja.
Pobierz kompletne materiały przygotowawcze do samodzielnego uczenia się w trybie offline dla programu EITC/IS/WASF Web Applications Security Fundamentals w pliku PDF
Materiały przygotowawcze EITC/IS/WASF – wersja standardowa
Materiały przygotowawcze EITC/IS/WASF – wersja rozszerzona z pytaniami kontrolnymi