Zagrożenia kontenerów
Poznaj ryzyko związane z Dockerem i obrazami
Zagrożenia kontenerów to bezpłatna lekcja Cyber Security Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Cyber Security Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cyber Security Academy zawiera 4 lekcji w sumie.
Czym jest kontener
Kontener pakuje aplikację wraz z jej zależnościami, dzięki czemu działa ona wszędzie w taki sam sposób.
Narzędzia takie jak Docker spopularyzowały kontenery, ponieważ uruchamiają się szybko i są lekkie w porównaniu z maszynami wirtualnymi.
Ryzyko współdzielonego jądra
W przeciwieństwie do maszyn wirtualnych kontenery działające na tym samym hoście współdzielą jądro systemu operacyjnego.
Jeśli atakujący wydostanie się z kontenera, współdzielone jądro może stać się drogą do hosta i innych kontenerów.
Niezaufane obrazy
Wiele zespołów pobiera obrazy z publicznych rejestrów.
Obraz pochodzący od nieznanego autora może zawierać złośliwe oprogramowanie, tylne furtki lub ukryte koparki kryptowalut. Zawsze należy wiedzieć, skąd pochodzi obraz.
Podatne obrazy bazowe
Nawet zaufane obrazy mogą być ryzykowne, jeśli są nieaktualne.
Obraz bazowy utworzony kilka miesięcy temu może zawierać znane luki w bibliotekach, które dawno temu zostały naprawione w projekcie źródłowym.
Sekrety zapisane w obrazach
Częstym błędem jest umieszczanie haseł lub kluczy API na stałe w obrazie.
Każdy, kto pobierze obraz, może odczytać te sekrety. Łatwo je ujawnić, przeglądając warstwy:
docker history myapp:latestUruchamianie jako root
Domyślnie procesy wewnątrz kontenera często działają jako root.
Jeśli taki proces zostanie przejęty, atakujący uzyska uprawnienia roota wewnątrz kontenera, przez co ewentualne wydostanie się z niego będzie znacznie groźniejsze.
Nadmiernie szerokie uprawnienia
Flagi przyznające dodatkowe uprawnienia zwiększają powierzchnię ataku.
Uruchomienie kontenera w trybie uprzywilejowanym usuwa większość izolacji:
docker run --privileged myappNależy tego unikać, chyba że jest to absolutnie konieczne.
Ujawnione porty i usługi
Kontenery często publikują porty sieciowe.
Niepotrzebnie otwarty port, na przykład port bazy danych wystawiony do internetu, daje atakującym bezpośredni cel. Należy publikować tylko porty, których rzeczywiście potrzeba.
Niezabezpieczone rejestry
Jeśli obrazy są przesyłane przez niezaszyfrowany lub nieuwierzytelniony rejestr, atakujący mogą modyfikować je podczas przesyłania.
Należy używać zaufanych rejestrów z TLS i kontrolą dostępu.
Nadużywanie zasobów
Kontener bez limitów może zużyć całą moc procesora i pamięć hosta.
Powoduje to odmowę usługi dla innych obciążeń. Należy ustawić limity zasobów, aby jeden kontener nie pozbawił pozostałych zasobów.
Pełny obraz sytuacji
Ryzyko związane z kontenerami obejmuje cały cykl życia:
- obraz, na podstawie którego tworzony jest kontener,
- rejestr, z którego jest pobierany,
- uprawnienia, z którymi jest uruchamiany,
- host, z którym jest współdzielony.
Każdy etap wymaga uwagi.
Szybkie sprawdzenie
Dlaczego wydostanie się z kontenera jest często poważniejsze niż wydostanie się z maszyny wirtualnej?
Podsumowanie
Zagrożenia związane z kontenerami obejmują niezaufane obrazy, nieaktualne obrazy bazowe, sekrety zapisane w obrazach, uruchamianie jako root, tryb uprzywilejowany, ujawnione porty i współdzielone jądro.
Znajomość tych zagrożeń to pierwszy krok do zabezpieczenia wdrożeń kontenerów.
Często zadawane pytania
Czy lekcja „Zagrożenia kontenerów” jest bezpłatna?
Tak — pełny tekst „Zagrożenia kontenerów” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Cyber Security Academy, przejdź na CoddyKit PRO. Kurs Cyber Security Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Zagrożenia kontenerów”?
Poznaj ryzyko związane z Dockerem i obrazami Ćwiczysz Cyber Security Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Cyber Security Academy?
Nie wymagamy żadnego doświadczenia. Cyber Security Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „Zagrożenia kontenerów”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Cyber Security Academy?
Tak. Każda lekcja Cyber Security Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Zagrożenia kontenerów
- Skanowanie obrazów
- Bezpieczeństwo w czasie działania
- Podstawy bezpieczeństwa Kubernetes