KONTENERY BEZPIECZNE WDROŻENIA PODSTAWOWE KONCEPCJE I TECHNOLOGIE

53.10

Na stanie

SPIS TREŚCI

Wprowadzenie 9

1. Zagrożenia związane z kontenerami 15

  • Ryzyko, zagrożenie i środki ostrożności 16
  • Model zagrożenia kontenera 16
  • Granice bezpieczeństwa 20
  • Wielodostępność 21
    • Maszyny współdzielone 21
    • Wirtualizacja 22
    • Wielodostępność w przypadku kontenerów 23
    • Egzemplarze kontenera 24
  • Zasady dotyczące zapewnienia bezpieczeństwa 24
    • Najmniejsze możliwe uprawnienia 24
    • Głęboka defensywa 24
    • Ograniczenie płaszczyzny ataku 25
    • Ograniczenie pola rażenia 25
    • Podział zadań 25
    • Stosowanie zasad bezpieczeństwa w kontenerach 25
  • Podsumowanie 26

2. Wywołania systemu Linux, uprawnienia i właściwości jądra 27

  • Wywołania systemowe 27
  • Uprawnienia plików 28
    • setuid i setgid 30
  • Mechanizm właściwości jądra systemu Linux 33
  • Podniesienie uprawnień 35
  • Podsumowanie 36

3. Grupy kontrolne 37

  • Hierarchia grup kontrolnych 37
  • Tworzenie grup kontrolnych 38
  • Definiowanie ograniczeń dla zasobów 40
  • Przypisanie procesu do grupy kontrolnej 41
  • Używanie grup kontrolnych z Dockerem 42
  • Grupy kontrolne – wersja druga 43
  • Podsumowanie 44

4. Izolacja kontenera 45

  • Przestrzenie nazw systemu Linux 46
  • Izolacja nazwy hosta 47
  • Izolowanie identyfikatorów procesów 49
  • Zmiana katalogu głównego 52
  • Połączenie przestrzeni nazw i zmiany katalogu głównego 55
  • Przestrzeń nazw punktów montowania 55
  • Przestrzeń nazw sieci 57
  • Przestrzeń nazw użytkownika 59
    • Ograniczenia przestrzeni nazw użytkownika w Dockerze 61
  • Przestrzeń nazw IPC 62
  • Przestrzeń nazw grup kontrolnych 63
  • Proces kontenera z perspektywy systemu komputera gospodarza 64
  • Maszyny gospodarza kontenera 65
  • Podsumowanie 67

5. Maszyna wirtualna 69

  • Uruchomienie komputera 69
  • Poznaj VMM 70
    • Typ 1. VMM – hipernadzorca 71
    • Typ 2. VMM 72
    • Maszyny wirtualne oparte na jądrze 73
  • Przechwyć i emuluj 73
  • Obsługa instrukcji niewirtualizowanych 74
  • Izolacja procesu i zapewnienie bezpieczeństwa 75
  • Wady maszyny wirtualnej 76
  • Izolacja kontenera w porównaniu do izolacji maszyny wirtualnej 77
  • Podsumowanie 77

6. Obrazy kontenera 79

  • Główny system plików i konfiguracja obrazu 79
  • Nadpisanie konfiguracji w trakcie działania obrazu 80
  • Standardy OCI 80
  • Konfiguracja obrazu 81
  • Tworzenie obrazu 82
    • Niebezpieczeństwa związane z poleceniem docker build 82
    • Tworzenie obrazu kontenera bez użycia demona 83
    • Warstwy obrazu 84
  • Przechowywanie obrazów kontenera 86
  • Identyfikowanie obrazów kontenera 86
  • Zapewnienie bezpieczeństwa obrazowi kontenera 88
  • Zapewnienie bezpieczeństwa podczas tworzenia obrazu 89
    • Pochodzenie pliku Dockerfile 89
    • Najlepsze praktyki związane z zapewnieniem bezpieczeństwa pliku Dockerfile 89
    • Ataki na komputer, w którym są tworzone obrazy 92
  • Zapewnienie bezpieczeństwa podczas przechowywania obrazów 92
    • Utworzenie własnego rejestru obrazów 92
    • Podpisywanie obrazów 93
  • Zapewnienie bezpieczeństwa podczas wdrażania obrazów 93
    • Wdrożenie właściwego obrazu 93
    • Definicja wdrożenia zawierającego kod o złośliwym działaniu 94
    • Sterowanie dopuszczeniem 94
  • GitOps i zapewnienie bezpieczeństwa podczas wdrożenia 95
  • Podsumowanie 96

