Menu dostępności

Jak „zabezpieczyć” komputer przed kradzieżą haseł z pamięci?

O problemie związanym z przechowywaniem w pamięci haseł oraz ich hash’y przez system operacyjny Windows pisaliśmy na Kapitanie Hack’u w kampanii CYBER KILLCHAIN. Okazuję się, że cyberprzestępcy używając takich narzędzi jak np. Mimikatz mogą w prosty sposób pobrać hasła i hash-e z pamięci komputera i wykorzystywać do przeprowadzenia dalszych ataków.
Może nie wszyscy zdają sobie z tego sprawę, ale w systemie Windows znajduje się ustawienie, które jest domyślnie wyłączone i może nam pomóc w zabezpieczeniu się. Włączenie tego ustawienia pozwali nam się chronić przed tego typu zagrożeniem. W tytule specjalnie użyliśmy słowa „zabezpieczyć” w cudzysłowie, ponieważ jak się okazuje, i opiszemy to poniżej, zabezpieczenie nie gwarantuje nam 100% skuteczności. Pokażemy, dlaczego w poniższym artykule.


Co to jest proces LSASS.exe?

LSASS (ang. Local Security Authority Subsystem Service) jest jednym z najbardziej krytycznych procesów w systemie operacyjnym Microsoft Windows. Kto jeszcze z nim nie miał do czynienia to pewnie nie koncentrował się na Windows. Proces Lsass.exe odpowiedzialny jest za egzekwowanie polityki bezpieczeństwa w systemie – sprawdza użytkowników logujących się do komputera lub serwera Windows (lokalnie oraz przy pomocy zdalnego pulpitu), obsługuje zmiany haseł i tworzy tokeny dostępu. W przypadku kontrolerów domeny w Active Directory jest odpowiedzialny za całość procesów uwierzytelniania użytkowników i odpytywania po LDAP usługi katalogowej. Czyli pełni rolę takiego lokalnego strażnika zabezpieczeń systemowych. Jego aktywność jest zapisywana w dzienniku zabezpieczeń systemu Windows (Security). Ponieważ lsass.exe jest kluczowym plikiem systemowym, jego nazwa jest często fałszowana przez złośliwe oprogramowanie. Plik lsass.exe używany przez system Windows znajduje się w katalogu systemowym „Windows” w podfolderze „System32” (najczęściej domyślnie w „C:\Windows\System32”). Jeśli więc zaobserwujesz w Task Managerze (menadżer zadań), że jest on uruchomiony z innej lokalizacji to najprawdopodobniej złapałeś wirusa, oprogramowanie szpiegujące, trojana lub robaka. Zdarza się też, że cyberprzestępcy ze względu na sposób, w jaki niektóre systemy wyświetlają czcionki, mogą nazwać ten plik czymś w rodzaju Isass.exe (duże „I” zamiast małej „l”), aby skłonić użytkowników do zainstalowania lub wykonania złośliwego zamiast zaufanego w systemie pliku.

Właściwości procesu LSASS.exe w Menadżerze zadań Windows

Proces LSASS.exe stał się także przedmiotem ataków hackerskich wykorzystujących luki w jego architekturze bezpieczeństwa, w głównej mierze związane z niezabezpieczoną alokacją w pamięci haseł użytkowników. Narzędzia takie jak Mimikatz wyodrębnia z procesu lsass poświadczenia bez względu na to, czy uruchamiamy je bezpośrednio na serwerze lub stacji roboczej. Może też wykonać zrzut pamięci procesu lsass do pliku i wyodrębnić z niego poświadczenia w późniejszym etapie.


Ochrona procesu LSASS.exe (LSA Protection)

Ochrona procesu LSASS.exe jest ważnym elementem hardeningu systemu Windows. Od wersji Windows Server 2012 R2 i Windows 8.1 oraz nowszych w systemie znajduję się specjalistyczne ustawienie „RunAsPPL” pozwalające zmitygować ryzyko przejęcia haseł z lsass.exe przez oprogramowanie używane przez cyberprzestępców. Kradzież poświadczeń (haseł) jest z punktu hackera jest banalna jeśli uzyskają oni dostęp do systemu na uprawnieniach administratorskich (kilka razy pisaliśmy o użyciu Mimikatz). Dlatego tak ważne jest, abyśmy podczas naszej codziennej pracy na komputerze nie pracowali na koncie z uprawnieniami administracyjnymi!

W systemie Windows 10 i Server 2016 Microsoft zrobił postęp i zaimplementował narzędzie Credential Guard, które pomaga złagodzić problem jednak wcześniejsze wersje systemu Windows są nadal podatne na tego typu ataki.

Zgodnie z następującym artykułem Microsoft, jesteśmy w stanie uruchomić LSASS w specjalnym trybie chronionym. Jeśli zaimplementujemy w systemie ustawienie RunAsPPL zasadniczo uniemożliwimy Mimikatz’owi i podobnemu złośliwemu oprogramowaniu poprawne działanie. Oprócz tego uniemożliwimy również wykonanie zrzutu z pamięci procesu lsass do pliku za pomocą menedżera zadań.


Co musimy zrobić, aby włączyć zabezpieczenie Lsass.exe?

Po pierwsze musimy uruchomić edytor rejestru (narzędzie „regedit”) na prawach administratora lokalnego i dodać następujący klucz DWORD o nazwie RunAsPPL i wartości 1 w ścieżce:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa

