Menu dostępności

Kilka metod na znalezienie kont serwisowych w Active Directory

Kilka metod na znalezienie kont serwisowych w Active Directory

Konta serwisowe są krytycznym elementem każdego środowiska informatycznego, używanym do wykonywania różnych zautomatyzowanych procesów. Jednocześnie konta te mogą stanowić poważne zagrożenie dla bezpieczeństwa, jeśli nie są odpowiednio zarządzane i monitorowane. W tym artykule przyjrzymy się, jak znaleźć (i audytować) konta serwisowe w usłudze Active Directory (AD), gdyż nie jest to wcale takie proste.

Jak rozumieć konta serwisowe w AD?

Konta serwisowe to specjalne typy kont w usłudze Active Directory, które zapewniają kontekst bezpieczeństwa dla usług działających na serwerach Windows. Konta te mają unikalne uprawnienia domenowe i lokalne prawa dostępu, pozwalające im wykonywać określone zadania. Ze względu na podwyższone uprawnienia konta serwisowe mogą stać się głównymi celami atakujących. Warto więc zaopatrzyć się w odpowiedni nadzór nad tymi obiektami.

Konta serwisowe są zazwyczaj używane do uruchamiania skryptów, zarządzania aplikacjami i usługami lub wykonywania innych zautomatyzowanych funkcji. W przeciwieństwie do zwykłych kont użytkowników nie są powiązane z żadną konkretną osobą – raczej służą jako środek interakcji usług i aplikacji z siecią. Są zaprojektowane tak, aby działać w tle bez konieczności interwencji człowieka.

Znalezienie kont serwisowych w środowisku AD

Wylistowanie kont serwisowych w Active Directory jest często złożonym zadaniem ze względu na ogromną liczbę kont i skomplikowaną naturę struktur AD, ale przede wszystkim dlatego, że nie mamy żadnej odrębnej klasy obiektu, która rozróżnia na poziomie schematu AD konta zwykłych użytkowników (np. pracowników) od kont serwisowych.

Poszukiwania warto zacząć od poniższych kroków:

  1. Przejrzyj dokumentację. Zacznij od przejrzenia istniejącej dokumentacji lub list inwentarzowych, które mogą zawierać informacje o kontach. Takie listy często tworzone są przy okazji audytów domeny AD. Można na nich znaleźć nazwy kont, opisy i powiązane aplikacje lub skrypty.
  2. Użyj narzędzi Active Directory. Użyj wbudowanych narzędzi Microsoft, aby wyszukać konta. Jednym z powszechnie używanych narzędzi jest konsola Active Directory Users and Computers (ADUC). Otwórz ADUC, przejdź do swojej domeny i użyj funkcji wyszukiwania, aby filtrować konta o określonych atrybutach powszechnie kojarzonych z kontami do usług, np. tekst „ServiceAccount” w polu opisu czy fragment loginu „sa” lub „svc” itp.
  3. Sprawdź specjalne flagi na kontach. Konta serwisowe często mają ustawione specjalne flagi zmieniające ich zachowanie. Flagi te to na przykład „DONT_EXPIRE_PASSWORD” lub „PASSWORD_NOT_REQUIRED”. Możesz użyć poleceń PowerShell lub zapytań LDAP, aby wyszukać konta z zaznaczonymi takimi flagami.
  4. Sprawdź członkostwo w grupach. Konta serwisów często są członkami określonych grup zabezpieczeń, które przyznają im niezbędne uprawnienia do wykonywania zadań. Przejrzyj członkostwo w grupach takich jak np. „Domain Admins”, „Account Operators” czy „Server Operators”, ale też w innych posiadających podwyższone/oddelegowane uprawnienia na poziomie całej domeny.
  5. Poszukaj od strony aplikacji/usługi. Zidentyfikuj aplikacje lub usługi, które polegają na kontach serwisowych. Skonsultuj się z właścicielami aplikacji lub administratorami systemu, aby zebrać informacje o powiązanych kontach.
  6. Sprawdź atrybut SPN na kontach. Niektóre usługi, jak na przykład MS SQL Server, rejestrują w AD specjalną wartość na koncie serwisowym w polu SPN (ServicePrincipalName). Pozwala to na łatwe powiązanie konta z konkretną już usługą. W tym poradniku przedstawiono kilka metod, aby pobrać wszystkie konta z uzupełnionym atrybutem SPN z naszego środowiska.
  7. Odpytaj z PowerShell serwery w swojej domenie. Jeśli posiadasz uprawnienia i dostępy sieciowe do zdalnego odpytania o usługi każdego komputera w swojej sieci, to najlepszym rozwiązaniem będzie wykonanie takiego zapytania w PowerShell:
    get-wmiobject win32_service -comp <nazwa bądź lista komputerów> -filter „startname like '%nazwa domeny%'” | select name, status, startname
    Pozwoli to na wylistowanie wszystkich kont serwisowych ze wszystkich odpytanych serwerów. Oczywiście będą to tylko konta, na których działa jakakolwiek usługa. Konta użyte w skryptach, API czy wewnątrz aplikacji nie będą tutaj widoczne.

