Co próbują zrobić 'hackerzy'? Pokażę ci to w kilku poleceniach - trochę
września 30, 2024 #Uzyskiwanie dostępu #docker #HackingZastrzeżenie: Ten wpis na blogu ma wyłącznie cele edukacyjne. Informacje tutaj zawarte mają na celu zwiększenie świadomości na temat luk w zabezpieczeniach i promowanie rozwoju bezpieczniejszych aplikacji internetowych. Wykorzystywanie tych informacji do celów złośliwych jest nielegalne i nieetyczne!
Przegląd
Uprawnienia administratora są potężne i wiążą się z dużą odpowiedzialnością. Pozwalają one użytkownikom na wykonywanie zadań na poziomie systemu i dostęp do wrażliwych informacji. W tym wpisie przyjrzymy się technikom wykorzystania aplikacji z uprawnieniami administratora, w szczególności przy użyciu kontenerów Docker i montowaniu katalogu /etc.
Docker to narzędzie do konteneryzacji, które pozwala na tworzenie i zarządzanie izolowanymi środowiskami. Kontenery dzielą kernel systemu gospodarza, ale działają w swoich własnych przestrzeniach użytkowników. Poprzez manipulację konfiguracjami Dockera można wykorzystać aplikacje z uprawnieniami administratora lub uzyskać nieautoryzowany dostęp do wrażliwych informacji na systemie gospodarza.
Instalacja Dockera
Zainstaluj Docker: Postępuj zgodnie z oficjalną instrukcją instalacji Dockera, aby zainstalować Dockera na swoim systemie gospodarza.
(Zazwyczaj jest to coś w rodzaju użycia menedżera pakietów do pobrania pakietu, a następnie dodania użytkownika do grupy, co wiele osób, w tym ja, robi z wygody (żeby nie trzeba było ciągle wpisywać sudo docker
, co dziś wykorzystamy) i uruchomienia demona / usługi Docker).
Utwórz i uruchom kontener w celu przetestowania:
Użyj poniższego polecenia, aby utworzyć i uruchomić kontener Dockera z dystrybucją Alpine Linux i interaktywną powłoką:
Montowanie katalogu /etc w celu nadużycia konfiguracji / błędnych konfiguracji:
Aby zamontować katalog /etc z systemu gospodarza do kontenera, użyj opcji -v. Na przykład, aby zamontować /etc do /mnt/etc w kontenerze:
Eksplorowanie kontenera
Uzyskiwanie dostępu do powłoki kontenera: Po uruchomieniu kontenera z zamontowanym katalogiem znajdziesz się w powłoce kontenera. Możesz przejść do zamontowanego katalogu /etc za pomocą:
Wyświetlanie plików systemu gospodarza:
Pliki z katalogu /etc gospodarza będą dostępne w kontenerze. Na przykład, możesz wymienić pliki za pomocą:
# Coś takiego jak /etc/shadow zawiera wszystkie hasła i użytkowników, na przykład.
Wykorzystanie i wyjaśnienie Podniesienie uprawnień w Dockerze
Uprawnienia kontenera: Kontenery są zazwyczaj izolowane od systemu gospodarza. Jednak montowanie wrażliwych katalogów, takich jak /etc, może odsłonić pliki konfiguracyjne, które mogą zawierać cenne informacje, jeśli kontener nie jest odpowiednio zabezpieczony.
Montaż wrażliwych katalogów: Poprzez montowanie katalogów z systemu gospodarza można uzyskać dostęp do wrażliwych plików. Na przykład:
To montuje katalog /etc gospodarza do /mnt/etc w kontenerze, co pozwala uzyskać dostęp do plików konfiguracyjnych gospodarza. Oznacza to, że jeśli haker uzyskałby pewne uprawnienia użytkownika na serwerze za pomocą Dockera, mógłby uzyskać uprawnienia administratora. Wymagałoby to, aby użytkownik (w sensie Linuxa - tożsamość, którą haker ukradł) znajdował się w grupie Docker, co wiele osób robi, w tym ja na moim komputerze osobistym. Oszczędza to wpisywanie sudo i hasła za każdym razem, ale...
Potencjalne błędne konfiguracje: Błędne konfiguracje Dockera lub uruchamianie kontenerów z podwyższonymi uprawnieniami może prowadzić do podniesienia uprawnień. Na przykład, jeśli demon Dockera jest ujawniony lub kontenery są uruchamiane z nadmiernymi uprawnieniami, może to zostać wykorzystane dalej.
Podsumowanie i Środki zaradcze
Podsumowanie
Montaż katalogów gospodarza w kontenerach Docker może ujawnić wrażliwe informacje z systemu gospodarza. W tym przykładzie montowanie katalogu /etc umożliwia dostęp do krytycznych plików konfiguracyjnych systemu. Odpowiednia konfiguracja bezpieczeństwa Dockera jest niezbędna, aby zapobiec nieautoryzowanemu dostępowi i podniesieniu uprawnień.
Środki zaradcze
-
Zabezpiecz demon Dockera =
Upewnij się, że Docker nie jest dostępny dla nieautoryzowanych użytkowników. Używaj TLS do komunikacji z demonem Dockera.
-
Stosuj zasadę najmniejszych uprawnień =
Uruchamiaj kontenery z minimalnymi wymaganymi uprawnieniami. Unikaj uruchamiania kontenerów jako root. Unikaj dodawania użytkownika do grupy Docker, zwłaszcza w środowiskach produkcyjnych.
-
Monitoruj i audytuj =
Regularnie audytuj konfiguracje Dockera i bezpieczeństwo kontenerów, aby identyfikować i usuwać podatności.
-
Regularnie aktualizuj =
Utrzymuj Docker i obrazy kontenerów w najnowszej wersji, aby eliminować znane podatności.
Stosując te najlepsze praktyki, możesz lepiej zabezpieczyć swoje środowiska Docker i zminimalizować ryzyko wykorzystania uprawnień administratora.
I nie martw się, jeśli zastanawiasz się, co z tym zrobić i jak w ogóle się tutaj znalazłeś – to są pytania, które powinieneś zadać. Omówimy wszystko w zależności od zainteresowania. Więc wysyłaj swoje pytania i do zobaczenia wkrótce.