Czytelnicy tacy jak ty pomagają wspierać MUO. Kiedy dokonujesz zakupu za pomocą linków na naszej stronie, możemy otrzymać prowizję partnerską. Czytaj więcej.

Docker jest jedną z najczęściej używanych platform do konteneryzacji i jest bardzo lubiany przez inżynierów oprogramowania. Jest wyposażony w potężne narzędzie CLI do zarządzania kontenerami Docker i innymi powiązanymi zadaniami.

Domyślnie potrzebujesz uprawnień roota, aby uruchomić dowolne polecenia związane z Dockerem w systemie Linux. Oczywiście możesz to zmienić dla wygody i uruchamiać polecenia Dockera bez uprawnień administratora, ale powinieneś być świadomy implikacji bezpieczeństwa.

Co to jest powierzchnia ataku Dockera?

Powierzchnia ataku to liczba punktów ataku, bardziej podobna do liczby okien, które złośliwy użytkownik może wykorzystać do uzyskania dostępu do systemu i spowodowania spustoszenia. Zgodnie z praktyczną zasadą, systemy IT powinny mieć minimalne powierzchnie ataku, aby zmniejszyć zagrożenia bezpieczeństwa.

Ogólnie rzecz biorąc, powierzchnia ataku Dockera jest bardzo minimalna. Kontenery działają w bezpiecznym odizolowanym środowisku i nie mają wpływu na system operacyjny hosta, chyba że jest inaczej. Ponadto kontenery Docker obsługują tylko minimalne usługi, co czyni je bezpieczniejszymi.

instagram viewer

Możesz skonfigurować system Linux do sterowania Dockerem bez uprawnień sudo. Może to być wygodne w środowiskach programistycznych, ale może stanowić poważną lukę w zabezpieczeniach systemów produkcyjnych. Oto dlaczego nigdy nie powinieneś uruchamiać Dockera bez sudo.

1. Możliwość kontrolowania kontenerów Docker

Bez uprawnień sudo każdy, kto ma dostęp do twojego systemu lub serwera, może kontrolować każdy aspekt Dockera. Mają dostęp do Twoich plików dziennika Dockera i mogą zatrzymywać i usuwać kontenery dowolnie lub przypadkowo. Możesz również utracić krytyczne dane, które są niezbędne dla ciągłości biznesowej.

Jeśli używasz kontenerów Docker w środowiskach produkcyjnych, przestoje powodują utratę biznesu i zaufania.

2. Uzyskaj kontrolę nad katalogami systemu operacyjnego hosta

Docker Volumes to zaawansowana usługa, która umożliwia udostępnianie i utrwalanie danych kontenera poprzez zapisywanie ich w określonym folderze w systemie operacyjnym hosta.

Jednym z największych zagrożeń związanych z uruchomieniem Dockera bez sudo jest to, że każdy w twoim systemie może przejąć kontrolę nad katalogami systemu operacyjnego hosta, w tym nad katalogiem głównym.

Wszystko, co musisz zrobić, to uruchomić obraz Linux Docker, na przykład obraz Ubuntu, i zamontować go w folderze głównym za pomocą następującego polecenia:

docker run -ti -v /:/hostproot ubuntu bash

A ponieważ kontenery Linux Docker działają jako użytkownik root, zasadniczo oznacza to, że masz dostęp do całego folderu głównego.

Wyżej wymienione polecenie pobierze i uruchomi najnowszy obraz Ubuntu i zamontuje go w katalogu głównym.

W terminalu kontenera Docker przejdź do /hostproot katalog za pomocą polecenie CD:

płyta CD /hostproot

Wyświetlanie zawartości tego katalogu za pomocą polecenia ls pokazuje wszystkie pliki systemu operacyjnego hosta, które są teraz dostępne w twoim kontenerze. Teraz możesz manipulować plikami, przeglądać tajne pliki, ukrywać i odkrywać pliki, zmieniać uprawnienia itp.

3. Zainstaluj złośliwe oprogramowanie

Dobrze przygotowany obraz Dockera może działać w tle i manipulować systemem lub gromadzić poufne dane. Co gorsza, złośliwy użytkownik może rozprzestrzeniać złośliwy kod w Twojej sieci za pośrednictwem kontenerów Docker.

Tam są kilka praktycznych przypadków użycia kontenerów Docker, a z każdą aplikacją wiąże się inny zestaw zagrożeń bezpieczeństwa.

Zabezpiecz swoje kontenery Docker w systemie Linux

Docker to potężna i bezpieczna platforma. Uruchamianie Dockera bez sudo zwiększa powierzchnię ataku i naraża system na ataki. W środowiskach produkcyjnych zdecydowanie zaleca się używanie sudo z Dockerem.

Przy tak wielu użytkownikach w systemie niezwykle trudno jest przypisać uprawnienia każdemu użytkownikowi. W takich przypadkach przestrzeganie najlepszych praktyk kontroli dostępu może pomóc w utrzymaniu bezpieczeństwa systemu.