Bezpieczeństwo nowoczesnych aplikacji internetowych. Przewodnik po zabezpieczeniach

Książka wydana w 2020 roku. Autor książki: Andrew Hoffman. Okładka: Miękka. Kod ISBN: 9788328370050
48,14
Program Ochrony Kupujących
Wysyłka od 2,99 zł
Wysyłka jutro
Ikona zapakuj na prezent
Zapakuj na prezent

Bezpieczeństwo nowoczesnych aplikacji internetowych. Przewodnik po zabezpieczeniach - Opis i dane produktu

Wydawałoby się, że ze względu na szeroki dostęp do materiałów poświęconych bezpieczeństwu systemów informatycznych, temat ten powinien być świetnie znany każdemu inżynierowi. Mimo to media regularnie donoszą o spektakularnych naruszeniach zabezpieczeń. Następstwem udanych ataków mogą być nie tylko straty finansowe i uszczerbek na wizerunku, ale również zagrożenie bezpieczeństwa narodowego. Zapewnienie wysokiego stopnia bezpieczeństwa systemu informatycznego wymaga ciągłego uczenia się, aktualizowania i systematyzowania swojej wiedzy. Tylko w ten sposób mamy szansę pokonać hakerów w tym niekończącym się wyścigu zbrojeń.

Książka systematyzuje wiedzę dotyczącą ataków hakerskich i technik zabezpieczania przed nimi aplikacji internetowych. Autor dogłębnie opisuje metody ataków na poziomie kodu i architektury systemu. Sporo uwagi poświęca eksperckim technikom prowadzenia rekonesansów, dzięki którym nawet bez wiedzy o strukturze i kodzie aplikacji można samodzielnie zrozumieć sposób jej działania i zidentyfikować wrażliwe punkty systemu. Następnie omawia różne techniki ataków, począwszy od łamania zwykłych zabezpieczeń, a skończywszy na metodach obchodzenia zaawansowanych mechanizmów obronnych. Kolejne rozdziały dotyczą zapobiegania włamaniom do systemu. Jednym z ciekawszych zagadnień jest ocena kompromisu pomiędzy zapewnieniem akceptowalnego poziomu bezpieczeństwa a kosztami i wydajnością użytkowania aplikacji. Poszczególne zagadnienia zostały ujęte w ciekawy sposób i przedstawione z kilku różnych punktów widzenia.

W książce między innymi:

typowe luki bezpieczeństwa
podstawowe techniki atakowania aplikacji
niestandardowe metody omijania typowych zabezpieczeń
wdrażanie zabezpieczeń aplikacji
najlepsze praktyki bezpiecznego kodowania w cyklu programistycznym
poprawa poziomu bezpieczeństwa aplikacji internetowych

Myśl jak haker - twórz niezawodne zabezpieczenia!
Spis treści:

Wstęp 13

1. Historia bezpieczeństwa oprogramowania 29

Początki hakerstwa 29
Enigma - ok. 1930 r. 30
Automatyczne łamanie kodu Enigmy - ok. 1940 r. 33

Poznaj Bombę 34

Phreaking telefonów - ok. 1950 r. 36
Technologia antyphreakingowa - ok. 1960 r. 37
Początki hakowania komputerów - ok. 1980 r. 38
Rozwój sieci WWW - ok. 2000 r. 40
Hakerzy w nowoczesnej erze - po ok. 2015 r. 42
Podsumowanie 45

CZĘŚĆ I. ROZPOZNANIE

2. Wstęp do rekonesansu aplikacji internetowych 49

Zbieranie informacji 49
Mapowanie aplikacji internetowej 51
Podsumowanie 53

3. Struktura nowoczesnej aplikacji internetowej 55

Nowoczesne aplikacje kontra aplikacje starszego typu 55
API typu REST 57
JavaScript Object Notation 59
JavaScript 61

Zmienne i zakres 62
Funkcje 64
Kontekst 64
Dziedziczenie prototypowe 65
Asynchroniczność 67
Hierarchia DOM przeglądarki 70

Platformy SPA 72
Systemy uwierzytelniania i autoryzacji 73

Uwierzytelnianie 73
Autoryzacja 74

Serwery WWW 74
Bazy danych po stronie serwera 75
Magazyny danych po stronie klienta 76
Podsumowanie 77

4. Znajdowanie subdomen 79

Wiele aplikacji na domenę 79
Wbudowane w przeglądarkę narzędzia do analizy sieci 80
Wykorzystanie rekordów publicznych 82

Archiwa silnika wyszukiwania 83
Przypadkowe archiwa 85
Migawki z serwisów społecznościowych 86

Ataki transferu stref 89
Szukanie subdomen metodą brute force 91
Ataki słownikowe 96

5. Analiza API 99