Po tej zmianie musimy zrestartować komputer.

Ustawienie w rejestrze pozwalające na ochronę procesu lsass.exe

Po tej operacji powinniśmy być zabezpieczeni przed wykonaniem zrzutu pamięci z procesu „lsass.exe” do pliku oraz domyślnym działaniem Mimikatz’a.

Nieudana próba wykonania pliku zrzutu pamięci dla procesu lsass.exe

Ponieważ zwykłe narzędzie Mimikatz jest rozpoznawane i blokowane przez usługę Windows Defender w celu zademonstrowania działania narzędzia Mimikatz wykonaliśmy kompilację własnego (kapitan.exe) opisaną tutaj. Poniżej przedstawiliśmy próbę pobrania haseł z pamięci narzędzia Mimikatz (kapitan.exe) przy użyciu komendy „sekurlsa::logonpasswords

Zakończona fiaskiem próba pobrania haseł użytkowników z Windows wykonana za pomocą naszej wersji narzędzia Mimikatz

Czy należy do końca ufać zabezpieczeniu RunAsPPL?

Jak to w świecie Microsoft – wszystko byłoby pięknie, gdyby nie pojawiło się kolejne obejście zabezpieczenia. Tak jak w przypadku opisywanego obejścia zabezpieczenia Credential Guard w Windows 10 i Windows 2016, tak ustawieniem RunAsPPL nie osiągniemy w pełni skutecznych zabezpieczeń. Okazuje się, że używając specjalnego sterownika w postaci pliku „mimidrv.sys” możemy usunąć flagi zabezpieczeń w Windows (w tym blokadę UEFI) i obejść zabezpieczenie Microsoft bez konieczności wykonywanie restartu komputera.

Obejście blokady RunAsPPL wykonane w programie Mimikatz

Obejście działa dla najnowszych systemów Windows 10 (wersja 1903 x64 oraz x86). Poniżej przedstawiamy krótkie demo:


Jak sobie radzić z problemem?

Jak widać na powyższym filmie w celu wykonania obejścia blokady RunAsPPL musimy uruchomić program Mimikatz na poświadczeniach posiadających uprawnienie lokalnego administratora. Jest to dla nas bardzo ważne ostrzeżenie, aby używać takich uprawnień jedynie w wyjątkowych sytuacjach oraz pracować na co dzień na poświadczeniach zwykłego użytkownika.

Na pomoc w wykrywaniu tego typu sytuacji może przyjść nam włączenie obsługi HVCI umożliwiając blokadę wgrywania sterowników nie posiadających certyfikatu oraz sprawdzaniu integralności systemu. Jednak włączenie tej funkcji w organizacjach może blokować działanie niektórych legalnych programów, więc implementacja jej może być ryzykowna. W przypadku HVCI i Mimikatz, autor programu chwali się, że potrafi je również obejść.

Monitorowanie malware pod kątem zagrożeń w systemie (wstrzykiwania do pamięci sterowników, monitorowanie procesów itp.) wydaje się być na obecny czas najbardziej skuteczną metodą pozwalająca dowiedzieć się o tego typu przypadkach.

Popularne

Jak zmienić nieznane/zapomniane hasło Administratora na Windows?

Jak zmienić nieznane/zapomniane hasło Administratora na Windows?

W tym artykule pokażemy, jak możemy zmienić hasło administratora na komputerze posiadając do niego fizyczny dostęp. Artykuł ten można potraktować także jako przestrogę dla firm, które nie zaimplementowały jeszcze odpo...
Jak poznać hasło administratora lub użytkowników logujących się do Twojego komputera?

Jak poznać hasło administratora lub użytkowników logujących się do Twojego komputera?

Jeśli masz odrobinę szczęścia lub „odpowiednie umiejętności” i potrafisz zdobyć lokalne uprawnienia administracyjne na Twoim komputerze w firmie lub zaliczasz się do grona tych szczęściarzy, którzy pracuj...
Jak awaria Azure Front Door rzuciła cień na globalne usługi chmurowe

Jak awaria Azure Front Door rzuciła cień na globalne usługi chmurowe

W środę 9 października użytkownicy platformy Microsoft Azure na całym świecie doświadczyli poważnych zakłóceń. Wiele usług stało się niedostępnych, a administratorzy nie mogli nawet zalogować się do portalu...
Zero-day i groźna eskalacja uprawnień w systemie Windows –  analiza CVE-2025-59230 i ostrzeżenie CISA

Zero-day i groźna eskalacja uprawnień w systemie Windows –  analiza CVE-2025-59230 i ostrzeżenie CISA

Ostrzegamy wszystkie firmy i instytucje przed nowo ujawnioną luką w systemie Microsoft Windows – CVE-2025-59230. Jest to poważna podatność, umożliwiająca lokalnemu atakującemu z niskimi uprawnieniami uzyskanie...
Czego nie mówi Broadcom? Luka w VMware jest banalna do wykorzystania i korzysta z niej co najmniej jedna grupa hakerska!

Czego nie mówi Broadcom? Luka w VMware jest banalna do wykorzystania i korzysta z niej co najmniej jedna grupa hakerska!

Niedawno załatana wysoce poważna luka w zabezpieczeniach VMware jest wykorzystywana jako zero-day od października 2024 roku do wykonywania kodu z podwyższonymi uprawnieniami. Taką informacją podzieliło się w...