Kolejnym wyzwaniem na platformie Hack The Box w ścieżce Starting Point jest maszyna Dancing, oznaczona poziomem trudności Very Easy. W tym laboratorium analizuję maszynę z systemem Windows oraz badam konfigurację usługi SMB (Server Message Block), wykorzystywanej do współdzielenia plików i drukarek w sieci lokalnej.

Skanowanie i identyfikacja usługi

Zadanie rozpoczynam od rekonesansu sieci w przydzielonym segmencie pod kątem maszyn z aktywną usługą SMB. Domyślnie protokół ten nasłuchuje na porcie 445/tcp. W celu wykrycia działających hostów uruchamiam skanowanie za pomocą narzędzia nmap:

nmap -p 445 --open -sV 10.129.17.151/24

W poleceniu wykorzystałem następujące przełączniki:

  • Ograniczenie portów (Port Specification) – parametr -p 445 zawęża badanie do portu 445.
  • Filtrowanie otwartych portów (Open Ports Only) – opcja --open pomija hosty, na których badany port jest zamknięty lub filtrowany.
  • Wykrywanie wersji (Service Version Detection) – flaga -sV odpytuje usługę, aby zidentyfikować oprogramowanie i jego wersję.

Wynik skanowania wskazuje aktywne maszyny z otwartym portem 445/tcp, w tym cel 10.129.17.151, na którym zidentyfikowano usługę microsoft-ds.

Przeglądanie udziałów sieciowych SMB

Do interakcji z serwerem SMB oraz weryfikacji udostępnionych zasobów wykorzystuję narzędzie smbclient. Na początku odpytuję cel o listę dostępnych udziałów, sprawdzając możliwość nawiązania sesji bez podawania hasła:

smbclient -L 10.129.17.151 -N

W wywołaniu użyto przełączników:

  • Wyświetlenie udziałów (List Shares) – flaga -L pobiera listę dostępnych zasobów sieciowych z danego hosta.
  • Brak hasła (No Password) – przełącznik -N pomija monit o hasło, realizując próbę uwierzytelnienia anonimowego.

W odpowiedzi serwer zwraca listę zasobów:

Oprócz domyślnych udziałów administracyjnych (ADMIN$, C$, IPC$) na serwerze skonfigurowany jest niestandardowy zasób dyskowy WorkShares.

Dostęp anonimowy i eksploracja udziału

Podejmuję próbę połączenia z udziałem WorkShares bez podawania poświadczeń:

smbclient //10.129.17.151/WorkShares -N

Serwer akceptuje połączenie i udostępnia interaktywną powłokę smbclient. Po wylistowaniu zawartości odkrywam dwa foldery użytkowników: Amy.J oraz James.P.

Pobranie danych i zdobycie flagi

Aby sprawnie przejrzeć wszystkie pliki na lokalnej maszynie, decyduję się na rekursywne pobranie całej zawartości udziału. W powłoce smbclient wykonuję następujące polecenia:

recurse on
prompt off
mget *

Wprowadzone komendy odpowiadają za:

  • Tryb rekursywny (Recursive Mode) – polecenie recurse on włącza przechodzenie przez wszystkie podkatalogi.
  • Wyłączenie monitów (Prompt Off) – polecenie prompt off wyłącza konieczność potwierdzania pobierania każdego pliku z osobna.
  • Pobieranie wielu plików (Multiple Get) – komenda mget * pobiera wszystkie znalezione pliki do lokalnego katalogu roboczego.

Strukturę pobranych danych weryfikuję poleceniem tree:

W katalogu użytkownika James.P znajduje się plik flag.txt. Odczytanie jego zawartości w terminalu pozwala uzyskać flagę i pomyślnie ukończyć laboratorium.

Podsumowanie

Laboratorium Dancing pokazuje ryzyko związane z nieprawidłowym zarządzaniem uprawnieniami w usłudze SMB. Pozostawienie publicznego, anonimowego dostępu do udziałów zawierających pliki użytkowników umożliwia każdemu wgląd w poufne dane organizacji. W środowiskach produkcyjnych należy wymusić uwierzytelnianie, wyłączyć sesje anonimowe (tzw. sesje zerowe) oraz ściśle kontrolować listy kontroli dostępu (ACL).


Raport z testów można pobrać tutaj.