Wykrywanie punktu końcowego 99
Mechanizmy uwierzytelniania 102
Struktury punktów końcowych 104

Popularne struktury 104
Struktura specyficzna dla aplikacji 105

Podsumowanie 106

6. Znajdowanie zewnętrznych zależności 107

Wykrywanie platform po stronie klienta 107

Wykrywanie platform SPA 107
Wykrywanie bibliotek JavaScriptu 109
Wykrywanie bibliotek CSS 111

Wykrywanie platform po stronie serwera 111

Wykrywanie nagłówków 112
Domyślne komunikaty błędów i strony 404 112
Wykrywanie baz danych 114

Podsumowanie 116

7. Identyfikowanie słabych punktów w architekturze aplikacji 117

Sygnały świadczące o bezpiecznej lub niezabezpieczonej architekturze 118
Wiele warstw bezpieczeństwa 121
Zapożyczenia i ponowne odkrywanie 122
Podsumowanie 124

8. Podsumowanie części I 125

CZĘŚĆ II. OFENSYWA

9. Wstęp do hakowania aplikacji internetowych 129

Sposób myślenia hakera 129
Rozpoznanie stosowane 130

10. Ataki Cross-Site Scripting (XSS) 133

Wykrywanie i eksploatacja XSS 133
Zapisane ataki XSS 137
Odbite ataki XSS 138
Ataki XSS oparte na hierarchii DOM 140
Ataki XSS oparte na mutacji 143
Podsumowanie 144

11. Cross-Site Request Forgery (CSRF) 147

Manipulowanie parametrami zapytania 147
Inne dane wysyłane żądaniami GET 151
Ataki CSRF na punkty końcowe POST 152
Podsumowanie 154

12. XML External Entity (XXE) 155

Bezpośrednie ataki XXE 155
Pośrednie ataki XXE 158
Podsumowanie 160

13. Wstrzykiwanie 161

Wstrzykiwanie SQL-a 161
Wstrzykiwanie kodu 164
Wstrzykiwanie polecenia 168
Podsumowanie 171

14. Denial of Service (DoS) 173

Ataki DoS wykorzystujące wyrażenia regularne (ReDoS) 173
Logiczne ataki DoS 176
Rozproszone ataki DoS 179
Podsumowanie 180

15. Ataki z wykorzystaniem zewnętrznych zależności 181

Metody integracji 183

Gałęzie i rozwidlenia 183
Integracje z własnym hostingiem 184
Integracja z kodem źródłowym 185

Menedżery pakietów 185

JavaScript 186
Java 188
Inne języki 188

Baza danych Common Vulnerabilities and Exposures 189
Podsumowanie 190

16. Podsumowanie części II 191

CZĘŚĆ III. OBRONA

17. Zabezpieczanie nowoczesnych aplikacji internetowych 195

Defensywna architektura oprogramowania 196
Wyczerpujące inspekcje kodu 196
Wykrywanie luk 197
Analiza luk 198
Zarządzanie lukami 198
Testy regresyjne 199
Strategie łagodzenia ryzyka 199
Rekonesans stosowany i techniki ofensywne 199

18. Architektura bezpiecznej aplikacji 201

Analizowanie wymagań dotyczących funkcji 201
Uwierzytelnianie i autoryzacja 202

Protokoły Secure Sockets Layer i Transport Layer Security 203
Bezpieczne dane dostępowe 203
Haszowanie danych dostępowych 205
Uwierzytelnianie dwuskładnikowe 207

Dane osobowe i finansowe 208
Wyszukiwanie 209
Podsumowanie 209

19. Przegląd kodu pod kątem bezpieczeństwa 211

Jak zacząć inspekcję kodu 212
Archetypowe luki kontra błędy we własnej logice 213
Od czego zacząć inspekcję pod kątem bezpieczeństwa 214
Antywzorce bezpiecznego kodowania 216

Czarne listy 216
Szablonowy kod 217
Antywzorzec domyślnego zaufania 218
Separacja klienta i serwera 218

Podsumowanie 219

20. Wykrywanie luk 221

Automatyzacja bezpieczeństwa 221

Analiza statyczna 222
Analiza dynamiczna 223
Testowanie regresji dotyczącej luk 224

Programy odpowiedzialnego ujawniania luk 227
Programy dla łowców błędów 227
Zewnętrzne testy penetracyjne 228
Podsumowanie 229

21. Zarządzanie lukami 231

Odtwarzanie luk 231
Ocena dotkliwości luki 232
Common Vulnerability Scoring System 232

CVSS: Base Scoring 233
CVSS: Temporal Scoring 235
CVSS: Environmental Scoring 236

Zaawansowana punktacja luk 237
Poza selekcją i oceną punktową 238
Podsumowanie 238

