Kali Linux i testy penetracyjne. Biblia - Helion

Tytuł oryginału: Kali Linux Penetration Testing Bible
ISBN: 978-83-283-9007-2
okładka: mi
Księgarnia: Helion
Książka będzie dostępna od czerwca 2022
Zobacz także:
- Jak zhakowa 125,00 zł, (10,00 zł -92%)
- Blockchain i kryptowaluty. Kurs video. Zdecentralizowane finanse od podstaw 118,90 zł, (11,89 zł -90%)
- Web scraping. Kurs video. Zautomatyzowane pozyskiwanie danych z sieci 126,36 zł, (13,90 zł -89%)
- GraphQL. Kurs video. Buduj nowoczesne API w Pythonie 153,64 zł, (16,90 zł -89%)
- Windows Media Center. Domowe centrum rozrywki 66,67 zł, (8,00 zł -88%)
Spis treści
Kali Linux i testy penetracyjne. Biblia -- spis treści
O autorze
O korektorze merytorycznym
Podziękowania
Wstęp
Rozdział 1. Praca z oknem terminala
- System plików w Kali Linux - Podstawowe polecenia okna terminala
- Okno terminala Tmux - Uruchamianie terminala Tmux
- Skróty klawiszowe w oknie terminala Tmux
- Zarządzanie sesjami terminala Tmux
- Nawigacja wewnątrz okna terminala Tmux
- Opis poleceń terminala Tmux
 
 
- Zarządzanie użytkownikami i grupami w systemie Kali Linux - Polecenia związane z zarządzaniem użytkownikami
- Polecenia związane z zarządzaniem grupami
- Zarządzanie hasłami w systemie Kali Linux
 
- Zarządzanie plikami i katalogami w systemie Kali Linux - Wyświetlanie plików i folderów
- Prawa dostępu
- Operacje na plikach w systemie Kali Linux
- Wyszukiwanie plików
- Kompresowanie plików
- Operowanie na katalogach w systemie Kali Linux
- Montowanie katalogów
- Praca z plikami tekstowymi w systemie Kali Linux
- Edytor vim kontra nano
- Wyszukiwanie i filtrowanie tekstu
 
- Połączenia z systemami zdalnymi - Protokół RDP
- Secure Shell
- Połączenie SSH z danymi uwierzytelniającymi
- Połączenia SSH bez używania hasła
 
- Zarządzanie systemem Kali Linux - Informacje o nazwie hosta systemu Linux
- Informacje o systemie operacyjnym Linux
- Informacje o sprzęcie
- Zarządzanie usługami
- Zarządzanie pakietami
- Zarządzanie procesami
 
- Połączenia sieciowe w systemie Kali Linux - Interfejs sieciowy - Zakresy adresów prywatnych IPv4
- Statyczne adresy IP
 
- DNS
- Wyświetlanie listy aktywnych połączeń
- Przesyłanie plików
 
- Interfejs sieciowy 
- Podsumowanie
Rozdział 2. Skrypty powłoki bash
- Tworzenie prostych skryptów powłoki bash
- Wyświetlanie informacji i danych na ekranie
- Zmienne - Zmienne zawierające polecenia
 
- Parametry wywołania skryptów
- Dane wejściowe wprowadzane przez użytkownika
- Funkcje
- Instrukcje warunkowe i pętle - Instrukcje warunkowe
- Pętle - Iteracje po plikach
 
 
- Podsumowanie
Rozdział 3. Skanowanie hostów sieciowych
- Podstawy działania sieci - Protokoły sieciowe - TCP
- UDP
- Inne protokoły sieciowe
 
- Adresowanie IP - IPv4
- Podsieci i notacja CIDR
- IPv6
- Numery portów
 
 
- Protokoły sieciowe 
- Skanowanie sieci - Identyfikacja aktywnych hostów w sieci - Ping
- ARP
- Nmap
 
- Skanowanie portów i identyfikacja usług - Skanowanie portów - TCP SYN Scan
- Skanowanie portów - UDP Scan
 
- Podstawy skanowania z użyciem programu Nmap
- Identyfikacja usług
- OS Fingerprinting - identyfikacja systemu operacyjnego
- Silnik skryptowy skanera Nmap - NSE Category Scan
- Argumenty wywołania skryptów NSE
 
 
- Identyfikacja aktywnych hostów w sieci 
- Wyliczanie DNS - DNS brute force
- Transfer stref DNS
- Narzędzia do wyszukiwania subdomen DNS - Pakiet Fierce
 
 
- Podsumowanie
Rozdział 4. Zbieranie informacji z internetu
- Pasywne zbieranie informacji i rekonesans - Wyszukiwarki internetowe - Wyszukiwarka Shodan
- Zapytania Google
 
