
Sie müssen in der Webentwicklung zahlreiche Schwachstellen beachten, die sonst dafür sorgen, dass Ihr Code zum Einfallstor für Hacker und Schadsoftware wird. Welche Hacking-Gefahren auf Ihre Webanwendungen lauern, zeigt Ihnen dieser praxisorientierte Guide: von Authentifizierungsproblemen bis zum Cross Site Scripting, von Code Injections bis zu Architektur-Angriffen. Mit kommentierten Codebeispielen echter Schadsoftware und Beispielanwendung zum Ausprobieren.
Aus dem Inhalt:
Inhaltsverzeichnis
Materialien zum Buch . . . 16
1. Über dieses Buch . . . 17
1. 1 . . . Was dieses Buch ist . . . 17
1. 2 . . . Welche Schwachstellen gibt es? . . . 18
1. 3 . . . Wie findet man Schwachstellen? . . . 23
1. 4 . . . Einige Tools im Überblick . . . 24
1. 5 . . . Die Demo-Anwendung . . . 32
1. 6 . . . OWASP Top 10 Platz 10: Insufficient Logging & Monitoring . . . 53
1. 7 . . . Links . . . 57
2. Das Ziel erkunden . . . 59
2. 1 . . . Offensichtliche Informationen sammeln . . . 59
2. 2 . . . Nicht offensichtliche Informationen sammeln . . . 62
2. 3 . . . Die Untersuchung des Clients . . . 63
2. 4 . . . Die Demo-Anwendung . . . 69
2. 5 . . . Links . . . 104
3. Zustandsbasierte Angriffe . . . 105
3. 1 . . . Angriffe auf Zustandsinformationen . . . 105
3. 2 . . . URL-Jumping . . . 111
3. 3 . . . Session-Hijacking . . . 114
3. 4 . . . Session-Fixation . . . 117
3. 5 . . . Clickjacking . . . 120
3. 6 . . . Cross-Site-Request-Forgery . . . 126
3. 7 . . . Die Demo-Anwendung . . . 129
3. 8 . . . Links . . . 143
4. Angriffe auf die Authentifizierung . . . 145
4. 1 . . . Einführung: Authentifizierung -- einfach, und doch so schwer . . . . . . 145
4. 2 . . . Designfehler . . . 154
4. 3 . . . Ungeschützt übertragene Zugangsdaten . . . 163
4. 4 . . . Funktion zum Ändern des Passworts . . . 173
4. 5 . . . Passwort-Reset . . . 178
4. 6 . . . »Remember me« . . . 182
4. 7 . . . User Impersonation . . . 184
4. 8 . . . »Halbe Passwörter« . . . 186
4. 9 . . . Nicht eindeutige Benutzernamen und doppelte Benutzer . . . 188
4. 10 . . . Vorhersagbare Benutzernamen . . . 191
4. 11 . . . Vorhersagbare Passwörter . . . 193
4. 12 . . . Übertragung der Zugangsdaten »out of band« . . . 194
4. 13 . . . Fehler in mehrstufigen Systemen . . . 196
4. 14 . . . Unsichere Speicherung von Zugangsdaten . . . 198
4. 15 . . . Fail-Open-Mechanismen . . . 206
4. 16 . . . Die Demo-Anwendung . . . 206
4. 17 . . . Sichere Authentifizierung . . . 212
4. 18 . . . Links . . . 221
5. Cross-Site-Scripting . . . 227
5. 1 . . . XSS-Schwachstellen im Überblick . . . 227
5. 2 . . . Schutzmaßnahmen im Browser . . . 232
5. 3 . . . Angriffe über XSS . . . 238
5. 4 . . . Webwürmer . . . 263
5. 5 . . . Reflektiertes XSS finden . . . 282
5. 6 . . . Persistentes XSS finden . . . 288
5. 7 . . . DOM-basiertes XSS finden . . . 293
5. 8 . . . XSS verhindern . . . 295
5. 9 . . . Die Demo-Anwendung . . . 298
5. 10 . . . Links . . . 340
6. SQL-Injection . . . 345
6. 1 . . . Einführung . . . 345
6. 2 . . . SQL-Injection im Überblick . . . 348
6. 3 . . . SQL-Injection: Schwachstellen finden . . . 351
6. 4 . . . Angriffe »in the wild« . . . 371
6. 5 . . . SQL-Injection verhindern . . . 378
6. 6 . . . Die Demo-Anwendung . . . 382
6. 7 . . . Links . . . 406
7. Injection jenseits von SQL . . . 407
7. 1 . . . OS-Command-Injection . . . 407
7. 2 . . . SMTP-Injection . . . 413
7. 3 . . . LDAP-Injection . . . 419
7. 4 . . . NoSQL-Injection . . . 424
7. 5 . . . Scriptcode-Injection . . . 425
7. 6 . . . SOAP-Injection . . . 429
7. 7 . . . XPath-Injection . . . 434
7. 8 . . . Injection-Angriffe abwehren . . . 437
7. 9 . . . Die Demo-Anwendung . . . 440
7. 10 . . . Links . . . 451
8. Dateioperationen: von Directory-Traversal bis Datei-Uploads . . . 453
8. 1 . . . Directory-Traversal . . . 453
8. 2 . . . Sonderfall PHP: Local File Inclusion . . . 461
8. 3 . . . Der Schadcode: Webshells . . . 463
8. 4 . . . Suche nach Directory-Traversal-Schwachstellen . . . 475
8. 5 . . . Abwehr von Directory-Traversal-Angriffen . . . 479
8. 6 . . . Remote File Inclusion . . . 481
8. 7 . . . Datei-Uploads . . . 485
8. 8 . . . Die Demo-Anwendung . . . 496
8. 9 . . . Links . . . 506
9. Ein kleiner Exkurs: Pufferüberläufe, Integer-Schwachstellen und Format-Strings . . . 509
9. 1 . . . Pufferüberlauf . . . 510
9. 2 . . . Integer-Schwachstellen . . . 519
9. 3 . . . Format-String-Schwachstellen . . . 522
9. 4 . . . Die Demo-Anwendung . . . 524
9. 5 . . . Links . . . 525
10. Angriffe auf die Architektur . . . 527
10. 1 . . . Schichtenarchitekturen . . . 527
10. 2 . . . Shared Environments . . . 531
10. 3 . . . Kurz zur Cloud . . . 537
10. 4 . . . Die Demo-Anwendung . . . 537
10. 5 . . . Links . . . 537
11. Angriffe auf den Webserver . . . 539
11. 1 . . . Webserver identifizieren . . . 539
11. 2 . . . Webserver angreifen . . . . . . 542
11. 3 . . . Abwehr der Angriffe . . . 553
11. 4 . . . Sichere Konfiguration . . . 558
11. 5 . . . Die Demo-Anwendung . . . 559
11. 6 . . . Links . . . 563
Index . . . 569
Es wurden noch keine Bewertungen abgegeben. Schreiben Sie die erste Bewertung zu "You've been hacked!" und helfen Sie damit anderen bei der Kaufentscheidung.