Windows 10 nie pilnuje dostępu do Rejestru. Można oszukać uwierzytelnianie

Gdy świat zajmuje się łataniem kolejnych odkrywanych podatności w usłudze Bufora Wydruku Windows, dokonano odkrycia dotyczącego uprawnień (ACL) do plików Rejestru. Baza danych SAM, czyli Security Account Manager, jest zaopatrzona w prawa odczytu dla grupy Użytkownicy.

Windows 10 nie pilnuje dostępu do Rejestru.
Windows 10 nie pilnuje dostępu do Rejestru.
Źródło zdjęć: © PxHere
Kamil J. Dudek

21.07.2021 03:40

SAM to jeden z podstawowych elementów (bardzo zaawansowanego i unikatowego w swej architekturze) podsystemu bezpieczeństwa Windows. Dostęp do bazy SAM oznacza możliwość odtworzenia poświadczeń dla wszystkich użytkowników, a więc w konsekwencji - zdobycie wyższych uprawnień. Wystarczy więc zalogować się dowolnym kontem z grupy Użytkownicy, by następnie zdobyć pełne prawa administracyjne.

Chroniony plik

Dostęp do katalogu Windows\System32\Config, w którym znajduje się plik SAM, jest niemożliwy z poziomu zwykłego użytkownika. Także próba przetworzenia tego pliku przez Edytor Rejestru kończy się niepowodzeniem. Wydaje się więc, że dostęp do SAM jest chroniony. Windows jednak nigdy nie jest taki prosty.

Dostęp do plików Rejestru jest chroniony
Dostęp do plików Rejestru jest chronionyKamil J. Dudek

Bez praw do listowania katalogu, dalej możemy odpytać obiekt o ACL, jeżeli istnieje. Oznacza to, że nie da się wypisać zawartości katalogu, ale da się wypisać prawa do tych plików w nim, do których mamy uprawnienia. Czy da się takie pliki otworzyć. Nie, ale...

Istnieje taki wynalazek, jak Volume Shadow Copy (VSS), w polskich wersjach systemu znany pod nazwą Usługi Kopiowania Woluminów w Tle. Jest to metoda sporządzania przezroczystych kopii zapasowych oraz wersjonowania plików, stosowana przez wbudowane narzędzia do kopii zapasowych w konfiguracjach firmowych. Z usługi tej korzysta jednak parę innych elementów, jak SQL Server, WID, Active Directory czy Windows Server Backup. Używa jej też... Przywracanie Systemu oraz Hyper-V, które bywa uruchomione przy okazji Device Guard oraz Piaskownicy systemowej.

Kopie zapasowe

Działająca usłga VSS tworzy przezroczystą kopię woluminu, a kopie te przegląda się z nieco innymi ograniczeniami w kwestii przeglądania katalogów (path traversal). Dzięki temu, jeżeli jakiś plik w kopii VSS (zwanej cieniem) ma ACL pozwalający użytkownikowi go przejrzeć, będzie to wykonalne niezależnie od uprawnień na ścieżce "po drodze".

Gałęzie Rejestru również są chronione
Gałęzie Rejestru również są chronioneKamil J. Dudek

W rezultacie, da się "zrzucić" bazę SAM będąc zwykłym użytkownikiem, gdy tylko istnieje choć jedna kopia VSS. Przeglądanie VSS powinno wymagać uprawnień administracyjnych. Wymagają ich vssadmin oraz shadowcopyview. Nie wymaga ich jednak FileTest, który odpytuje kopie nie przez API VSS, a przez plikowe API Windows NT.

Można czy nie można?
Można czy nie można?Kamil J. Dudek

Co ciekawe, występowanie błędu jest nieprzewidywalne. A więc nie tylko VSS bywa nieuruchomione na niektórych komputerach z Windows, ale i same uprawnienia dla pliku SAM w niektórych wersjach są poprawne! Użytkownicy dzielą się swoimi odkryciami, a te nie pozwalają nakreślić żadnej korelacji. Windows Server wydaje się niepodatny. Windows Insider - podatny. Wersje 20H2/21H1/21H2 - w kratkę. Niektóre instalacje mają feralne ACL, niektóre nie.

Będzie poprawka?

Nie udało się wydzielić czynnika odpowiedzialnego za ten stan rzeczy, problem jest jednak poważny na tyle, że można oczekiwać poprawki. Choć nie jest to pierwszy problem z uprawnieniami, a niektórych poprzednich nie załatano. Ten jednak podważa sensowność mechanizmu bezpieczeństwa Windows dość bezpośrednio.

Podatność nieformalnie nazywa się Serious SAM, ale dotychczas jest to jedynie żartobliwe określenie.

Programy

Zobacz więcej
Wybrane dla Ciebie
Komentarze (60)