- Zbieranie informacji przy użyciu systemu Kali Linux - Baza danych Whois
- TheHarvester
- DMitry
- Maltego
 
 
- Wyszukiwarki internetowe 
- Podsumowanie
Rozdział 5. Ataki socjotechniczne
- Ataki typu spear phishing - Wysyłanie wiadomości e-mail - Pakiet SET
- Wysyłanie wiadomości e-mail przy użyciu języka Python
- Kradzież poświadczeń
 
 
- Wysyłanie wiadomości e-mail 
- Ładunki i procesy nasłuchujące - Czym się różni powłoka Bind Shell od Reverse Shell - Powłoka dowiązana (Bind Shell)
- Powłoka odwrócona (Reverse Shell)
- Tworzenie połączenia typu Reverse Shell za pomocą pakietu SET
 
 
- Czym się różni powłoka Bind Shell od Reverse Shell 
- Ataki socjotechniczne z wykorzystaniem klucza USB Rubber Ducky - Praktyczny przykład nawiązania połączenia Reverse Shell z wykorzystaniem klucza USB Rubber Ducky i powłoki PowerShell
- Generowanie skryptu powłoki PowerShell - Uruchamianie listenera
- Hostowanie skryptu powłoki PowerShell
- Uruchomienie powłoki PowerShell
- Pobieranie i uruchamianie skryptu powłoki PowerShell
- Odwrócona powłoka
- Replikacja ataku przy użyciu klucza USB Rubber Ducky
 
 
- Podsumowanie
Rozdział 6. Zaawansowane wyszukiwanie usług sieciowych
- Protokoły przesyłania plików - FTP (port 21) - Scenariusze ataków na serwer FTP
- Jak wyszukiwać działające usługi sieciowe?
- Skanowanie w poszukiwaniu usług
- Zaawansowane skanowanie z wykorzystaniem skryptów Nmapa
- Inne rodzaje ataków typu brute force
 
- SSH (port 22) - Scenariusze ataków na serwer SSH
- Zaawansowane skanowanie z wykorzystaniem skryptów Nmapa
- Atak brute force na SSH za pomocą pakietu Hydra
- Zaawansowane ataki typu brute force
 
- Telnet (port 23) - Scenariusze ataków na serwer Telnet
- Wykrywanie i identyfikacja usługi telnet
- Skanowanie w poszukiwaniu usługi
- Zaawansowane skanowanie z wykorzystaniem skryptów Nmapa
- Atak brute force za pomocą pakietu Hydra
 
 
- FTP (port 21) 
- Protokoły poczty elektronicznej - Protokół SMTP (port 25) - Podstawowe skanowanie Nmapem
- Zaawansowane skanowanie z użyciem skryptów Nmapa
- Wyliczanie użytkowników
 
- Protokoły POP3 (Port 110) i IMAP4 (Port 143) - Atak brute force na konta e-mail POP3
 
 
- Protokół SMTP (port 25) 
- Protokoły baz danych - Microsoft SQL Server (port 1433)
- Serwer bazy danych Oracle (port 1521)
- Baza danych MySQL (port 3306)
 
- Protokoły CI/CD - Docker (port 2375)
- Jenkins (Port 8080/50000)
- Atak brute force na portal WWW przy użyciu Hydry - Krok 1 - ustaw proxy
- Krok 2 - przechwytywanie żądania logowania
- Krok 3 - wyciąganie danych z formularza i atak brute force za pomocą Hydry
 
 
- Protokoły sieciowe na portach 80/443
- Protokoły wykorzystywane do zdalnych połączeń GUI - RDP (port 3389) - Atak typu brute force na usługę RDP
 
- VNC (Port 5900)
 
- RDP (port 3389) 
- Protokoły współdzielenia plików - SMB (port 445) - Atak typu brute force na SMB
 
- SNMP (port UDP 161) - Wyliczanie SNMP
 
 
- SMB (port 445) 
- Podsumowanie
Rozdział 7. Faza eksploracji
- Ocena podatności - Przebieg procesu oceny podatności
- Skanowanie podatności za pomocą pakietu OpenVAS - Instalacja pakietu OpenVAS
- Skanowanie przy użyciu OpenVAS
 
- Wyszukiwanie exploitów - SearchSploit
 
 
- Wykorzystywanie podatności i luk w zabezpieczeniach usług - Wykorzystywanie podatności usługi FTP - Logowanie do serwera FTP
- Zdalne wykonanie kodu
- Wywoływanie sesji powłoki
 
