Jak działa, oraz jak uruchomić LAPSa już wiecie z poprzednich części (pierwsza, druga i trzecia). Wiecie już, że rozwiązanie to jest niezbędne do zwiększenia bezpieczeństwa komputerów, czy serwerów, ale także całego środowiska Active Directory. Każde rozwiązanie jest na tyle bezpieczne jak jego najsłabsze ogniwo. Pokaże Wam w jaki sposób dbać o bezpieczne przechowywanie haseł.
Podstawowym aspektem jest szyfrowanie haseł. Jest to dostępne tylko w Windows LAPS, jednak warto rozważyć scenariusz migracji. Idźmy dalej.
Hasła jednorazowe
Pierwszy krok do ograniczenia pola ataku jest aktywne używanie LAPSa. Sprowadza się to do sytuacji, w której łączycie się zdalnie (lub lokalnie) do komputera z użyciem hasła administratora lokalnego, tak tego z LAPSa, a po zakończonej sesji resetujecie to hasło na nowe. Jedna sesja = jedno hasło. Co złego zatem w kontach domenowych? Jeśli macie jedno konto do dostępu do stacji roboczych i podłączycie się do skompromitowanej stacji to atakujący automatycznie uzyska dostęp do wszystkich stacji w Waszej organizacji, a co gorsze może nawet do kontrolera domeny. A wtedy to już, krótko mówiąc pozamiatane. Dlatego aby ograniczyć pole ataku, korzystać z kont lokalnych. Gdy łączysz się hasłem z LAPSa do skompromitowanej stacji, atakujący uzyska dostęp administracyjny tylko do niej.
Zadbaj o uprawnienia
Już wiecie jak istotnym aspektem jest korzystanie z LAPSa, więc zadbajmy o kolejny ważny aspekt (poza szyfrowaniem 🙂 ). Dbanie o nadawanie uprawnień do odczytu i zapisu haseł. Aby zweryfikować, czy dana jednostka organizacyjna posiada uprawnienia do LAPSa to można użyć polecenia Find-LapsADExtendedRights (dla Windows LAPS) lub Find-AdmPwdExtendedRights.

Innym sposobem na weryfikację dostępów jest zwykły Powershell (bez specjalnego modułu). Ten sam efekt możecie uzyskać za pomocą polecenia Get-Acl
(Get-Acl "AD:OU=Workstations,DC=krbtgt,DC=pl").Access | Where { $_.ActiveDirectoryRights -like "*Extended*" }

Łatwiej jest przeglądać te uprawnienia przeglądać w oknie widoku siatki (Out-GridView)

Dlaczego to takie ważne? Zbyt szerokie uprawnienia, to zbyt wiele osób ma dostęp do haseł. No dobra, a co jeśli szyfrujemy hasła? To nawet nie będąc w grupie mogącej je odszyfrować, można poznać która grupa(y) posiadają takie moce. Wystarczy pobrać pole z zaszyfrowanym hasłem i je przekonwertować z postaci binarnej do UTF-8
$password = (Get-ADComputer CLI2 -Properties *)."msLAPS-EncryptedPassword"
[System.Text.Encoding]::UTF8.GetString($password)

W gąszczu dziwnych znaczków można rozpoznać SID, a po jego odszukaniu

W ten oto sposób wiadomo w jaką grupę celować.
Pamiętajcie, zawsze musicie działać tak, aby być o krok przed cyberzagrożeniami. Jeśli chcecie abym poruszył jeszcze jakiś temat związany z LAPSem, ale nie tylko dajcie znać.