Menu dostępności

Ocena zabezpieczeń w środowisku IT wykorzystująca metodę ruchu bocznego i eskalację uprawnień w AD

W tym artykule dowiesz się jak szybko i w niezauważony sposób można sprawdzić zabezpieczenia środowiska Active Directory w kontekście zdobycia poświadczeń użytkowników i ich haseł na komputerach. Pokażemy fantastyczne narzędzie SprayKatz używane przez zespoły Blueteam lub Redteam oraz Security Officerów/CISO, którzy chcą ocenić możliwości ruchów bocznych lub eskalacji uprawnień w środowiskach Active Directory.


Wprowadzenie

Być może wiesz, że zrzut skrótu haseł kont użytkowników Windows lub w Active Directory jest bardzo przydatną metodą do wykonywania ruchu bocznego lub eskalacji uprawnień w sieci. W tym artykule opisaliśmy i pokazaliśmy różne metody na wykonanie zrzutu pamięci z krytycznego procesu LSASS.EXE i omówiliśmy sposob wydobycia z niego haseł użytkowników (hashy). Jeśli Twoja firma korzysta z Active Directory, ta metoda najprawdopodobniej będzie używana przez wiele współczesnych szkodliwych programów, które zawierają niektóre fragmenty kodu z bardzo znanych narzędzi, takich jak na przykład Mimikatz. Inny problem, który dotyka nadal wiele firm to współdzielone hasło administratora lokalnego, takie samo na wielu komputerach. Stwarza to duże ryzyko i ułatwia pracę cyberprzestępcom, którzy za pomocą opisywanej poniżej metody będą mogli w łatwy sposób skompromitować całe środowisko.

W tym artykule zbadamy narzędzie Spraykatz w wersji (v0.9.8), które może pomóc w różnych sytuacjach i być wykorzystane przez różne osoby / zespoły zajmujące się cyberbezpieczeństwem:

  • Security Officer, CISO: Może użyć narzędzia w celu pokazania pracownikom wewnątrz firmy i ich edukacji w jaki sposób złośliwe oprogramowanie może wykorzystywać skróty ich haseł i przyczynić się do powstania problemów związanych z bezpieczeństwem.
  • BlueTeam: Może użyć narzędzia w celu oceny świadomości i bezpieczeństwa w firmie pod względem możliwości zrzutu skrótów haseł użytkowników i wykrywalności tej metody oraz czy niektóre złośliwe oprogramowanie lub atakujący mogą użyć tej metody, aby znaleźć i przechwycić konta uprzywilejowane na stacjach roboczych.
  • RedTeam: Może użyć narzędzia w celu przeszukania stacji roboczych i odnalezienia kont uprzywilejowanych, na których będą mogli wykonać eskalację uprawnień.

Czym jest SprayKatz?

Spraykatz to narzędzie autorstwa Lydéric Lefebvre umożliwiające uzyskanie poświadczeń użytkowników na komputerach z systemem Windows i dużych środowiskach Active Directory. Podczas uruchomienia próbuje zdalnie logować się na komputery i parsować zrzuty pamięci LSASS, aby w jak największym stopniu uniknąć wykrycia przez oprogramowanie antywirusowe. Jego nazwa kojarzy nam się trochę z narzędziem do przechwytywania poświadczeń w systemie Windows MimiKatz autorstwa Benjamina Delpy. Nic w tym dziwnego, bo oprócz podobieństwa w nazwie narzędzie SprayKatz korzysta z modułu Mimikatz do dekodowania plików dump, które wcześniej ściąga lokalnie z komputerów w sieci. Oprócz Mimikatz’a korzysta z nieznacznie zmodyfikowanych części następujących narzędzi (moduły):

  • Impacket
  • Pypykatz
  • Pywerview
  • Sysinternals
  • hackndo

Instalacja Spraykatz

Narzędzie do uruchomienia wymaga języka Pythona w wersji większej niż 3. W celu instalacji narzędzia na systemie operacyjnym Linux konieczne będzie wykonanie następujących komend.

Zdobycie uprawnień root:

sudo su

Wykonanie aktualizacji zainstalowanych pakietów:

apt update

Zainstalowanie pythona i nmap:

apt install -y python3.6 python3-pip nmap

Pobranie z github narzędzia wraz z wszystkimi zależnymi modułami:

git nmap git clone –recurse-submodules https://github.com/aas-n/spraykatz.git

Instalacja SprayKatz oraz pakietów zależnych zgodnie z wymaganiami:

cd spraykatz pip3 install -r requirements.txt


Jak korzystać ze Spraykatz?

Spraykatz jest bardzo prosty w użyciu. Abyśmy mogli z niego skorzystać, musimy określić w jego linii wywołania następujące parametry:

  • Konto do przeprowadzenia skanowania – musimy użyć konta z uprawnieniami lokalnego administratora na docelowym systemie lub konta użytkownika Active Directory, które posiada członkostwo w lokalnej grupie administratorów.
  • Adres IP komputera lub zakres jaki chcemy przeskanować

Wymagane parametry