- Wykorzystywanie podatności usługi SSH - Logowanie do SSH
 
- Wykorzystywanie podatności usługi Telnet - Logowanie przez telnet
- Wyszukiwanie informacji przesyłanych otwartym tekstem
 
- Wykorzystywanie podatności serwera poczty elektronicznej
- Wykorzystywanie podatności Dockera - Testowanie połączenia z Dockerem
- Tworzenie nowego zdalnego kontenera Kali
- Uruchamianie powłoki w kontenerze Kali
- Wykorzystywanie podatności hosta Docker
 
- Wykorzystywanie podatności Jenkinsa
- Odwrócone powłoki - Wykorzystanie powłok z pakietu Metasploit
 
- Wykorzystywanie podatności protokołu SMB - Uzyskiwanie dostępu do udziałów SMB
- Exploit SMB Eternal Blue
 
 
- Wykorzystywanie podatności usługi FTP 
- Podsumowanie
Rozdział 8. Podatności i luki w zabezpieczeniach aplikacji internetowych
- Podatności w aplikacjach internetowych - Instalacja pakietu Mutillidae - Instalacja serwera WWW Apache
- Konfiguracja zapory sieciowej
- Instalacja PHP
- Instalacja i konfiguracja bazy danych
- Instalacja pakietu Mutillidae
 
- Podatności typu XSS (Cross-Site Scripting) - Podatność typu Reflected XSS
- Podatność typu Stored XSS
- Wykorzystywanie podatności XSS przy użyciu nagłówka
- Omijanie walidacji w skryptach JavaScript
 
- Wstrzykiwanie kodu SQL - Zapytania do bazy danych
- Obchodzenie strony logowania
- Wykonywanie poleceń w bazie danych za pomocą SQLi
- Automatyzacja wstrzykiwania kodu SQL za pomocą programu SQLMap
- Testowanie podatności na ataki SQL Injection
 
- Wstrzykiwanie poleceń
- Podatność na dołączanie plików - LFI - dołączanie plików lokalnych
- RFI - dołączanie plików zdalnych
 
- Podatności typu CSRF - Przebieg ataku z punktu widzenia napastnika
- Przebieg ataku z punktu widzenia ofiary
 
- Przesyłanie plików - Proste przesyłanie plików
- Omijanie walidacji
- Kodowanie
 
- Lista OWASP Top 10
 
- Instalacja pakietu Mutillidae 
- Podsumowanie
Rozdział 9. Testy penetracyjne aplikacji sieciowych i cykl tworzenia bezpiecznego oprogramowania
- Wyszukiwanie i wykorzystywanie podatności aplikacji sieciowych - Burp Suite Pro - Testy penetracyjne aplikacji sieciowych z użyciem pakietu Burp Suite
 
- Jeszcze więcej wyliczania - Nmap
- Crawling
- Ocena podatności na zagrożenia
 
- Lista kontrolna wspomagająca przeprowadzanie testów penetracyjnych aplikacji sieciowych - Wspólna lista kontrolna
- Lista kontrolna dla stron specjalnych
 
 
- Burp Suite Pro 
- SDLC - cykl tworzenia i rozwoju bezpiecznego oprogramowania - Faza analizy i planowania - Modelowanie zagrożeń aplikacji
- Aktywa
- Punkty wejścia
- Elementy i podmioty trzecie
- Poziomy zaufania
- Diagram przepływu danych
 
- Faza tworzenia/rozwoju
- Faza testowania
- Wdrożenie w środowisku produkcyjnym
 
- Faza analizy i planowania 
- Podsumowanie
Rozdział 10. Eskalacja uprawnień w systemie Linux
- Wprowadzenie do exploitów jądra systemu i błędów w konfiguracji
- Exploity jądra systemu - Exploit jądra - Dirty Cow
 
- Wykorzystywanie uprawnienia SUID
- Nadpisywanie pliku passwd
- CRON - eskalacja uprawnień zadań - Podstawy CRON - Crontab
- Anacrontab
 
- Wyliczanie zadań i wykorzystywanie podatności CRON-a
 
- Podstawy CRON 
- Plik sudoers - Eskalacja uprawnień z wykorzystaniem sudo - Wykorzystanie polecenia Find
- Edycja pliku sudoers
 
 
- Eskalacja uprawnień z wykorzystaniem sudo 
- Wykorzystywanie działających usług
- Zautomatyzowane skrypty
- Podsumowanie
Rozdział 11. Eskalacja uprawnień w systemie Windows
- Pozyskiwanie informacji o systemie Windows - Informacje o systemie
- Architektura systemu Windows
- Wyświetlanie listy napędów dyskowych
- Lista zainstalowanych aktualizacji
- Whoami, czyli kim jestem?
- Lista użytkowników i grup
- Informacje o sieci
- Wyświetlanie niepoprawnych (słabych) uprawnień
- Wyświetlanie listy zainstalowanych programów
- Wyświetlanie listy zadań i procesów
 
