Inhaltsverzeichnis

Alle Kapitel aufklappen
Alle Kapitel zuklappen
Materialien zum Buch
18
Vorwort
21
1 Einführung
23
1.1 Was ist Ethical Hacking?
23
1.2 Rechtliche Grundlagen
26
1.3 Schutzziele der Informationssicherheit
30
1.4 Motivation für Hacking-Angriffe
32
1.5 Arten von Hackern
34
1.6 Cyber Kill Chain
36
1.7 Hackerethik
38
1.7.1 Freier Zugang zu Computern und Informationen
39
1.7.2 Freiheit von Informationen
39
1.7.3 Skepsis gegenüber Autoritäten und Förderung von Dezentralisierung
39
1.7.4 Bewertung nach Leistung statt Status
40
1.7.5 Computer als Mittel künstlerischen Ausdrucks
40
1.7.6 Technologie zum Wohle der Gesellschaft
40
1.7.7 Kein Missbrauch fremder Daten
40
1.7.8 Öffentliche Daten nutzen – private Daten schützen
41
1.7.9 Abgrenzung zu illegalem Hacking
41
1.8 Advanced Persistent Threats (APT)
41
1.9 Common Vulnerabilities and Exposures (CVE)
43
1.10 Common Vulnerability Scoring System (CVSS)
46
1.11 Klassifikation von Angriffen
49
1.12 Das MITRE ATT&CK-Framework
50
1.13 Tactics, Techniques and Procedures (TTP)
56
1.14 Indicators of Compromise (IoC)
57
1.15 Sicherheitsmodelle
58
1.15.1 Defense-in-Depth
58
1.15.2 Das Diamanten-Modell
59
1.15.3 Zero-Trust-Modell
60
1.15.4 Die Pyramide des Schmerzes
61
1.16 Informationskrieg
63
1.17 Übungsfragen
65
2 TryHackMe
89
2.1 TryHackMe – der Überblick
89
2.2 Hacking-Labor
93
2.2.1 Ein Hacking-Labor aufbauen
93
2.2.2 VirtualBox und Kali Linux unter Windows installieren
95
2.2.3 VirtualBox und Kali Linux unter macOS installieren
98
2.2.4 Kali Linux einrichten
102
2.2.5 Eine OpenVPN-Verbindung einrichten
106
2.2.6 AttackBox
108
2.3 Hacking-Challenges starten und lösen
110
2.4 Unterstützung durch KI (ShellGPT)
116
3 Footprinting und Reconnaissance
121
3.1 Was ist Footprinting?
121
3.2 Aktives und passives Footprinting
123
3.2.1 Footprinting mit Suchmaschinen
123
3.2.2 Google-Hacking
128
3.2.3 Shodan
131
3.2.4 Reverse Image Search
133
3.2.5 Video-Suchmaschinen
135
3.2.6 Meta-Suchmaschinen
136
3.2.7 IoT-Suchmaschinen
136
3.2.8 Soziale Netzwerke
137
3.2.9 Personen-Suchmaschinen
139
3.2.10 Job-Portale
140
3.2.11 Die Wayback Machine (archive.org)
142
3.2.12 Geografische Suchmaschinen
143
3.2.13 E-Mail-Tracking
144
3.2.14 DNS-Lookups und Whois
144
3.2.15 Aktives Footprinting
147
3.3 Well-known-Dateien
149
3.4 Footprinting im Dark Web
151
3.5 Werkzeuge für das Footprinting
153
3.5.1 Subdomains mit Sublist3r finden
157
3.5.2 Informationen mit theHarvester sammeln
159
3.5.3 Benutzernamen mit Sherlock finden
160
3.5.4 Wortlisten mit CeWL erstellen
161
3.5.5 Metadaten mit ExifTool auslesen
162
3.6 Schutz vor Footprinting
168
3.7 O(h)SINT
170
3.7.1 Vorbereitung
170
3.7.2 Der Avatar des Benutzers
172
3.7.3 In welcher Stadt hält sich die Person auf?
173
3.7.4 SSID des WAP
174
3.7.5 Die E-Mail-Adresse der Zielperson
176
3.7.6 Der Ursprung der E-Mail-Adresse
176
3.7.7 Urlaub! Aber wo?
176
3.7.8 Das geheime Passwort
177
3.8 Übungsfragen
178
4 Scanning
201
4.1 Ports und Dienste
201
4.2 Das OSI-Modell
204
4.3 HTTP
205
4.4 ICMP, UDP und TCP
209
4.5 Hping3
214
4.6 Wireshark
217
4.7 Nmap
221
4.7.1 Scan-Techniken mit nmap
223
4.7.2 Host Discovery mit KI
225
4.7.3 Schutz vor Ping Sweeps
226
4.7.4 Ports und Dienste mit Nmap scannen
226
4.7.5 Ports und Dienste mit KI scannen
233
4.7.6 Schutz vor Port-Scanning
234
4.8 Banner Grabbing
235
4.9 Übungsfragen
239
5 Enumeration und Fuzzing
267
5.1 Was ist Enumeration?
267
5.1.1 NetBIOS-Enumeration
267
5.1.2 SNMP-Enumeration
268
5.1.3 LDAP-Enumeration
269
5.1.4 SMTP-Enumeration
269
5.1.5 DNS-Enumeration
270
5.1.6 SMB-Enumeration
271
5.1.7 NFS-Enumeration
271
5.1.8 RPC-Enumeration
271
5.1.9 AD-Enumeration
272
5.1.10 Web-Enumeration
272
5.2 Gobuster
273
5.3 Was ist Fuzzing?
275
5.3.1 Dumb Fuzzing
275
5.3.2 Smart Fuzzing (Generation-based Fuzzing)
276
5.3.3 Mutation-based Fuzzing
276
5.3.4 Coverage-guided Fuzzing
277
5.3.5 Protocol-Fuzzing
277
5.3.6 Web-Fuzzing
278
5.4 FFUF
278
5.4.1 Fuzzen von Verzeichnissen und Dateien
278
5.4.2 Parameter-Fuzzing
279
5.4.3 Subdomain- und DNS-Fuzzing
279
5.5 WPScan
280
5.6 Übungsfragen
282
6 Metasploit
289
6.1 Exploits
289
6.2 Die Suche nach Exploits
290
6.3 Das Metasploit-Framework
293
6.3.1 Metasploitable 2
298
6.3.2 vsftpd-Exploit
303
6.3.3 Enumerieren von SMTP-Benutzern
307
6.3.4 Billing – Zugriff auf den Server
310
6.4 Übungsfragen
315
7 Kryptografie
323
7.1 Einführung in die Kryptografie
323
7.1.1 Schutzziele der Kryptografie
324
7.1.2 Arten von Kryptografie
325
7.1.3 Government Access to Keys (GAK) und Key Escrow
326
7.1.4 Das kerckhoffssche Prinzip
326
7.2 Chiffren
327
7.2.1 Die Cäsar-Chiffre
330
7.2.2 Die Vigenère-Chiffre
332
7.2.3 Die Buchchiffre
335
7.3 Die XOR-Operation
337
7.4 Das Feistel-Netzwerk
338
7.5 Verschlüsselungsalgorithmen
344
7.5.1 Der RSA-Algorithmus
347
7.5.2 Der Diffie-Hellman-Algorithmus
349
7.6 Hashalgorithmen
350
7.7 One-Time-Pad (OTP)
353
7.8 Digitale Signaturen
356
7.9 Quantenkryptografie
358
7.10 Public Key Infrastructure (PKI)
359
7.11 E-Mail-Verschlüsselung
361
7.12 Kryptoanalyse
362
7.13 Übungsfragen
367
8 Verdeckte Kommunikation
385
8.1 Warum wird verdeckte Kommunikation eingesetzt?
385
8.2 Klassische Techniken und moderne Entsprechungen
386
8.3 Steganografie
388
8.3.1 Die LSB-Methode
390
8.3.2 Dateiüberlagerungen
393
8.3.3 Alternate Data Streams (ADS)
395
8.3.4 Steghide
398
8.4 Kommunikation über Seitenkanäle
401
8.5 Das Darknet
405
8.5.1 Das Tor-Netzwerk
405
8.5.2 Hidden Services
407
8.5.3 OnionShare
410
8.6 c4ptur3-th3-fl4g
420
8.6.1 Translation und Shifting
420
8.6.2 Spectrograms
425
8.6.3 Steganography
426
8.6.4 Security through obscurity
427
8.7 Übungsfragen
429
9 Passwörter knacken
437
9.1 Hashfunktionen und Passwort-Hashes
437
9.2 Kerberos
440
9.3 Salt und Pepper
443
9.4 Hashcat
443
9.4.1 Brute Force
445
9.4.2 Dictionary Attack
447
9.4.3 Mask Attack
448
9.4.4 Rule-based Attack
450
9.4.5 Combinator Attack
451
9.4.6 HAITI
453
9.5 Angriffe auf Passwörter
454
9.5.1 Analoge Passwortangriffe
454
9.5.2 Online-Angriffe
455
9.5.3 Offline-Angriffe
456
9.5.4 SSH-Zugänge knacken
458
9.5.5 ZIP-Dateien knacken
463
9.6 Schutz vor Angriffen auf Passwörter
465
9.7 CrackIT
465
9.7.1 Brute Force
466
9.7.2 Dictionary Attack
467
9.7.3 Mask Attack
469
9.7.4 Das geheime Passwort des HKAHackers
470
9.7.5 CVE-2023-32784
472
9.7.6 Ein ZIP-Archiv knacken
474
9.8 Übungsfragen
475
10 OWASP Top 10
489
10.1 A01:2021-Broken Access Control
490
10.2 A02:2021-Cryptographic Failures
493
10.3 A03:2021-Injection
496
10.4 A04:2021-Insecure Design
501
10.5 A05:2021-Security Misconfiguration
505
10.6 A06:2021-Vulnerable and Outdated Components
508
10.7 A07:2021-Identification and Authentication Failures
511
10.8 A08:2021-Software and Data Integrity Failures
513
10.8.1 Software Integrity Failures
513
10.8.2 Data Integrity Failures
515
10.9 A09:2021-Security Logging and Monitoring Failures
519
10.10 A10:2021-Server-Side Request Forgery
521
10.11 Übungsfragen
523
11 Der OWASP Juice Shop
531
11.1 Was ist der OWASP Juice Shop?
531
11.2 Installation des OWASP Juice Shops
532
11.3 Aufgaben im Juice Shop
535
11.3.1 DOM XSS
535
11.3.2 Burp Suite
536
11.3.3 Zero Stars
543
11.3.4 Login Admin
545
11.3.5 Empty User Registration
551
11.3.6 Login Bender bzw. Login Jim
552
11.3.7 Admin Registration
554
12 Cross-Site-Scripting (XSS)
557
12.1 Arten von XSS
557
12.1.1 Stored XSS
558
12.1.2 Reflected XSS
559
12.1.3 DOM-basiertes XSS
559
12.1.4 Blind XSS
561
12.2 Schutz vor XSS
564
12.3 Google XSS Game
565
12.3.1 Level 1: Hello, world of XSS
566
12.3.2 Level 2: Persistence is key
568
12.3.3 Level 3: That sinking feeling ...
570
12.3.4 Level 4: Context matters
572
12.3.5 Level 5: Breaking protocol
574
12.3.6 Level 6: Hello, world of XSS
576
12.3.7 Level 7: Wie hackt man das Google XSS Game?
579
12.4 Übungsfragen
582
13 SQL-Injection
595
13.1 SQL-Grundlagen
595
13.2 Arten von SQL-Injections
599
13.2.1 Inline SQLi
599
13.2.2 Boolean-Based Blind SQLi
600
13.2.3 Time-Based Blind SQLi
602
13.2.4 Error-Based SQLi
604
13.2.5 UNION-Based SQLi
605
13.2.6 Out-of-Band SQLi
605
13.3 Schutz vor SQL-Injections
606
13.4 SQLMap
606
13.5 Übungsfragen
618
14 Social-Engineering
625
14.1 Was ist Social-Engineering?
625
14.2 Psychologie des Social-Engineerings
627
14.3 Phasen eines Social-Engineering-Angriffs
628
14.4 Techniken des Social-Engineerings
629
14.4.1 Menschliches Social-Engineering
630
14.4.2 Technisches Social-Engineering
632
14.4.3 Phishing
633
14.4.4 Mobiles Social-Engineering
640
14.5 Insider-Bedrohung
641
14.5.1 Motive und Arten
641
14.5.2 Insider-Angriffe erkennen
643
14.6 Identitätsnachahmung und Identitätsdiebstahl
644
14.6.1 Arten des Identitätsdiebstahls
645
14.6.2 Durchführung des Identitätsdiebstahls
646
14.6.3 Identitätsdiebstahl erkennen
647
14.7 Bedrohungen durch Deepfakes
648
14.8 Maßnahmen gegen Social-Engineering
651
14.8.1 Schutz vor Insider-Bedrohungen
651
14.8.2 Schutz vor Identitätsdiebstahl
652
14.8.3 Mitarbeiter schulen
653
14.9 Das Social-Engineering-Lab
654
14.9.1 Szenarien
655
14.9.2 Phishing-Mail
657
14.9.3 Phishing-Mail mit Anhang
659
14.9.4 Phishing-Suchbild
662
14.9.5 Eine Phishing-Mail erstellen
663
14.10 Übungsfragen
667
15 Reverse Shells
691
15.1 Was ist eine Bind Shell und wie funktioniert sie?
691
15.2 Was ist eine Reverse Shell und wie funktioniert sie?
692
15.3 Beispiele für Reverse Shells
695
15.3.1 PHP
695
15.3.2 Java
697
15.3.3 PowerShell
699
15.3.4 Python
700
15.3.5 TTY
702
15.4 Obfuscation-Techniken für Reverse Shells
703
15.5 Maßnahmen zum Schutz vor Reverse Shells
707
15.6 All in One – Reverse Shell
708
15.7 Übungsfragen
713
16 Privilege Escalation
721
16.1 Was ist Privilege Escalation?
721
16.2 GTFOBins
721
16.3 Techniken für die Privilege Escalation
723
16.3.1 DLL Hijacking
723
16.3.2 dylib Hijacking
725
16.3.3 Named Pipe Impersonation
726
16.3.4 Pivoting und Relaying
726
16.3.5 Manipulation von Boot- und Logon-Skripten
727
16.3.6 sudo -l
727
16.3.7 SUID-Bit
728
16.3.8 Schutz vor Privilege Escalation
729
16.4 RootMe
730
16.5 Billing – Privilege Escalation
734
16.6 All in One – Privilege Escalation
737
16.7 Übungsfragen
738
17 Malware
747
17.1 Was ist Malware?
747
17.1.1 Eine kurze Geschichte der Malware
748
17.1.2 Wie gelangt Malware auf ein System?
754
17.1.3 Woraus besteht Malware?
755
17.2 Typen von Malware
756
17.2.1 Keylogger
756
17.2.2 Rootkits
757
17.2.3 Trojaner
758
17.2.4 Ransomware
764
17.2.5 Viren und Würmer
768
17.2.6 KI-basierte Malware
770
17.3 Malware-Analyse
772
17.4 Schutz vor Malware
774
17.5 Übungsfragen
775
18 Professionelles Pentesting
787
18.1 Ablauf eines Penetrationstests
787
18.1.1 Festlegung des Scopes
788
18.1.2 Non-Disclosure-Agreement (NDA)
788
18.1.3 Zusammenstellung des Teams
788
18.1.4 Durchführung des Penetrationstests
788
18.1.5 Bericht
789
18.1.6 Präsentation
789
18.2 Pentesting-Standards und -Frameworks
790
18.2.1 PTES – Penetration Testing Execution Standard
790
18.2.2 OWASP Web Security Testing Guide (WSTG)
791
18.2.3 NIST SP 800-115 – Technical Guide to Information Security Testing and Assessment
792
18.2.4 OSSTMM – Open Source Security Testing Methodology Manual
792
18.2.5 BSI-Klassifikation
793
18.3 Aufbau von Pentest-Berichten
795
18.3.1 Executive Summary (Zusammenfassung für das Management)
795
18.3.2 Scope und Zielsetzung
796
18.3.3 Methodik
796
18.3.4 Übersicht über die gefundenen Schwachstellen
796
18.3.5 Technische Schwachstellendetails
796
18.3.6 Empfehlungen und Maßnahmen
797
18.3.7 Anhang
797
18.4 Pentest-Berichte mit KI-Unterstützung schreiben
797
18.5 Tipps zum Schreiben von Pentest-Berichten
801
19 Prüfungen
805
19.1 Praktische Prüfung
805
19.1.1 Aufgabenstellung
805
19.1.2 Musterlösung
806
19.2 Theorieprüfung »Ethical Hacking«
823
19.2.1 Aufgabe 1: Einführung ins Ethical Hacking
823
19.2.2 Aufgabe 2: Footprinting und Reconnaissance
825
19.2.3 Aufgabe 3: Scanning
826
19.2.4 Aufgabe 4: Enumeration und Fuzzing
827
19.2.5 Aufgabe 5: Metasploit
828
19.2.6 Aufgabe 6: Kryptografie
829
19.2.7 Aufgabe 7: Passwörter knacken
831
19.2.8 Aufgabe 8: XSS
832
19.2.9 Aufgabe 9: SQL-Injection
833
19.2.10 Aufgabe 10: Reverse Shells
835
19.2.11 Aufgabe 11: Privilege Escalation
836
20 Zertifizierungen im Bereich Ethical Hacking und Penetration Testing
839
20.1 Certified Ethical Hacker (CEH)
839
20.2 Offensive Security Certified Professional (OSCP)
841
20.3 Certified Penetration Testing Specialist (CPTS)
841
20.4 CompTIA PenTest+
842
20.5 Junior Penetration Tester (PT1)
843
20.6 Meine persönliche Empfehlung
843
Index
845