Przełączniki Opis
-u, –username Nazwa użytkownika, na którym będzie wykonywane skanowanie. Użytkownik musi posiadać uprawnienia administratora na docelowych komputerach w celu zdalnego wykonania na nich kodu.
-p, –password Hasło użytkownika lub jego NTLM hash podany w formacie LM:NT
-t, –targets Adres IP komputera I/lub zakres adresów IP. Można wskazać plik zawierający listę (po jednym IP w linii), lub podać je w jednej linii po przecinku.

Opcjonalne parametry

Przełączniki Opis
-d, –domain Nazwa domeny użytkownika (jeśli używamy konta z domeny Active Directory). Jeśli konto nie jest z domeny można użyć zamiast jej nazwy kropki “- d .”.
-v, –verbosity Tryb logowania operacji {warning, info, debug}. Domyślny == info.

Scenariusz – skanowanie komputerów w domenie i pozyskanie hashy

UWAGA! Użycie narzędzia w środowisku produkcyjnym może nieść za sobą niespodziewane konsekwencje. Nie odpowiadamy za jego kod ani skutki jakie może wywołać jego działanie w środowisku sieciowym. Używasz go na własną odpowiedzialność.

W naszym przykładzie skanowania użyjemy następujących ustawień:

  • Domena Active Directory: Kapitan
  • Konto, które ma uprawnienia administratora lokalnego na komputerze docelowym: Administrator. Poszliśmy tutaj na skróty, lecz konto z lokalnymi uprawnieniami administracyjnymi można zdobyć w różny sposób, który opisywaliśmy wielokrotnie na naszym portalu.
  • Hasło konta: P@ssw0rd
  • Zakres komputów do przeskanowania: podsieć 172.16.215.0/24

./spraykatz.py -u Administrator -p P@ssw0rd -d Kapitan -t 172.16.215.0/24

W wyniku skanowania SprayKatz rozpoznał w domenie 2 komputery i wykonał na nich zrzut hashy haseł użytkowników (w tym kont komputerów): Wynik przedstawia poniższy ekran.


Podsumowanie

Narzędzie SprayKatz pomaga zrozumieć problem bezpieczeństwa związany z hashami haseł użytkowników. Wykorzystuje metody pozwalające zdobyć inne poświadczenia użytkowników na komputerach w sieci. Jeśli cyberprzestępca pozyska hasło lub jego skrót (hash) uprzywilejowanego użytkownika w Active Directory lub nawet użytkownika, który posiada lokalne uprawnienia administracyjne na stacji roboczej, będzie mógł w łatwy i niezauważalny sposób dla oprogramowania antywirusowego wykonać ruch boczny i eskalację uprawnień na innych komputerach w sieci. Za jego pomocą można skompromitować całą sieć w firmie, pod warunkiem, że nie wdrożyła ona odpowiednich mechanizmów do ochrony i zabezpieczeń.

Popularne

Czym są non-human identities (NHI)? Jak możemy je chronić i jakie zagrożenia stwarzają dla organizacji?

Czym są non-human identities (NHI)? Jak możemy je chronić i jakie zagrożenia stwarzają dla organizacji?

W dzisiejszym artykule opisujemy pewien problem istniejący w firmach i organizacjach, związany z tożsamościami nieludzkimi (non-human identities), czyli inaczej – tożsamościami niezwiązanymi z pracow...
Ukryty most: jak błąd w Cloudflare ACME omijał zapory i odsłaniał serwery

Ukryty most: jak błąd w Cloudflare ACME omijał zapory i odsłaniał serwery

Automatyczne zarządzanie certyfikatami SSL/TLS stanowi dziś podstawę bezpiecznej komunikacji w Internecie. Kiedy więc specjaliści od cyberbezpieczeństwa z FearsOff odkryli poważną wadę w implementacji tego mec...
Filtrowanie URL i DNS, dlaczego to takie ważne?

Filtrowanie URL i DNS, dlaczego to takie ważne?

Filtrowanie adresów URL ogranicza zawartość stron internetowych, do których użytkownicy mają dostęp. Odbywa się to poprzez blokowanie określonych adresów URL przed załadowaniem. Firmy wdrażają filtrowanie...
Nowe podatności w architekturze sieci 5G

Nowe podatności w architekturze sieci 5G

Nowe badania nad architekturą 5G ujawniły lukę w zabezpieczeniach modelu dzielenia sieci oraz zwirtualizowanych funkcjach sieciowych, które można wykorzystać do nieautoryzowanego dostępu do danych, a tak...
Jak uzyskać pełny dostęp do Windows? Tworzymy backdoor i uruchamiamy wiersz linii poleceń przed ekranem logowania na koncie SYSTEM

Jak uzyskać pełny dostęp do Windows? Tworzymy backdoor i uruchamiamy wiersz linii poleceń przed ekranem logowania na koncie SYSTEM

W dzisiejszym odcinku hakowania pokażemy stary i sprawdzony, choć nieco zmodyfikowany sposób na przejęcie pełnej kontroli w Windows i to jeszcze przed zalogowaniem się do systemu (na ekranie powitalnym). Za je...