- Przesyłanie plików - Cel - komputer z systemem Windows
- Cel - komputer z systemem Linux
 
- Wykorzystywanie podatności i luk w zabezpieczeniach systemu Windows - Exploity dla jądra systemu Windows - Sprawdzanie wersji systemu operacyjnego
- Wyszukiwanie odpowiedniego exploita
- Uruchamianie exploita i uzyskanie powłoki na prawach administratora
- Eskalacja uprawnień - magia Metasploita
 
- Wykorzystywanie podatności i luk w zabezpieczeniach aplikacji Windows - Uruchamianie poleceń w kontekście innego użytkownika systemu Windows
- Program PSExec
 
- Wykorzystywanie podatności i luk w zabezpieczeniach usług w systemie Windows - Interakcja z usługami Windows
- Nieprawidłowo skonfigurowane uprawnienia usług
- Nadpisywanie pliku wykonywalnego usługi
- Niepoprawnie skonfigurowana ścieżka usługi
- Nieprawidłowe uprawnienia w rejestrze
 
- Wykorzystywanie podatności i luk w zabezpieczeniach zaplanowanych zadań
- Zautomatyzowane narzędzia wspomagające eskalację uprawnień - PowerUp
- WinPEAS
 
 
- Exploity dla jądra systemu Windows 
- Podsumowanie
Rozdział 12. Pivoting i ruch poprzeczny
- Wyodrębnianie skrótów haseł w systemie Windows - Skróty NTLM haseł w systemie Windows - Plik SAM i wyodrębnianie skrótów haseł
- Korzystanie ze skrótów haseł
 
- Mimikatz
- Pobieranie skrótów haseł z Active Directory
- Ponowne wykorzystanie haseł i ich skrótów - Atak z przekazywaniem skrótu hasła
 
 
- Skróty NTLM haseł w systemie Windows 
- Pivoting z przekierowywaniem portów - Koncepcje przekierowywania portów
- Tunelowanie SSH i lokalne przekierowywanie portów
- Przekierowywanie portów zdalnych przy użyciu SSH
- Dynamiczne przekierowywanie portów - Dynamiczne przekierowywanie portów przy użyciu SSH
 
 
- Podsumowanie
Rozdział 13. Kryptografia i łamanie skrótów haseł
- Podstawy kryptografii - Podstawy haszowania - Jednokierunkowe funkcje skrótu
- Zastosowania funkcji skrótu
- Algorytmy haszujące
- Algorytm MD5
 
- Algorytm SHA
- Haszowanie haseł - Zabezpieczanie haseł za pomocą haszowania
 
- Algorytm HMAC
- Podstawy szyfrowania - Szyfrowanie symetryczne
- Algorytm AES
 
- Szyfrowanie asymetryczne - Algorytm RSA
 
 
- Podstawy haszowania 
- Łamanie haseł za pomocą programu Hashcat - Testowanie wydajności
- Łamanie haszy w praktyce
- Tryby ataku - Tryb prosty
- Atak kombinatoryczny
- Maski i ataki typu brute force
- Ataki typu brute force
- Ataki hybrydowe
 
- Łamanie skrótów - jak to wygląda w praktyce
 
- Podsumowanie
Rozdział 14. Raportowanie
- Znaczenie raportów w testach penetracyjnych
- Ocena poziomu krytyczności podatności i luk w zabezpieczeniach - CVSS v3.1 - otwarty system oceny podatności na zagrożenia
 
- Prezentacja raportu - Strona tytułowa
- Dzienniki zmian
- Podsumowanie raportu
- Sekcja podatności
 
- Podsumowanie
Rozdział 15. Język asembler i inżynieria odwrotna
- Rejestry procesora - Rejestry ogólnego przeznaczenia
- Rejestry indeksowe
- Rejestry wskaźnikowe
- Rejestry segmentów
- Rejestr flag
 
- Instrukcje języka asembler - Kolejność bajtów - little endian
 
- Typy danych
- Segmenty pamięci
- Tryby adresowania
- Przykład inżynierii odwrotnej - Pakiet Visual Studio Code dla języka C/C++
- Pakiet Immunity Debugger do inżynierii odwrotnej
 