22. Obrona przed atakami XSS 239

Najlepsze praktyki tworzenia kodu odpornego na ataki XSS 239
Czyszczenie danych wpisanych przez użytkownika 241

DOMParser 242
SVG 242
Blob 243
Czyszczenie hiperłączy 243
Kodowanie encji znakowych HTML-a 244

CSS 245
Zasady Content Security Policy stosowane w celu zapobiegania atakom XSS 246

Źródło skryptu 246
Flagi unsafe-eval i unsafe-inline 247
Implementowanie CSP 247

Podsumowanie 248

23. Obrona przed atakami CSRF 249

Weryfikacja nagłówka 249
Tokeny CSRF 250

Bezstanowe tokeny CSRF 251

Najlepsze praktyki zapobiegające atakom CSRF 252

Bezstanowe żądania GET 252
Łagodzenie ryzyka atakami CSRF na poziomie aplikacji 253

Podsumowanie 255

24. Obrona przed atakami XXE 257

Weryfikacja innych formatów danych 257
Zaawansowane ryzyka XXE 259
Podsumowanie 259

25. Ochrona przed wstrzykiwaniem 261

Ochrona przed wstrzykiwaniem SQL-a 261

Wykrywanie wstrzykiwania SQL-a 261
Zapytania parametryzowane 263
Metody obrony specyficzne dla baz danych 264

Ogólne metody ochrony przed wstrzykiwaniem 265

Potencjalne cele wstrzykiwania 265
Zasada najmniejszych uprawnień 266
Tworzenie białej listy poleceń 266

Podsumowanie 268

26. Ochrona przed atakami DoS 269

Ochrona przed atakami DoS na funkcje parsujące wyrażenia regularne 269
Ochrona przed atakami DoS wymierzonymi w logikę 270
Ochrona przed atakami DDoS 271

Łagodzenie skutków ataków DDoS 271

Podsumowanie 272

27. Zabezpieczanie zewnętrznych zależności 273

Ocena drzewa zależności 273

Modelowanie drzewa zależności 274
Drzewa zależności w rzeczywistym świecie 274
Analiza automatyczna 275

Techniki bezpiecznej integracji 275

Podział odpowiedzialności 275
Bezpieczne zarządzanie pakietami 276

Podsumowanie 277

28. Podsumowanie części III 279

Historia bezpieczeństwa oprogramowania 279
Rekonesans aplikacji internetowych 280
Ofensywa 282
Obrona 283

29. Podsumowanie 287
O autorze: Andrew Hoffman jest starszym inżynierem do spraw bezpieczeństwa w Salesforce.com. Specjalizuje się w zabezpieczeniach drzewa DOM i JavaScriptu. Pracował z dostawcami wszystkich najważniejszych przeglądarek oraz z organizacjami TC39 i WHATWG. Bada również zagadnienia „bezstanowych (bezpiecznych/czystych) modułów”, umożliwiających wykonywanie kodu JavaScript przy znacznie zmniejszonym ryzyku.

Podstawowe informacje

Autor Andrew Hoffman
Wybrane wydawnictwa ? Helion
Okładka ? Miękka
Rok wydania ? 2020
Ilość stron ? 296
Przedmiot ? Edukacja dla bezpieczeństwa
ISBN 9788328370050

Produkty rekomendowane

Bezpieczeństwo nowoczesnych aplikacji internetowych. Przewodnik po zabezpieczeniach - Opinie

Klienci, którzy kupili Bezpieczeństwo nowoczesnych aplikacji internetowych. Przewodnik po zabezpieczeniach, mogą podzielić się swoją opinią poprzez ankietę Zaufanych Opinii. Prezentujemy wszystkie oceny (zarówno pozytywne jak i negatywne), a Zaufane Opinie oznaczone są zieloną tarczą.

/
0%
akcja
/
0%
fabuła
/
0%
jakość wydania
Liczba głosów: 0 Liczba opinii: 0

Produkty rekomendowane

Bezpieczeństwo nowoczesnych aplikacji internetowych. Przewodnik po zabezpieczeniach - Pytania i odpowiedzi

Zastanawiasz się jak poprawnie użytkować zakupiony produkt? Porady na forum naszych ekspertów w mig rozwieją Twoje wątpliwości! Pytania i Odpowiedzi pomogą użytkownikom serwisu w poprawnym korzystaniu i cieszeniu się z nowo zakupionych produktów.

Produkty rekomendowane

Wybrane oferty

Bezpieczeństwo nowoczesnych aplikacji internetowych. Przewodnik po zabezpieczeniach - Pozostałe oferty

Pokaż wszystkie 19 ofert ?

Historia cen - trend cenowy

Aktualnie najniższa cena: 37,99

Często kupowane razem

Produkty rekomendowane