Co możemy zrobić, aby ułatwić zarządzanie kontami serwisowymi w AD?

Jak widzimy powyżej, określenie kryteriów i znalezienie w AD kont serwisowych to niełatwe zadanie. Możemy jednak podjąć kilka kroków, żeby je sobie ułatwić:

  • Ujednolicić nazewnictwo kont używanych do obsługi serwisów, np. rozpoczynać nazwę od: sa_ lub svc-.
  • Umieszczać konta serwisowe w specjalnie wybranym miejscu w strukturze AD.
  • Korzystać z kont typu gMSA i MSA

Popularne

7-Zip podatny na NTFS Heap Overflow

7-Zip podatny na NTFS Heap Overflow

Jaroslav Lobačevski z GitHub Security Lab opublikował analizę nowej podatności odnalezionej w 7-Zip, oznaczonej jako GHSL-2026-140. Luka dotyczy parsera NTFS i prowadzi do uszkodzenia pamięci procesu, co w...
Fałszywe ChatGPT i Claude infekują komputery. Cyberprzestępcy wykorzystują boom na AI

Fałszywe ChatGPT i Claude infekują komputery. Cyberprzestępcy wykorzystują boom na AI

Popularność sztucznej inteligencji rośnie w niespotykanym tempie. Narzędzia takie jak ChatGPT czy Claude stały się codziennym wsparciem dla programistów, analityków, studentów i firm. Miliony użytkown...
YellowKey: koniec mitu o bezpieczeństwie BitLockera? Nowy zero-day pozwala ominąć szyfrowanie przy użyciu zwykłego pendrive’a

YellowKey: koniec mitu o bezpieczeństwie BitLockera? Nowy zero-day pozwala ominąć szyfrowanie przy użyciu zwykłego pendrive’a

Jeszcze w piątek opisywaliśmy nowe podatności typu zero-day, o nazwach YellowKey oraz GreenPlasma, uderzające w mechanizmy bezpieczeństwa systemów Windows. Najnowsze informacje pokazują jednak, że spr...
Repozytoria na GitHubie zainfekowane w ataku Megalodon!

Repozytoria na GitHubie zainfekowane w ataku Megalodon!

Ponad 5 500 repozytoriów na GitHubie zostało zainfekowanych złośliwym oprogramowaniem w ataku na łańcuch dostaw, wykorzystującym zautomatyzowane zatwierdzanie zmian. Kampania, nazwana „Megalodon”, opiera si...
Claude Mythos AI znajduje tysiące podatności. Problem w tym, że nikt nie nadąża z ich łataniem

Claude Mythos AI znajduje tysiące podatności. Problem w tym, że nikt nie nadąża z ich łataniem

Przez lata największym problemem bezpieczeństwa było znajdowanie podatności. Dziś okazuje się, że to coś zupełnie innego – tempo ich naprawiania. Bardzo dobrze pokazuje to projekt Glasswing od Anthrop...