CYBERBEZPIECZENSTWO - ZESTAW CWICZEN PRAKTYCZNYCH NR 2 Kierunek: technik teleinformatyk ZESTAW NA 4 DNI - KAZDY BLOK PO 2 GODZINY LEKCYJNE Laczny czas: ok. 8 godzin lekcyjnych Tematy przewodnie: - phishing - analiza URL i domen - VirusTotal - Lista Ostrzezen CERT Polska - audyt DNS - audyt bezpieczenstwa poczty - SPF, DKIM, DMARC - podstawy OSINT - Certificate Transparency - Security Headers - finalny mini-audyt domeny FORMA: Krotkie wprowadzenie teoretyczne -> zadanie praktyczne -> interpretacja wyniku -> wnioski -> pytanie kontrolne. WAZNA ZASADA: Nie traktujemy narzedzi jako ciekawostek. Celem jest nauczenie sie laczenia wynikow z kilku zrodel i wyciagania na ich podstawie wnioskow. ====================================================================== ZASADY BEZPIECZENSTWA ====================================================================== 1. Nie otwieraj domen znajdujacych sie na Listach Ostrzezen CERT Polska. Kopiuj je tylko do narzedzi analitycznych, np. VirusTotal. 2. Nie loguj sie do podejrzanych stron i nie podawaj na nich zadnych danych. 3. Do VirusTotal nie wysylaj prywatnych, poufnych ani firmowych plikow. Nie wysylaj takze adresow URL zawierajacych tokeny, identyfikatory sesji lub inne dane wrazliwe. 4. Nie wykonujemy brute force, skanowania podatnosci ani prob uzyskania nieautoryzowanego dostepu. 5. Korzystamy z publicznych informacji i narzedzi przeznaczonych do analizy. 6. Wyniki narzedzi moga zmieniac sie w czasie. Brak ostrzezenia nie oznacza automatycznie, ze obiekt jest bezpieczny. 7. Jedno narzedzie nie daje ostatecznego werdyktu. Uczymy sie laczyc dane. 8. Domena ".example" jest przeznaczona do przykladow i cwiczen. ====================================================================== DZIEN 1 - PHISHING, ANATOMIA URL I HTTPS Czas: 2 godziny lekcyjne ====================================================================== CEL DNIA: Nauczyc sie czytac adres URL, rozpoznawac proste techniki maskowania adresu, rozumiec typosquatting oraz poprawnie interpretowac HTTPS i certyfikat TLS. ---------------------------------------------------------------------- WPROWADZENIE TEORETYCZNE ---------------------------------------------------------------------- Adres URL nie jest jednym napisem bez struktury. Przyklad: https://portal.example/login?next=/konto#pomoc Mozemy rozdzielic go na: https:// - protokol / scheme portal.example - host /login - sciezka ?next=/konto - query string, czyli parametry #pomoc - fragment W phishingu atakujacy czesto liczy na to, ze uzytkownik zobaczy znana nazwe gdzies w adresie i nie sprawdzi, jaka domena jest faktycznie uzywana. Bardzo wazne: Sam znak "?" niczego nie przekierowuje. Wszystko po "?" jest parametrem zapytania przekazywanym do serwera, ktory znajduje sie PRZED znakiem "?". Przyklad: https://www.pkobp.pl/?www.onet.pl Hostem nadal jest: www.pkobp.pl Napis "www.onet.pl" znajduje sie tylko w parametrze zapytania. Serwer moze oczywiscie wykorzystac parametr do wykonania przekierowania, ale wynika to z dzialania aplikacji, a nie z samego znaku "?". ---------------------------------------------------------------------- CWICZENIE 1 - ROZBIERZ URL NA CZESCI Czas: ok. 15 minut ---------------------------------------------------------------------- Nie otwieraj ponizszych adresow. Analizuj sam tekst. A) https://www.pkobp.pl/?www.onet.pl B) https://www.pkobp.pl.evil.example/login C) https://evil.example/login?continue=https://www.pkobp.pl/ D) https://www.pkobp.pl@evil.example/ E) https://login.example/reset?user=adam#formularz Dla kazdego adresu zapisz: 1. protokol: 2. host: 3. domena, ktorej powinienes najbardziej ufac lub nie ufac: 4. sciezka: 5. query string: 6. fragment: 7. czy adres moze zmylic mniej doswiadczonego uzytkownika? PYTANIA: 1. Gdzie w adresie A znajduje sie "www.onet.pl"? 2. Jaki jest faktyczny host w adresie B? 3. Jaki jest faktyczny host w adresie C? 4. Jaki jest faktyczny host w adresie D? 5. Dlaczego sam fakt wystepowania nazwy znanej firmy w URL niczego nie potwierdza? ---------------------------------------------------------------------- PO CWICZENIU - CO POWINIENES ZAUWAZYC ---------------------------------------------------------------------- - Domena znajdujaca sie przed "?" jest wazniejsza niz tekst w parametrze. - Znana marka moze wystepowac jako subdomena, sciezka albo parametr. - W adresie z "@" tekst przed "@" moze byc potraktowany jako informacja uzytkownika, a host znajduje sie po "@". - Nalezy czytac adres od strony hosta, a nie szukac znanej nazwy "gdziekolwiek". ---------------------------------------------------------------------- CWICZENIE 2 - TYPOSQUATTING I PODOBNE DOMENY Czas: ok. 20 minut ---------------------------------------------------------------------- WPROWADZENIE: Rejestracja domeny podobnej do znanej marki jest technicznie prosta. Atakujacy moze wykorzystac: - literowke, - zamiane litery na cyfre, - dodanie slowa "login", "secure", "support", - dodatkowy myslnik, - podobny alfabet lub znak Unicode, - subdomene wygladajaca jak prawdziwa domena. Analizuj przyklady. Nie otwieraj ich. 1. micros0ft.example 2. paypa1.example 3. allegro-login.example 4. pko-bp-secure.example 5. microsoft.com.login.example 6. support-allegro.example 7. xn--przykad-...example ZADANIE: Dla kazdego przykladu okresl, jaka technika zostala zastosowana: - literowka - zamiana litery na cyfre - dodanie slowa wzbudzajacego zaufanie - mylaca subdomena - IDN / Punycode - inna Nastepnie odpowiedz: 1. Ktory typ moze byc najtrudniejszy do zauwazenia? 2. Dlaczego podobna domena moze byc skuteczniejsza niz bardzo dlugi, przypadkowy adres? 3. Co powinien zrobic uzytkownik, jezeli ma watpliwosci? ---------------------------------------------------------------------- PO CWICZENIU - WNIOSEK ---------------------------------------------------------------------- Typosquatting wykorzystuje przyzwyczajenie czlowieka do szybkiego czytania. Nie trzeba kopiowac calej domeny. Czasem wystarczy jedna zmieniona litera. ---------------------------------------------------------------------- CWICZENIE 3 - HTTPS I CERTYFIKAT TLS Czas: ok. 25 minut ---------------------------------------------------------------------- WPROWADZENIE: HTTPS oznacza przede wszystkim, ze polaczenie przegladarki z serwerem jest szyfrowane i ze certyfikat zostal wystawiony dla okreslonej nazwy hosta. HTTPS NIE oznacza: - ze firma jest uczciwa, - ze strona nie jest phishingiem, - ze wlasciciel domeny zostal dokladnie zweryfikowany biznesowo, - ze tresc strony jest bezpieczna. Certyfikat TLS mozna uzyskac legalnie i bezplatnie, np. od Let's Encrypt. Phishing moze wiec dzialac przez HTTPS. ZADANIE: Otworz dwie znane strony, np.: https://cert.pl/ https://www.mozilla.org/ W przegladarce wyswietl informacje o polaczeniu i certyfikacie. Zapisz dla kazdej: 1. nazwa hosta: 2. wystawca certyfikatu / issuer: 3. okres waznosci: 4. dla jakich nazw certyfikat jest wazny, jezeli przegladarka to pokazuje: 5. czy polaczenie jest szyfrowane: PYTANIA: 1. Czy certyfikat od znanego wystawcy oznacza, ze tresc strony jest uczciwa? 2. Czy darmowy certyfikat oznacza nizsze bezpieczenstwo kryptograficzne? 3. Co nalezy sprawdzic oprocz samej informacji, ze polaczenie jest HTTPS? ---------------------------------------------------------------------- PO CWICZENIU - CO JEST NAJWAZNIEJSZE ---------------------------------------------------------------------- Nie uczymy sie zasady: "jest klodka = jest bezpiecznie". Lepsza zasada: "HTTPS zabezpiecza polaczenie, ale nie potwierdza intencji wlasciciela strony". Sprawdzamy: - poprawna domene, - zakres certyfikatu, - wystawce, - waznosc, - kontekst strony. Sam issuer takze nie jest dowodem uczciwosci serwisu. ---------------------------------------------------------------------- CWICZENIE 4 - SZYBKA ANALIZA PHISHINGU Czas: ok. 20 minut ---------------------------------------------------------------------- SCENARIUSZ: Od: "Obsluga domeny" Temat: PILNE - domena wygasa dzisiaj Tresc: "Twoja domena zostanie wylaczona o godzinie 14:00. Aby uniknac przerwy w pracy, wykonaj platnosc: https://ovh.com.billing.example/?continue=https://www.ovhcloud.com/ Brak platnosci spowoduje natychmiastowe zawieszenie uslugi." ZADANIE: Znajdz minimum 6 elementow wymagajacych weryfikacji. Nastepnie napisz bezpieczna procedure sprawdzenia informacji BEZ korzystania z linku w wiadomosci. ---------------------------------------------------------------------- PODSUMOWANIE DNIA 1 ---------------------------------------------------------------------- Po dzisiejszych zajeciach powinienes umiec: - rozlozyc URL na elementy, - wskazac faktyczny host, - rozpoznac podstawowe formy typosquattingu, - wyjasnic, dlaczego HTTPS nie potwierdza uczciwosci strony, - sprawdzic podstawowe dane certyfikatu, - zweryfikowac podejrzany komunikat niezaleznym kanalem. PYTANIE KONTROLNE: Co jest wazniejsze przy ocenie linku: znajoma nazwa widoczna w adresie czy faktyczna domena/host? ====================================================================== DZIEN 2 - VIRUSTOTAL I LISTA OSTRZEZEN CERT POLSKA Czas: 2 godziny lekcyjne ====================================================================== CEL DNIA: Poznac VirusTotal szerzej niz jako "skaner linkow", przeanalizowac domene, URL i informacje o pliku oraz nauczyc sie korzystac z Listy Ostrzezen CERT Polska jako zrodla danych do ochrony organizacji. ---------------------------------------------------------------------- WPROWADZENIE TEORETYCZNE ---------------------------------------------------------------------- VirusTotal gromadzi informacje o: - plikach, - hashach plikow, - URL, - domenach, - adresach IP, - relacjach pomiedzy obiektami, - wynikach wielu silnikow i zrodel reputacyjnych. Wazne: VirusTotal nie jest wyrocznia. Mozliwe sytuacje: - 0 wykryc, a obiekt jest nowym zagrozeniem, - pojedyncze wykrycie jest falszywym alarmem, - rozne silniki klasyfikuja obiekt inaczej, - dane historyczne moga byc bardziej interesujace niz sam licznik wykryc. Nie wysylaj do VirusTotal danych prywatnych i poufnych. ---------------------------------------------------------------------- CWICZENIE 1 - DOMENA I URL W VIRUSTOTAL Czas: ok. 20 minut ---------------------------------------------------------------------- Wejdz na: https://www.virustotal.com/ Sprawdz: cert.pl example.com Nastepnie sprawdz jako URL: https://cert.pl/ Nazwy zakladek w interfejsie moga sie zmieniac. Szukaj informacji takich jak: - wynik analizy / detections, - informacje podstawowe, - kategorie, - relacje, - powiazane adresy IP, - powiazane URL, - dane historyczne, - komentarze lub reputacja spolecznosci, jezeli sa dostepne. ZAPISZ DLA JEDNEJ DOMENY: 1. domena: 2. liczba lub ogolny wynik wykryc: 3. widoczne kategorie: 4. co najmniej jeden adres IP lub inna relacja: 5. jedna informacja historyczna: 6. czy na podstawie samego wyniku uznalbys domene za bezpieczna? Dlaczego? ---------------------------------------------------------------------- CWICZENIE 2 - ANALIZA PLIKU BEZ POBIERANIA MALWARE Czas: ok. 15 minut ---------------------------------------------------------------------- WPROWADZENIE: Nie trzeba pobierac zlosliwego pliku, aby przeanalizowac jego znany hash. Do cwiczenia wykorzystamy EICAR Anti-Malware Test File. EICAR jest nieszkodliwym plikiem testowym zaprojektowanym do sprawdzania reakcji systemow antywirusowych. NIE POBIERAJ PLIKU. W VirusTotal wyszukaj SHA-256: 275a021bbfb6489e54d471899f7db9d1663fc695ec2fe2a2c4538aabf651fd0f ZADANIE: 1. Jak VirusTotal rozpoznaje plik? 2. Ile silnikow go wykrywa? Zapisz aktualny wynik. 3. Jakie nazwy detekcji pojawiaja sie najczesciej? 4. Jaki jest typ i rozmiar pliku? 5. Czy wysoka liczba wykryc oznacza tutaj prawdziwego wirusa? 6. Czego uczy ten przyklad o interpretowaniu wynikow? ---------------------------------------------------------------------- CWICZENIE 3 - LISTA OSTRZEZEN CERT POLSKA + VIRUSTOTAL Czas: ok. 25 minut ---------------------------------------------------------------------- WPROWADZENIE: CERT Polska prowadzi Liste Ostrzezen przed niebezpiecznymi stronami. Znajduja sie tam domeny wykorzystywane m.in. do phishingu i wyudzania danych. Lista jest udostepniana w wielu formatach i moze byc automatycznie wykorzystywana przez systemy ochronne. Oficjalny opis: https://cert.pl/lista-ostrzezen/ Lista tekstowa: https://hole.cert.pl/domains/v2/domains.txt UWAGA: NIE OTWIERAJ DOMEN Z LISTY. ZADANIE: 1. Otworz plik domains.txt. 2. Wybierz 3 aktualne domeny. 3. Skopiuj nazwe pierwszej domeny do VirusTotal jako wyszukiwanie domeny. 4. Powtorz dla pozostalych dwoch. 5. Nie otwieraj samych stron. DLA KAZDEJ ZAPISZ: Domena: Czy znajduje sie w VirusTotal: Liczba / charakter wykryc: Czy widoczne sa relacje: Czy VT posiada dane historyczne: Czy wynik VT zgadza sie z faktem, ze domena jest na liscie CERT: PYTANIA: 1. Czy wszystkie trzy domeny maja taki sam poziom detekcji? 2. Czy brak detekcji w VirusTotal uniewaznia informacje CERT Polska? 3. Co moze oznaczac domena obecna w CERT, ale jeszcze slabo rozpoznana w VT? 4. Dlaczego czas wykrycia jest wazny w phishingu? ---------------------------------------------------------------------- CWICZENIE 4 - DO CZEGO SLUZA ROZNE FORMATY LISTY CERT? Czas: ok. 15 minut ---------------------------------------------------------------------- Na stronie CERT Polska znajdz dostepne formaty Listy Ostrzezen. Zwroc uwage m.in. na: - TXT - TSV/CSV - JSON - XML - format dla blokowania reklam - hosts - MikroTik .rsc - RPZ ZADANIE: Dopasuj format do przykladowego zastosowania: A. prosty skrypt analizujacy linia po linii: B. aplikacja pobierajaca dane przez kod: C. lokalny plik hosts: D. serwer DNS obslugujacy Response Policy Zone: E. RouterOS: F. import do systemu analitycznego lub SIEM: PYTANIE: Dlaczego nie zawsze dobrym pomyslem jest rozwiazywanie wszystkich domen z listy na IP i blokowanie tych adresow IP na firewallu? ---------------------------------------------------------------------- PO CWICZENIU - WAZNA UWAGA TECHNICZNA ---------------------------------------------------------------------- Jedna domena moze: - zmieniac IP, - korzystac z CDN, - wspoldzielic IP z wieloma poprawnymi serwisami. Dlatego lista domen jest szczegolnie naturalna do: - filtrowania DNS, - RPZ, - FQDN filtering, - secure DNS, - proxy / web filtering. Jezeli firewall obsluguje dynamiczne listy domen/FQDN, lista moze byc elementem jego ochrony. Nie nalezy jednak bezmyslnie zamieniac kazdej domeny na IP i blokowac calego adresu. ---------------------------------------------------------------------- PODSUMOWANIE DNIA 2 ---------------------------------------------------------------------- Po dzisiejszych zajeciach powinienes umiec: - analizowac domene, URL i hash pliku w VirusTotal, - rozumiec roznice miedzy wynikiem a ostatecznym werdyktem, - wykorzystac aktualna Liste Ostrzezen CERT Polska, - porownac dwa niezalezne zrodla, - wyjasnic zastosowanie TXT, JSON, hosts i RPZ, - wskazac, jak lista domen moze zostac uzyta w ochronie organizacji. PYTANIE KONTROLNE: Co jest bardziej wiarygodne: pojedynczy wynik jednego narzedzia czy zgodne informacje z kilku niezaleznych zrodel wraz z kontekstem? ====================================================================== DZIEN 3 - AUDYT DNS I BEZPIECZENSTWA POCZTY Czas: 2 godziny lekcyjne ====================================================================== CEL DNIA: Zrozumiec, ze bezpieczenstwo domeny obejmuje nie tylko strone WWW. Sprawdzimy delegacje DNS, DNSSEC, serwery nazw, MX oraz mechanizmy SPF, DKIM i DMARC. ---------------------------------------------------------------------- WPROWADZENIE TEORETYCZNE - DNS ---------------------------------------------------------------------- DNS jest infrastruktura, ktora odpowiada m.in. za: - tlumaczenie nazw na adresy, - wskazanie serwerow DNS, - wskazanie serwerow pocztowych, - publikowanie polityk bezpieczenstwa poczty, - DNSSEC. Podstawowe rekordy: A / AAAA - adresy IPv4 / IPv6 NS - serwery nazw SOA - informacje administracyjne o strefie MX - serwery pocztowe TXT - rozne dane tekstowe, m.in. SPF i DMARC DS/DNSKEY - elementy DNSSEC Zonemaster nie jest skanerem podatnosci strony WWW. Jego zadaniem jest ocena konfiguracji i dzialania DNS. ---------------------------------------------------------------------- CWICZENIE 1 - AUDYT DNS W ZONEMASTER Czas: ok. 25 minut ---------------------------------------------------------------------- Wejdz na: https://zonemaster.net/ Sprawdz: cert.pl Nastepnie wybierz druga znana domene publiczna, np.: mozilla.org wikipedia.org nask.pl ZADANIE: Dla kazdej domeny zanotuj: 1. czy test zostal zakonczony: 2. Basic: 3. Address: 4. Connectivity: 5. Consistency: 6. Delegation: 7. DNSSEC: 8. Nameserver: 9. Zone: 10. liczba lub najwazniejsze INFO/NOTICE/WARNING/ERROR: Wybierz minimum 2 komunikaty i przeczytaj ich opis. ODPOWIEDZ: 1. Czy WARNING zawsze oznacza podatnosc? 2. Czy ERROR zawsze oznacza, ze domena nie dziala? 3. Co oznacza fakt, ze domena ma poprawnie dzialajacy DNSSEC? 4. Dlaczego zgodnosc delegacji parent/child ma znaczenie? ---------------------------------------------------------------------- PO CWICZENIU - WNIOSEK ---------------------------------------------------------------------- Audyt DNS nie polega na tym, aby "miec same zielone pola". Trzeba rozumiec, czego dotyczy komunikat i jaki moze miec skutek. ---------------------------------------------------------------------- WPROWADZENIE TEORETYCZNE - POCZTA ---------------------------------------------------------------------- Phishing czesto wykorzystuje podszywanie sie pod nadawce. Trzy najwazniejsze mechanizmy: SPF Definiuje, jakie systemy lub adresy IP sa uprawnione do wysylania poczty dla domeny uzywanej w SMTP MAIL FROM. DKIM Dodaje kryptograficzny podpis do wiadomosci. Odbiorca pobiera klucz publiczny z DNS i weryfikuje podpis. DMARC Laczy SPF/DKIM z domena widoczna w polu From oraz definiuje polityke wobec wiadomosci, ktore nie przechodza sprawdzen. Najczestsze polityki DMARC: p=none - obserwacja / raportowanie p=quarantine - sugerowane skierowanie do spamu/kwarantanny p=reject - sugerowane odrzucenie Wazne: SPF moze przejsc poprawnie, a wiadomosc nadal moze podszywac sie pod inna domene widoczna w polu From. DMARC sprawdza takze alignment. ---------------------------------------------------------------------- CWICZENIE 2 - BEZPIECZNA POCZTA CERT POLSKA Czas: ok. 20 minut ---------------------------------------------------------------------- Wejdz na: https://bezpiecznapoczta.cert.pl/ Wykonaj opcje: "Sprawdz domene" Uzyj domeny wskazanej przez prowadzacego lub znanej domeny publicznej. Przy sprawdzaniu domeny narzedzie moze sprawdzic: - SPF - DMARC - SSL DKIM wymaga informacji z konkretnej wiadomosci, dlatego dokladniejszy test mozna wykonac przez wyslanie wiadomosci na adres testowy wskazany przez serwis. Jezeli prowadzacy udostepni skrzynke testowa: wykonaj rowniez test przez wyslanie e-maila. ZAPISZ: Domena: SPF: DMARC: SSL: DKIM, jezeli wykonano test wiadomosci: Najwazniejsza uwaga narzedzia: PYTANIA: 1. Dlaczego samo sprawdzenie domeny nie wystarcza do pelnej oceny DKIM? 2. Dlaczego domena, ktora nie wysyla poczty, takze powinna miec polityke ograniczajaca podszywanie sie pod nia? 3. Co daje polityka DMARC p=reject? ---------------------------------------------------------------------- CWICZENIE 3 - CZYTAMY PROSTE REKORDY Czas: ok. 15 minut ---------------------------------------------------------------------- Przyklad SPF: v=spf1 include:_spf.example.net ip4:192.0.2.10 -all Odpowiedz: 1. Co oznacza v=spf1? 2. Co moze oznaczac include? 3. Co oznacza ip4:192.0.2.10? 4. Co oznacza -all? Przyklad DMARC: v=DMARC1; p=reject; rua=mailto:dmarc@example.com; adkim=s; aspf=s Odpowiedz: 1. Jaka jest polityka? 2. Gdzie maja trafic raporty? 3. Co oznacza "s" przy adkim i aspf? 4. Czy taka polityka jest bardziej restrykcyjna niz p=none? DKIM: selector1._domainkey.example.com Odpowiedz: 1. Co oznacza selector1? 2. Po co wystepuje _domainkey? 3. Dlaczego bez znajomosci selectora trudno wykonac pelne sprawdzenie DKIM tylko na podstawie nazwy domeny? ---------------------------------------------------------------------- CWICZENIE 4 - ANALIZA NAGLOWKA E-MAIL Czas: ok. 20 minut ---------------------------------------------------------------------- WPROWADZENIE: To, co widzimy jako "Od:" w programie pocztowym, nie jest jedyna informacja o nadawcy. W naglowkach mozna znalezc m.in. Return-Path, Reply-To, DKIM-Signature, Received oraz Authentication-Results. Przeanalizuj: From: "Ksiegowosc" Reply-To: payment@billing.example Return-Path: Authentication-Results: mx.school.example; spf=pass smtp.mailfrom=mailer.example; dkim=pass header.d=mailer.example; dmarc=fail header.from=firma.example ZADANIE: 1. Jaki adres zobaczylby uzytkownik jako nadawce? 2. Gdzie pojdzie odpowiedz po uzyciu "Odpowiedz"? 3. Dla jakiej domeny przeszedl SPF? 4. Dla jakiej domeny przeszedl DKIM? 5. Dla jakiej domeny sprawdzany jest DMARC? 6. Dlaczego SPF=pass i DKIM=pass moga wystapic jednoczesnie z DMARC=fail? 7. Ktore elementy wymagaja szczegolnej uwagi? ---------------------------------------------------------------------- PODSUMOWANIE DNIA 3 ---------------------------------------------------------------------- Po dzisiejszych zajeciach powinienes umiec: - wykonac podstawowy audyt DNS w Zonemaster, - rozroznic DNSSEC, NS, SOA i MX, - wyjasnic role SPF, DKIM i DMARC, - wykonac podstawowy test domeny w Bezpieczna Poczta CERT Polska, - zinterpretowac podstawowe naglowki e-mail, - zrozumiec, dlaczego "SPF pass" nie zawsze oznacza poprawnego nadawce. PYTANIE KONTROLNE: Dlaczego DMARC jest waznym uzupelnieniem SPF i DKIM? ====================================================================== DZIEN 4 - OSINT, CERTIFICATE TRANSPARENCY, SECURITY HEADERS I MINI-AUDYT Czas: 2 godziny lekcyjne ====================================================================== CEL DNIA: Poznac kilka bezpiecznych technik OSINT, zobaczyc publiczny slad organizacji i polaczyc narzedzia z poprzednich dni w jeden prosty proces audytowy. ---------------------------------------------------------------------- WPROWADZENIE TEORETYCZNE - OSINT ---------------------------------------------------------------------- OSINT to pozyskiwanie i analiza informacji z publicznie dostepnych zrodel. W przypadku domen i organizacji przydatne moga byc: - wyszukiwarki, - WHOIS/RDAP, - Certificate Transparency, - archiwa stron, - publiczne dokumenty, - DNS, - publiczne profile organizacji, - naglowki HTTP. OSINT nie oznacza: - logowania sie na cudze konta, - omijania zabezpieczen, - socjotechniki wobec prawdziwych osob, - wykorzystywania znalezionych danych do ataku. ---------------------------------------------------------------------- CWICZENIE 1 - WHOIS/RDAP + CERTIFICATE TRANSPARENCY Czas: ok. 20 minut ---------------------------------------------------------------------- Wybierz domene wskazana przez prowadzacego. Sprawdz ja w: https://lookup.icann.org/ Nastepnie sprawdz logi Certificate Transparency, np.: https://crt.sh/ W crt.sh mozesz wyszukac: %.domena.example Dla prawdziwej domeny zastap "domena.example" wybrana domena. ZAPISZ: 1. rejestrator, jezeli jest widoczny: 2. data rejestracji, jezeli jest widoczna: 3. nameservery: 4. minimum 3 nazwy widoczne w Certificate Transparency: 5. czy wygladaja na subdomeny: 6. czy wszystkie musza nadal istniec: PYTANIA: 1. Dlaczego publiczne logi certyfikatow moga ujawniac nazwy subdomen? 2. Czy wpis w CT oznacza, ze usluga nadal dziala? 3. Czy CT jest pelnym i aktualnym spisem infrastruktury? ---------------------------------------------------------------------- CWICZENIE 2 - WYSZUKIWARKA I ARCHIWUM JAKO NARZEDZIA OSINT Czas: ok. 15 minut ---------------------------------------------------------------------- Wykorzystaj: site:domena.pl site:domena.pl filetype:pdf site:domena.pl "kontakt" site:domena.pl "regulamin" Nastepnie odwiedz: https://web.archive.org/ ZADANIE: Dla wybranej domeny znajdz: 1. jeden dokument PDF: 2. jedna podstrone kontaktowa: 3. informacje o organizacji: 4. starsza wersje strony w Internet Archive: 5. jedna informacje, ktora byla widoczna dawniej, a obecnie wyglada inaczej lub nie jest juz eksponowana: PYTANIE: Dlaczego dane usuniete z aktualnej strony nie zawsze znikaja z internetu? ---------------------------------------------------------------------- CWICZENIE 3 - SECURITY HEADERS Czas: ok. 15 minut ---------------------------------------------------------------------- WPROWADZENIE: Serwer WWW wysyla do przegladarki naglowki HTTP. Czesc z nich wplywa na bezpieczenstwo przegladania strony. Wejdz na: https://securityheaders.com/ Sprawdz jedna lub dwie znane domeny publiczne. Zwroc uwage na: - Content-Security-Policy - Strict-Transport-Security - X-Content-Type-Options - X-Frame-Options - Referrer-Policy - Permissions-Policy ZAPISZ: Domena: Ocena: Obecne naglowki: Brakujace naglowki: Ostrzezenia: PYTANIA: 1. Czy ocena A+ oznacza, ze cala aplikacja jest bezpieczna? 2. Czy ocena F oznacza automatycznie przejecie strony? 3. Co w rzeczywistosci ocenia to narzedzie? ---------------------------------------------------------------------- PO CWICZENIU - WNIOSEK ---------------------------------------------------------------------- Security Headers ocenia wybrane naglowki odpowiedzi HTTP. To cenny element audytu konfiguracji WWW, ale nie jest pelnym pentestem ani dowodem braku podatnosci. ====================================================================== CWICZENIE FINALNE - MINI-AUDYT DOMENY Czas: ok. 30-35 minut ====================================================================== CEL: Polaczyc narzedzia z czterech dni w jeden prosty proces analityczny. Prowadzacy wskazuje jedna publiczna domene. Nie wykonujemy aktywnych atakow ani skanowania podatnosci. Dla kazdego obszaru nadaj status: OK UWAGA RYZYKO NIE DOTYCZY / BRAK DANYCH ---------------------------------------------------------------------- SEKCJA A - TOZSAMOSC DOMENY I URL ---------------------------------------------------------------------- Domena: Czy nazwa wyglada poprawnie: Czy istnieja latwe do pomylenia elementy: Czy adres zawiera nietypowe subdomeny: STATUS: UZASADNIENIE: ---------------------------------------------------------------------- SEKCJA B - HTTPS I CERTYFIKAT ---------------------------------------------------------------------- HTTPS: Wystawca: Waznosc: Nazwa hosta zgodna z certyfikatem: Inne wazne nazwy/SAN: STATUS: UZASADNIENIE: ---------------------------------------------------------------------- SEKCJA C - VIRUSTOTAL ---------------------------------------------------------------------- Wynik domeny: Wynik URL: Kategorie: Relacje: Dane historyczne: STATUS: UZASADNIENIE: ---------------------------------------------------------------------- SEKCJA D - CERT POLSKA ---------------------------------------------------------------------- Czy domena znajduje sie na Liscie Ostrzezen: Czy wynik jest zgodny z VirusTotal: STATUS: UZASADNIENIE: ---------------------------------------------------------------------- SEKCJA E - DNS / ZONEMASTER ---------------------------------------------------------------------- Delegation: Nameserver: Consistency: DNSSEC: Zone: Najwazniejsze WARNING/ERROR: STATUS: UZASADNIENIE: ---------------------------------------------------------------------- SEKCJA F - POCZTA ---------------------------------------------------------------------- MX: SPF: DKIM, jezeli mozliwe do sprawdzenia: DMARC: Polityka DMARC: Wynik Bezpieczna Poczta CERT Polska: STATUS: UZASADNIENIE: ---------------------------------------------------------------------- SEKCJA G - CERTIFICATE TRANSPARENCY ---------------------------------------------------------------------- Widoczne nazwy/subdomeny: Czy cos wyglada na stara lub dodatkowa usluge: STATUS: UZASADNIENIE: ---------------------------------------------------------------------- SEKCJA H - SECURITY HEADERS ---------------------------------------------------------------------- Ocena: CSP: HSTS: X-Content-Type-Options: X-Frame-Options: Referrer-Policy: Permissions-Policy: STATUS: UZASADNIENIE: ---------------------------------------------------------------------- SEKCJA I - PODSTAWOWY OSINT ---------------------------------------------------------------------- Oficjalne informacje: Publiczne dokumenty: Archiwalne informacje: Profile organizacji: Czy znalezione dane zwiekszaja powierzchnie informacyjna organizacji: STATUS: UZASADNIENIE: ---------------------------------------------------------------------- SEKCJA J - OCENA KONCOWA ---------------------------------------------------------------------- Najmocniejsze elementy konfiguracji: 1. 2. 3. Elementy wymagajace uwagi: 1. 2. 3. Czy znalazles cos, co wymaga pilnej reakcji: TAK / NIE / BRAK DANYCH OGOLNA OCENA: OK / UWAGA / RYZYKO UZASADNIENIE W 3-5 ZDANIACH: ____________________________________________________________ ____________________________________________________________ ____________________________________________________________ ____________________________________________________________ ====================================================================== PODSUMOWANIE CALEGO BLOKU 4-DNIOWEGO ====================================================================== Po czterech dniach powinienes potrafic: - poprawnie czytac URL, - rozpoznawac podstawowe techniki phishingu, - rozumiec ograniczenia HTTPS, - sprawdzac certyfikat TLS, - analizowac URL, domene i hash pliku w VirusTotal, - korzystac z Listy Ostrzezen CERT Polska, - rozumiec zastosowanie RPZ i filtrowania domen, - wykonac podstawowy audyt DNS w Zonemaster, - wyjasnic SPF, DKIM i DMARC, - analizowac proste naglowki e-mail, - wykonac podstawowy OSINT domeny i organizacji, - korzystac z Certificate Transparency, - sprawdzac naglowki HTTP, - polaczyc wyniki kilku narzedzi w jedna ocene. NAJWAZNIEJSZA ZASADA: Nie pytaj: "Co pokazuje narzedzie?" Pytaj: "Co ten wynik oznacza, z czym moge go porownac i jaki wniosek moge uzasadnic na podstawie kilku niezaleznych informacji?" ====================================================================== OFICJALNE I WYKORZYSTANE NARZEDZIA ====================================================================== VirusTotal https://www.virustotal.com/ CERT Polska - Lista Ostrzezen https://cert.pl/lista-ostrzezen/ https://hole.cert.pl/domains/v2/domains.txt CERT Polska - Bezpieczna Poczta https://bezpiecznapoczta.cert.pl/ CERT Polska - wiedza o SPF, DKIM i DMARC https://wiedza.cert.pl/odpornosc-infrastruktury/bezpieczenstwo-uslug/poczta-spf-dkim-dmarc/ Zonemaster https://zonemaster.net/ ICANN Lookup https://lookup.icann.org/ Certificate Transparency https://crt.sh/ Internet Archive https://web.archive.org/ Security Headers https://securityheaders.com/ EICAR Anti-Malware Test File - informacje https://www.eicar.org/download-anti-malware-testfile/ ====================================================================== KONIEC ZESTAWU CWICZEN ======================================================================