- Podsumowanie
Rozdział 16. Przepełnienia bufora i stosu
- Jak działa przepełnienie stosu? - Jak działa stos? - Instrukcja PUSH
- Instrukcja POP
- Przykład programu w języku C
- Analiza bufora za pomocą programu Immunity Debugger
- Przepełnienie stosu
- Mechanizm przepełnienia stosu
 
 
- Jak działa stos? 
- Wykorzystywanie podatności na przepełnienie stosu - Wyposażenie naszego laboratorium - Aplikacja podatna na przepełnienie bufora
 
- Faza 1. Testowanie - Testowanie szczęśliwej ścieżki
- Testowanie awarii serwera
 
- Faza 2. Rozmiar bufora - Tworzenie wzorca
- Lokalizacja przesunięcia
 
- Faza 3. Sterowanie wskaźnikiem EIP - Dodawanie instrukcji JMP
 
- Faza 4. Wstrzyknięcie ładunku i uzyskanie zdalnej powłoki - Generowanie ładunku
- Niepoprawne znaki
- Shellcode w skrypcie Pythona
 
 
- Wyposażenie naszego laboratorium 
- Podsumowanie
Rozdział 17. Programowanie w języku Python
- Podstawy języka Python
- Uruchamianie skryptów języka Python
- Debugowanie skryptów w języku Python - Instalowanie pakietu Visual Studio Code w systemie Kali Linux
 
- Programowanie w języku Python
- Podstawowa składnia poleceń języka Python - Wiersz shebang w języku Python
- Komentarze w języku Python
- Wcięcia wierszy i importowanie modułów
- Wprowadzanie danych i wyświetlanie informacji na ekranie - Wyświetlanie argumentów przekazanych w wierszu wywołania
 
 
- Zmienne - Zmienne numeryczne
- Operatory arytmetyczne
- Ciągi znaków - Formatowanie ciągów znaków
- Funkcje tekstowe
 
- Listy - Odczytywanie wartości z listy
- Aktualizowanie elementów listy
- Usuwanie elementów listy
 
- Krotki
- Słowniki
 
- Inne techniki programowania w języku Python - Funkcje - Zwracanie wartości
- Argumenty opcjonalne
 
- Zmienne globalne - Zmiana wartości zmiennych globalnych
 
- Instrukcje warunkowe - Instrukcja if-else
 
- Operatory porównania
- Pętle - Pętla while
- Pętla for
 
- Zarządzanie plikami
- Obsługa wyjątków
- Znaki specjalne - Niestandardowe obiekty w języku Python
 
 
- Funkcje 
- Podsumowanie
Rozdział 18. Automatyzacja testów penetracyjnych za pomocą Pythona
- Program Pentest Robot - Sposób działania aplikacji - Pakiety dla języka Python
- Uruchamianie aplikacji
- Walidacja danych wejściowych
- Refaktoryzacja kodu
- Skanowanie w poszukiwaniu aktywnych hostów
- Skanowanie portów i usług
- Atak na dane uwierzytelniające i zapisywanie wyników działania
 
 
- Sposób działania aplikacji 
- Podsumowanie
Dodatek A. Kali Linux Desktop w skrócie
- Pobieranie i uruchamianie maszyny wirtualnej z systemem Kali Linux - Pierwsze uruchomienie maszyny wirtualnej
 
- Pulpit środowiska Xfce w systemie Kali Linux  - Menu interfejsu graficznego Xfce w systemie Kali Linux - Pasek wyszukiwania
- Menu Favorites
- Menu Usual Applications
- Inne polecenia menu
 
- Menedżer ustawień środowiska Xfce - Zaawansowana konfiguracja ustawień sieci
- Okno Appearance
- Okno Desktop
- Okno Display
- File Manager
- Okno Keyboard
- Okno MIME Type Editor
- Okno Mouse and Touchpad
- Panel górny
- Okno Workspaces
- Okno Window Manager
 
- Praktyczny przykład dostosowywania pulpitu do własnych potrzeb - Edycja górnego panelu
- Dodawanie nowego panelu dolnego
- Zmiana wyglądu pulpitu
 
- Instalowanie systemu Kali Linux od podstaw
 
- Menu interfejsu graficznego Xfce w systemie Kali Linux 
- Podsumowanie
Dodatek B. Tworzenie środowiska laboratoryjnego przy użyciu Dockera
- Technologia Docker - Podstawy pracy z Dockerem
- Instalacja Dockera
- Obrazy i rejestry obrazów
- Kontenery - Dockerfile
- Woluminy
- Praca w sieci
 
- Kontener Mutillidae
 
- Podsumowanie
Skorowidz





