Bezpieczny system w praktyce
Wy窺za szko豉 hackingu i testy penetracyjne
Chcesz sprawdzi�, czy Tw鎩 system jest bezpieczny? Zaatakuj go!
Najskuteczniej zrobisz to z wykorzystaniem test闚 penetracyjnych. W trakcie tych pr鏏
pentesterzy (osoby prowadz帷e testy penetracyjne) pr鏏uj� wcieli� si� w rol�
w豉mywacza i prze豉ma� zabezpieczenia testowanego systemu. Je瞠li system si� obroni,
to oczywi軼ie zda test, ale nie przestawaj by� czujny! Je瞠li nie — otrzymasz szczeg馧owy
raport ze wskazaniem, kt鏎e obszary s� podatne na atak oraz jak zwi瘯szy�
bezpiecze雟two Twojego systemu.
Je瞠li interesujesz si� bezpiecze雟twem system闚 informatycznych i chcia豚y�
wcieli� si� w rol� pentestera, ta ksi捫ka wprowadzi Ci� w 鈍iat test闚
penetracyjnych. Si璕nij po ni� i przekonaj si�, jak przygotowa� 鈔odowisko do test闚
oraz nauki. W kolejnych rozdzia豉ch poznasz Kali Linux (specjaln� dystrybucj� Linuksa),
a tak瞠 nauczysz si� tworzy� skrypty Bash oraz Python. Gdy ju� poznasz podstawy, czas
zabra� si� za analiz� pierwszego systemu. Cz窷� druga ksi捫ki zosta豉
po鈍i璚ona temu tematowi. Zobaczysz, jak zbiera� informacje o systemie, wyszukiwa�
podatno軼i na atak i luki w zabezpieczeniach oraz przechwytywa� ruch sieciowy. Cz窷�
trzecia ksi捫ki skupia si� na przeprowadzaniu ataku. Odkryjesz, jak atakowa� has豉,
omija� programy antywirusowe, prowadzi� ataki socjotechniczne, weryfikowa� aplikacje
internetowe oraz sieci bezprzewodowe. Na sam koniec nauczysz si� tworzy� exploity oraz
testowa� bezpiecze雟two urz康ze� mobilnych. Ksi捫ka ta jest doskona造m 廝鏚貫m
informacji, kt鏎e b造skawicznie wprowadzi Ci� w 鈍iat test闚 penetracyjnych.
Dzi瘯i tej ksi捫ce:
poznasz elementarz pentestera
przygotujesz swoje 鈔odowisko pracy
opanujesz dystrybucj� Linuksa — Kali Linux
nauczysz si� tworzy� skrypty
przygotujesz si� i przeprowadzisz atak na weryfikowany system informatyczny
pewnie wkroczysz w pasjonuj帷y 鈍iat test闚 penetracyjnych
S這wo wst瘼ne (17)
Podzi瘯owania (21)
Wprowadzenie (23)
- Kilka s堯w podzi瘯owania (24)
- Kilka s堯w o ksi捫ce (25)
- Cz窷� I. Podstawy (25)
- Cz窷� II. Przygotowania (26)
- Cz窷� III. Ataki (26)
- Cz窷� IV. Tworzenie exploit闚 (27)
- Cz窷� V. Ataki na urz康zenia mobilne (28)
0. Elementarz test闚 penetracyjnych (29)
- Etapy test闚 penetracyjnych (30)
- Faza wst瘼na (31)
- Zbieranie informacji (32)
- Mapowanie zagro瞠� (33)
- Wykrywanie i analiza podatno軼i (33)
- Atak (33)
- Pow豉maniowa eksploracja skompromitowanego systemu (33)
- Raportowanie (34)
- Podsumowanie (36)
I. PODSTAWY
1. Tworzenie wirtualnego 鈔odowiska testowego (39)
- Instalowanie pakietu VMware (39)
- Instalacja i konfiguracja systemu Kali Linux (40)
- Konfiguracja po陰cze� sieciowych maszyny wirtualnej (44)
- Instalowanie pakietu Nessus (48)
- Instalowanie dodatkowych pakiet闚 oprogramowania (52)
- Instalowanie emulator闚 systemu Android (54)
- SPF - Smartphone Pentest Framework (60)
- Instalacja wirtualnych cel闚 ataku (61)
- Tworzenie maszyny-celu z systemem Windows XP (62)
- VMware Player w systemie Microsoft Windows (62)
- VMware Fusion w systemie Mac OS (65)
- Instalowanie i aktywacja systemu Windows (65)
- Instalowanie pakietu VMware Tools (68)
- Wy陰czanie zapory sieciowej systemu Windows XP (70)
- Ustawianie hase� dla kont u篡tkownik闚 (70)
- Ustawianie statycznego adresu IP (71)
- Konfiguracja systemu Windows XP do pracy jak w domenie (73)
- Instalowanie oprogramowania podatnego na ataki (75)
- Instalowanie pakiet闚 Immunity Debugger oraz Mona (81)
- Tworzenie maszyny-celu z systemem Ubuntu 8.10 (82)
- Tworzenie maszyny-celu z systemem Windows 7 (83)
- Tworzenie konta u篡tkownika (83)
- Wy陰czanie automatycznego instalowania aktualizacji (85)
- Ustawianie statycznego adresu IP (85)
- Dodawanie kolejnego interfejsu sieciowego (87)
- Instalowanie dodatkowego oprogramowania (88)
- Podsumowanie (90)
2. Praca z systemem Kali Linux (91)
- Wiersz polece� systemu Linux (92)
- System plik闚 w Linuksie (92)
- Dokumentacja polece� - strony podr璚znika man (93)
- Uprawnienia u篡tkownik闚 (94)
- Dodawanie kont u篡tkownik闚 (95)
- Dodawanie konta u篡tkownika do pliku sudoers (96)
- Prze陰czanie kont u篡tkownik闚 i korzystanie z polecenia sudo (96)
- Tworzenie nowych plik闚 i katalog闚 (97)
- Kopiowanie, przenoszenie i usuwanie plik闚 (97)
- Dodawanie tekstu do pliku (98)
- Do陰czanie tekstu do pliku (99)
- Prawa dost瘼u do plik闚 (99)
- Edytowanie plik闚 (100)
- Wyszukiwanie tekstu (101)
- Edytowanie plik闚 przy u篡ciu edytora vi (101)
- Przetwarzanie danych (102)
- Zastosowanie polecenia grep (103)
- Zastosowanie polecenia sed (104)
- Dopasowywanie wzorc闚 za pomoc� polecenia awk (104)
- Zarz康zanie zainstalowanymi pakietami oprogramowania (105)
- Procesy i us逝gi (106)
- Zarz康zanie po陰czeniami sieciowymi (106)
- Ustawianie statycznego adresu IP (107)
- Przegl康anie po陰cze� sieciowych (108)
- Netcat - uniwersalne narz璠zie do po陰cze� TCP/IP (108)
- Sprawdzanie, czy system zdalny nas逝chuje na danym porcie (109)
- Proces nas逝chuj帷y polece� pow這ki (110)
- "Wypychanie" pow這ki do procesu nas逝chuj帷ego (111)
- Automatyzacja zada� za pomoc� procesu cron (112)
- Podsumowanie (113)
3. Programowanie (115)
- Skrypty pow這ki bash (115)
- Polecenie ping (115)
- Prosty skrypt pow這ki bash (116)
- Uruchamianie skryptu (117)
- Dodawanie nowych mo磧iwo軼i za pomoc� polecenia if (117)
- P皻la for (118)
- Zwi瘯szanie przejrzysto軼i wynik闚 dzia豉nia (120)
- Skrypty w j瞛yku Python (123)
- ㄠczenie z wybranym portem sieciowym (124)
- Instrukcja if w j瞛yku Python (124)
- Pisanie i kompilowanie program闚 w j瞛yku C (125)
- Podsumowanie (127)
4. Pakiet Metasploit Framework (129)
- Uruchamianie pakietu Metasploit (131)
- Wyszukiwanie modu堯w pakietu Metasploit (132)
- Baza modu堯w pakietu Metasploit (133)
- Wbudowane polecenie search (134)
- Ustawianie opcji modu逝 exploita (137)
- Opcja RHOST (138)
- Opcja RPORT (138)
- Opcja SMBPIPE (138)
- Opcja Exploit Target (139)
- ζdunki (kod pow這ki) (140)
- Wyszukiwanie kompatybilnych 豉dunk闚 (140)
- Przebieg testowy (141)
- Rodzaje pow這k (142)
- Bind shell (142)
- Reverse shell (143)
- R璚zne wybieranie 豉dunku (143)
- Interfejs wiersza polece� Msfcli (145)
- Uzyskiwanie pomocy (146)
- Wy鈍ietlanie opcji (146)
- ζdunki (147)
- Tworzenie samodzielnych 豉dunk闚 za pomoc� narz璠zia Msfvenom (148)
- Wybieranie 豉dunku (149)
- Ustawianie opcji (149)
- Wybieranie formatu 豉dunku (150)
- Dostarczanie 豉dunk闚 (151)
- Zastosowanie modu逝 multi/handler (151)
- Zastosowanie dodatkowych modu堯w (153)
- Podsumowanie (155)
II. PRZYGOTOWANIA
5. Zbieranie informacji (159)
- OSINT - bia造 wywiad (160)
- Netcraft (160)
- Zapytania whois (161)
- Zapytania DNS (162)
- Poszukiwanie adres闚 poczty elektronicznej (165)
- Maltego (166)
- Skanowanie port闚 (170)
- R璚zne skanowanie port闚 (170)
- Skanowanie port闚 przy u篡ciu programu Nmap (172)
- Podsumowanie (180)
6. Wyszukiwanie podatno軼i i luk w zabezpieczeniach (181)
- Od skanu z detekcj� wersji do wykrycia potencjalnej luki w zabezpieczeniach (182)
- Nessus (182)
- Karta Policies - tworzenie polityki skanowania Nessusa (183)
- Skanowanie za pomoc� Nessusa (186)
- Kilka s堯w na temat rankingu podatno軼i i luk w zabezpieczeniach (189)
- Dlaczego powiniene� u篡wa� skaner闚 podatno軼i? (189)
- Eksportowanie wynik闚 skanowania (190)
- Odkrywanie podatno軼i i luk w zabezpieczeniach (191)
- NSE - Nmap Scripting Engine (191)
- Uruchamianie wybranego skryptu NSE (194)
- Modu造 skaner闚 pakietu Metasploit (196)
- Sprawdzanie podatno軼i na exploity za pomoc� polecenia check pakietu Metasploit (197)
- Skanowanie aplikacji internetowych (199)
- Pakiet Nikto (199)
- Ataki na pakiet XAMPP (200)
- Po鈍iadczenia domy郵ne (201)
- Samodzielna analiza podatno軼i (202)
- Eksploracja nietypowych port闚 (202)
- Wyszukiwanie nazw kont u篡tkownik闚 (204)
- Podsumowanie (205)
7. Przechwytywanie ruchu sieciowego (207)
- Przechwytywanie ruchu w sieci (208)
- Zastosowanie programu Wireshark (208)
- Przechwytywanie ruchu sieciowego (209)
- Filtrowanie ruchu sieciowego (210)
- Rekonstruowanie sesji TCP (211)
- Analiza zawarto軼i pakiet闚 (212)
- Ataki typu ARP Cache Poisoning (213)
- Podstawy protoko逝 ARP (214)
- Przekazywanie pakiet闚 IP (216)
- Zatruwanie tablicy ARP przy u篡ciu polecenia arpspoof (217)
- Zastosowanie zatruwania tablic ARP do podszywania si� pod domy郵n� bram� sieciow�
(219)
- Ataki typu DNS Cache Poisoning (220)
- Zatruwanie DNS - podstawy (222)
- Zatruwanie DNS przy u篡ciu polecenia dnsspoof (222)
- Ataki SSL (224)
- SSL - podstawy (224)
- Zastosowanie programu Ettercap do przeprowadzania atak闚 SSL MiTM (224)
- Ataki typu SSL Stripping (226)
- Zastosowanie programu SSLstrip (228)
- Podsumowanie (230)
III. ATAKI
8. Eksploracja 鈔odowiska celu (233)
- Powracamy do luki MS08-067 (234)
- ζdunki Metasploita (234)
- Meterpreter (236)
- Wykorzystywanie domy郵nych po鈍iadcze� logowania w dodatku WebDAV (237)
- Uruchamianie skrypt闚 na atakowanym serwerze WWW (238)
- Kopiowanie 豉dunku przygotowanego za pomoc� programu Msfvenom (239)
- Wykorzystywanie otwartej konsoli phpMyAdmin (241)
- Pobieranie plik闚 za pomoc� TFTP (243)
- Pobieranie wra磧iwych plik闚 (244)
- Pobieranie pliku konfiguracyjnego (244)
- Pobieranie pliku Windows SAM (245)
- Wykorzystywanie b喚d闚 przepe軟ienia bufora w innych aplikacjach (246)
- Wykorzystywanie luk w zabezpieczeniach innych aplikacji internetowych (248)
- Wykorzystywanie luk w zabezpieczeniach us逝g (250)
- Wykorzystywanie otwartych udzia堯w NFS (251)
- Podsumowanie (253)
9. Ataki na has豉 (255)
- Zarz康zanie has豉mi (255)
- Ataki typu online (256)
- Listy hase� (257)
- Odnajdowanie nazw kont u篡tkownik闚 i hase� przy u篡ciu programu Hydra (261)
- Ataki typu offline (263)
- Odzyskiwanie haszy hase� systemu Windows z pliku SAM (264)
- Pozyskiwanie zahaszowanych hase� z wykorzystaniem fizycznego dost瘼u do systemu (266)
- Algorytm LM kontra NTLM (269)
- Problem z haszami hase� w formacie LM (270)
- John the Ripper (271)
- ζmanie hase� systemu Linux (272)
- ζmanie hase� przechowywanych w plikach konfiguracyjnych (274)
- T璚zowe tablice (275)
- Us逝gi 豉mania hase� dost瘼ne w sieci (275)
- Pozyskiwanie hase� z pami璚i operacyjnej za pomoc� programu Windows Credentials
Editor (276)
- Podsumowanie (277)
10. Wykorzystywanie luk w zabezpieczeniach po stronie klienta (279)
- Omijanie filtrowania za pomoc� 豉dunk闚 pakietu Metasploit (280)
- ζdunek AllPorts (280)
- ζdunki HTTP i HTTPS (282)
- Ataki po stronie klienta (283)
- Luki w zabezpieczeniach przegl康arek sieciowych (284)
- Exploity dla plik闚 PDF (292)
- Luki w zabezpieczeniach 鈔odowiska Java (298)
- Modu� browser_autopwn (304)
- Winamp (307)
- Podsumowanie (309)
11. Ataki socjotechniczne (311)
- Pakiet SET - Social-Engineer Toolkit (313)
- Ukierunkowane ataki phishingowe (314)
- Wybieranie 豉dunku (315)
- Ustawianie opcji (315)
- Wybieranie nazwy generowanego pliku (316)
- Jeden czy wielu adresat闚? (316)
- Tworzenie szablonu wiadomo軼i e-mail (316)
- Definiowanie celu ataku (317)
- Tworzenie procesu nas逝chuj帷ego (318)
- Ataki z wykorzystaniem stron internetowych (319)
- Masowe ataki e-mailowe (322)
- Ataki wielop豉szczyznowe (325)
- Podsumowanie (326)
12. Omijanie program闚 antywirusowych (327)
- Trojany (328)
- Jak dzia豉j� aplikacje antywirusowe? (331)
- Microsoft Security Essentials (332)
- VirusTotal (333)
- Omijanie program闚 antywirusowych (334)
- Kodowanie (335)
- Niestandardowe metody kompilowania (338)
- Szyfrowanie plik闚 wykonywalnych przy u篡ciu programu Hyperion (341)
- Omijanie program闚 antywirusowych przy u篡ciu pakietu Veil-Evasion (343)
- Ukrywanie na widoku, czyli najciemniej jest pod latarni� (347)
- Podsumowanie (347)
13. Pow豉maniowa eksploracja skompromitowanego systemu (349)
- Meterpreter (350)
- Zastosowanie polecenia upload (351)
- Polecenie getuid (352)
- Inne polecenia Meterpretera (352)
- Skrypty Meterpretera (353)
- Modu造 Metasploita wspomagaj帷e pow豉maniow� eksploracj� systemu (354)
- Railgun (356)
- Lokalne podnoszenie uprawnie� u篡tkownika (356)
- Polecenie getsystem w systemie Windows (357)
- Modu造 typu Local Escalation dla systemu Windows (358)
- Omijanie mechanizmu UAC w systemie Windows (359)
- Podnoszenie uprawnie� w systemie Linux (361)
- Wyszukiwanie informacji w skompromitowanym systemie (366)
- Wyszukiwanie plik闚 (367)
- Przechwytywanie naci郾i皻ych klawiszy (keylogging) (367)
- Gromadzenie po鈍iadcze� logowania (368)
- Polecenie net (370)
- Inne sposoby (371)
- Sprawdzanie historii polece� pow這ki bash (372)
- Przechodzenie na kolejne systemy (372)
- PsExec (373)
- Uwierzytelnianie za pomoc� skr鏒闚 - ataki typu pass the hash (374)
- SSHExec (376)
- Tokeny personifikacji (377)
- Incognito (378)
- Modu� SMB Capture (379)
- Pivoting (382)
- Dodawanie tras za pomoc� polecenia route (384)
- Skanery port闚 w pakiecie Metasploit (384)
- Wykorzystywanie luk w zabezpieczeniach za po鈔ednictwem pivota (385)
- Modu� Socks4a i program ProxyChains (386)
- Utrzymywanie dost瘼u do skompromitowanego systemu (388)
- Tworzenie nowego konta u篡tkownika (388)
- Zapewnianie dost瘼u za pomoc� Metasploita (389)
- Tworzenie zada� cron w systemie Linux (391)
- Podsumowanie (392)
14. Testowanie aplikacji internetowych (393)
- Burp Proxy (394)
- Wstrzykiwanie kodu SQL (399)
- Testowanie podatno軼i na wstrzykiwanie kodu (400)
- Wykorzystywanie podatno軼i na ataki typu SQL Injection (401)
- Zastosowanie programu SQLMap (402)
- Wstrzykiwanie kodu XPath (403)
- Ataki typu LFI - Local File Inclusion (405)
- Ataki typu RFI - Remote File Inclusion (408)
- Wykonywanie polece� (409)
- Ataki typu XSS - Cross Site Scripting (411)
- Sprawdzanie podatno軼i na ataki typu reflected XSS (412)
- Przeprowadzanie atak闚 typu XSS za pomoc� pakietu Browser Exploitation Framework
(BeEF) (414)
- Ataki typu CSRF - Cross-Site Request Forgery (418)
- Skanowanie aplikacji internetowych za pomoc� programu w3af (419)
- Podsumowanie (421)
15. Ataki na sieci bezprzewodowe (423)
- Przygotowania (423)
- Wy鈍ietlanie listy dost瘼nych bezprzewodowych interfejs闚 sieciowych (425)
- Wyszukiwanie bezprzewodowych punkt闚 dost瘼owych (425)
- Tryb monitora (426)
- Przechwytywanie pakiet闚 (427)
- Sieci bezprzewodowe z otwartym dost瘼em (428)
- Protok馧 WEP (428)
- S豉bo軼i protoko逝 WEP (431)
- ζmanie kluczy szyfrowania WEP za pomoc� pakietu Aircrack-ng (432)
- Protok馧 WPA - WiFi Protected Access (437)
- Protok馧 WPA2 (438)
- Pod陰czanie klient闚 w sieciach WPA/WPA2 Enterprise (438)
- Pod陰czanie klient闚 w sieciach WPA/WPA2 Personal (439)
- Czteroetapowa negocjacja uwierzytelniania (439)
- ζmanie kluczy szyfrowania WPA/WPA2 (440)
- Protok馧 WPS - WiFi Protected Setup (444)
- Problemy z protoko貫m WPS (445)
- ζmanie PIN-u protoko逝 WPS za pomoc� programu Bully (445)
- Podsumowanie (445)
IV. TWORZENIE EXPLOIT紟
16. Przepe軟ienie bufora na stosie w systemie linux (449)
- Kilka s堯w o pami璚i (450)
- Przepe軟ienie bufora na stosie w systemie Linux (453)
- Program podatny na przepe軟ienie bufora na stosie (454)
- Wymuszanie awarii programu (456)
- Praca z debuggerem GDB (457)
- Wywo造wanie awarii programu w debuggerze GDB (463)
- Kontrolowanie wska幡ika EIP (465)
- Przejmowanie kontroli nad dzia豉niem programu (467)
- Kolejno嗆 (starsze雟two) bajt闚 (469)
- Podsumowanie (471)
17. Przepe軟ienie bufora na stosie w systemie Windows (473)
- Wyszukiwanie znanych podatno軼i i luk w zabezpieczeniach serwera War-FTP (474)
- Wymuszanie awarii programu (476)
- Lokalizowanie rejestru EIP (479)
- Wyszukiwanie offsetu adresu powrotu za pomoc� cyklicznego wzorca (480)
- Weryfikacja znalezionych offset闚 (484)
- Przejmowanie kontroli nad dzia豉niem programu (486)
- Uruchomienie pow這ki (492)
- Podsumowanie (498)
18. Zast瘼owanie strukturalnej obs逝gi wyj徠k闚 (499)
- Exploity nadpisuj帷e procedury SEH (500)
- Przekazywanie sterowania do procedur SEH (506)
- Wyszukiwanie ci庵u znak闚 exploita w pami璚i (506)
- POP POP RET (511)
- SafeSEH (512)
- Zastosowanie kr鏒kich skok闚 (516)
- Wybieranie 豉dunku (517)
- Podsumowanie (520)
19. Fuzzing, przenoszenie kodu exploit闚 i tworzenie modu堯w Metasploita (521)
- Fuzzowanie program闚 (522)
- Wyszukiwanie b喚d闚 poprzez analiz� kodu 廝鏚這wego (522)
- Fuzzowanie serwera TFTP (523)
- Pr鏏a wywo豉nia awarii programu (525)
- Dostosowywanie kodu publicznie dost瘼nych exploit闚 do w豉snych potrzeb (529)
- Wyszukiwanie adresu powrotu (532)
- Zamiana kodu pow這ki (533)
- Edytowanie kodu exploita (533)
- Tworzenie nowych modu堯w Metasploita (535)
- Tworzenie podobnego modu逝 exploita (538)
- Tworzenie kodu naszego exploita (538)
- Techniki zapobiegania atakom (543)
- Technika Stack Cookies (543)
- Mechanizm ASLR - randomizacja uk豉du przestrzeni adresowej (544)
- Mechanizm DEP - zapobieganie wykonywaniu danych (545)
- Obowi您kowe cyfrowe podpisywanie kodu (545)
- Podsumowanie (546)
V. ATAKI NA URZ.ZENIA MOBILNE
20. Pakiet Smartphone Pentest Framework (549)
- Wektory atak闚 na urz康zenia mobilne (550)
- Wiadomo軼i tekstowe (550)
- Po陰czenia NFC (551)
- Kody QR (552)
- Pakiet Smartphone Pentest Framework (552)
- Konfiguracja pakietu SPF (552)
- Emulatory systemu Android (554)
- Do陰czanie urz康ze� mobilnych (555)
- Budowanie aplikacji SPF dla systemu Android (555)
- Instalowanie aplikacji SPF (556)
- ㄠczenie serwera SPF z aplikacj� mobiln� (557)
- Ataki zdalne (559)
- Domy郵ne po鈍iadczenia logowania SSH na telefonach iPhone (559)
- Ataki po stronie klienta (561)
- Pow這ka po stronie klienta (561)
- Zdalna kontrola nad urz康zeniami mobilnymi za pomoc� mechanizmu USSD (563)
- Z這郵iwe aplikacje (565)
- Tworzenie z這郵iwych agent闚 SPF (566)
- Pow豉maniowa eksploracja urz康ze� mobilnych (573)
- Zbieranie informacji (573)
- Zdalne sterowanie (575)
- Pivoting z wykorzystaniem urz康ze� mobilnych (575)
- Podnoszenie uprawnie� (582)
- Podsumowanie (583)
Materia造 dodatkowe (585)
Skorowidz (591)
Pobieranie oprogramowania dla 鈔odowiska testowego (608)
608 stron, Format: 17.0x23.5cm, oprawa mi瘯ka
Ksi璕arnia nie dzia豉. Nie odpowiadamy na pytania i nie realizujemy zam闚ien. Do odwolania !.