7. Luki w zabezpieczeniach oprogramowania umieszczonego w obrazie kontenera 97

  • Szukanie luk w zabezpieczeniach 97
  • Luki w zabezpieczeniach, poprawki bezpieczeństwa i dystrybucje 98
  • Luki w zabezpieczeniach na poziomie aplikacji 99
  • Zarządzanie ryzykiem związanym z lukami w zabezpieczeniach 99
  • Skanowanie pod kątem luk w zabezpieczeniach 100
  • Zainstalowane pakiety 100
  • Skanowanie obrazu kontenera 101
    • Kontenery niemodyfikowalne 101
    • Regularne skanowanie 102
  • Narzędzia skanowania 103
    • Źródła informacji 103
    • Nieaktualne źródła danych 104
    • Luki w zabezpieczeniach, które nie zostaną usunięte 104
    • Luki w zabezpieczeniach podpakietów 104
    • Różne nazwy pakietu 104
    • Dodatkowe funkcje skanowania 105
    • Błędy narzędzi skanowania 105
  • Skanowanie w trakcie procesu ciągłej integracji i ciągłego wdrożenia 105
  • Uniemożliwianie uruchamiania obrazów zawierających luki w zabezpieczeniach 108
  • Luki w zabezpieczeniach dnia zerowego 108
  • Podsumowanie 109

8. Wzmocnienie izolacji kontenera 111

  • seccomp 111
  • AppArmor 113
  • SELinux 114
  • gVisor 116
  • Kontener Kata 118
  • Firecracker 119
  • Unijądro 119
  • Podsumowanie 120

9. Złamanie izolacji kontenera 121

  • Kontener domyślnie działa z uprawnieniami użytkownika root 121
    • Nadpisanie identyfikatora użytkownika 122
    • Wymaganie uprawnień użytkownika root wewnątrz kontenera 123
    • Kontener niewymagający uprawnień użytkownika root 125
  • Właściwości jądra systemu Linux i opcja –privileged 128
  • Montowanie zawierających dane wrażliwe katalogów systemu gospodarza 130
  • Montowanie gniazda Dockera 131
  • Współdzielenie przestrzeni nazw między kontenerem i gospodarzem 131
  • Kontener przyczepy 132
  • Podsumowanie 133

10. Zapewnienie bezpieczeństwa sieci kontenera 135

  • Zapora sieciowa kontenera 135
  • Model OSI 137
  • Wysyłanie pakietu IP 138
  • Adres IP kontenera 139
  • Izolacja sieci 140
  • Reguły i routing na warstwach 3. i 4. 141
    • iptables 141
    • IPVS 143
  • Polityki sieciowe 143
    • Rozwiązania w zakresie polityki sieciowej 145
    • Najlepsze praktyki związane z polityką sieciową 146
  • Architektura Service Mesh 147
  • Podsumowanie 148

11. Bezpieczna komunikacja między komponentami przy użyciu TLS 149

  • Bezpieczne połączenie 149
  • Certyfikat X.509 150
    • Para kluczy publicznego i prywatnego 151
    • Urząd certyfikacji 152
    • Żądanie podpisania certyfikatu 153
  • Połączenie TLS 154
  • Bezpieczne połączenia między kontenerami 155
  • Unieważnienie certyfikatu 156
  • Podsumowanie 157

12. Przekazywanie danych poufnych do kontenera 159

  • Właściwości danych poufnych 159
  • Przekazywanie informacji do kontenera 160
    • Przechowywanie danych poufnych w obrazie kontenera 161
    • Przekazywanie danych poufnych przez sieć 161
    • Przekazywanie danych poufnych w zmiennych środowiskowych 162
    • Przekazywanie danych poufnych za pomocą plików 163
  • Dane poufne w Kubernetes 163
  • Dane poufne są dostępne dla użytkownika root 164
  • Podsumowanie 165

13. Zabezpieczanie środowiska uruchomieniowego kontenera 167

  • Profile obrazów kontenera 167
    • Profile ruchu sieciowego 168
    • Profile plików wykonywalnych 168
    • Profile dostępu do plików 170
    • Profile identyfikatorów użytkowników 170
    • Inne profile używane w środowisku uruchomieniowym 171
    • Narzędzia zapewnienia bezpieczeństwa kontenera 171
  • Unikanie różnic 173
  • Podsumowanie 174

14. Kontenery i przygotowana przez OWASP lista Top 10 175

  • Wstrzyknięcie kodu 175
  • Złamanie mechanizmu uwierzytelnienia 175
  • Ujawnienie danych wrażliwych 176
  • Zewnętrzne encje XML 176
  • Nieprawidłowa kontrola dostępu 176
  • Błędna konfiguracja zabezpieczeń 177
  • XSS 177
  • Niebezpieczna deserializacja 178
  • Używanie komponentów zawierających znane luki w zabezpieczeniach 178
  • Niewystarczający poziom rejestrowania danych i monitorowania 178
  • Podsumowanie 179

Zakończenie 181

Dodatek A. Lista rzeczy do sprawdzenia w zakresie zapewnienia bezpieczeństwa 182

Autor

ISBN

978-83-283-7228-3

Liczba stron

Rok wydania

Wydawca

Opinie

Na razie nie ma opinii o produkcie.

Napisz pierwszą opinię o „KONTENERY BEZPIECZNE WDROŻENIA PODSTAWOWE KONCEPCJE I TECHNOLOGIE”

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *