Jak mogę wyczyścić dane logowania do pamięci podręcznej domeny?

11

Powiązane: Jak włączyć uwierzytelnianie domeny przez sieć bezprzewodową w systemie Windows 7 / 2k8?

Aby przetestować logowanie do domeny za pomocą połączenia bezprzewodowego, które próbuję skonfigurować w powyższym pytaniu, potrzebuję konta, które nie ma buforowanych poświadczeń domeny w systemie lokalnym. Niestety w moim biurze jest tylu ludzi, którzy mogą pomóc mi to przetestować i nawet wtedy wolałbym im tego nie przeszkadzać. Tak więc chciałbym móc wyczyścić swoje własne poświadczenia zapisane w pamięci podręcznej po każdym logowaniu.

Jak mogę wyczyścić lokalną pamięć podręczną, zachowując jednocześnie możliwość buforowania poświadczeń w przyszłości?

Iszi
źródło

Odpowiedzi:

10

Odpowiedź Davida Yu jest raczej ukierunkowana, ale istnieje sposób, aby to zrobić bez bezpośredniej edycji rejestru. Ponownie jednak zadziała to tylko wtedy, gdy ustawienie nie zostanie skonfigurowane przez GPO.

Najpierw chciałbym wskazać, gdzie przechowywane są buforowane dane uwierzytelniające. Pomoże to zademonstrować (i dla celów rozwiązywania problemów zweryfikować) wpływ zmian w konfiguracji.

UWAGA: Znalazłem tę informację w kilku miejscach w internecie, z których większość zalecanych przeciwko modyfikacji tych wartości ręcznie.

Klucz rejestru przechowujący buforowane dane logowania do domeny jest ukryty nawet przed administratorami. Jest dostępny tylko dla konta SYSTEM. Dlatego, aby go wyświetlić, potrzebujesz narzędzia takiego jak psexec(dostępne od Microsoft, ale nie instalowane domyślnie), które pozwoli ci działać regeditjako SYSTEM. Wiersz polecenia, aby to zrobić (zakładając, że jest zainstalowany, iw twoim %PATH%) to:

psexec -d -i -s regedit

Gdy już tam będziesz, przejdź do HKLM\SECURITY\Cache\. Tutaj powinieneś zobaczyć kilka wartości BINARNYCH. Będzie jeden o nazwie NL $ Control, a drugi o nazwie NL $ ## dla każdego boksu, który jest dostępny dla poświadczeń buforowanych. (Domyślnie 10)

HKLM \ SECURITY \ Cache na serwerze 2003

Ponownie chcę tutaj podkreślić, że nie powinieneś ręcznie modyfikować ani usuwać tego klucza ani jego wartości.

Skoro już wiemy, gdzie są przechowywane dane, i że nie powinniśmy ich tam dotykać , jak to wyczyścić?

Znów odpowiedź Davida Yu wskaże ci właściwy klucz rejestru. Jeśli jednak nie chcesz bezpośrednio modyfikować rejestru, możesz to zrobić za pomocą lokalnych zasad bezpieczeństwa.

secpol.msc

W drzewie Ustawienia zabezpieczeń przejdź do Local Policies\Security Options. Oto polityka o nazwie Interactive logon: Number of previous logons to cache (in case domain controller is not available).

Lokalne zasady bezpieczeństwa na serwerze 2003

Domyślnie jest to ustawione na 10 logons. Aby wyczyścić pamięć podręczną, ustaw ją na zero i kliknij OK. W Server 2008 nastąpi to natychmiast. W przypadku Server 2003 konieczne będzie ponowne uruchomienie. Wpływ można zobaczyć w HKLM\SECURITY\Cache\miejscu, w którym nie będzie już żadnych wartości NL $ ##.

Wyczyszczono pamięć podręczną referencji na serwerze 2003

Aby ponownie włączyć buforowanie poświadczeń, edytuj tę samą Politykę, aby odzwierciedlić preferowaną wartość, i naciśnij OK. Ponownie, jeśli korzystasz z serwera 2008, zacznie to obowiązywać natychmiast. Serwer 2003 będzie wymagał ponownego uruchomienia. Zauważ, że jeśli robisz to na serwerze 2008 i nie wylogowałeś się ani nie uruchomiłeś ponownie, możesz zobaczyć, że miejsca pamięci podręcznej zostały przywrócone, ale nie ma w nich rzeczywistych danych.

Puste miejsca w pamięci podręcznej poświadczeń na serwerze 2008

Wykonanie tego bez wylogowywania się lub ponownego uruchamiania w Server 2008 może być przydatne, jeśli chcesz po prostu szybko sprawdzić, która funkcja wymaga tymczasowo wyłączonego buforowania poświadczeń. Pomaga również upewnić się, że nie zapomnisz przywrócić zmiany po następnym logowaniu.

Iszi
źródło
6

Możesz zmodyfikować rejestr systemu, aby wyłączyć buforowane poświadczenia logowania. Ustaw klucz rejestru na 0. Będzie to wymagało ponownego uruchomienia po każdej zmianie. Zakłada się również, że nie masz obiektu GPO, który ustawia ten klucz.

HKEY_LOCAL_MACHINE \ Software \ Microsoft \ Windows NT \ Aktualna wersja \ Winlogon \

ValueName: CachedLogonsCount

Typ danych: REG_SZ

Wartości: 0–50

David Yu
źródło
Pamiętaj, że ta zmiana musiałaby zostać później przywrócona, jeśli chcesz zachować buforowanie referencji po zakończeniu testowania. Cofnięcie zmiany nie przywróci starych buforowanych danych uwierzytelniających, ale pozwoli buforować nowe dane logowania.
Iszi
Obawiam się, że odpowiedź Davida jest najlepsza, jaką możesz dostać. Wydaje się, że nie ma sposobu na „wyczyszczenie” pamięci podręcznej domeny dla jednego użytkownika innego niż całkowite wyłączenie ich poprzez ustawienie tej wartości rejestru na 0.
Yanick Girouard
@YanickGirouard Jest łatwiejszy sposób, który nie wymaga ponownego uruchomienia komputera lub surowej edycji rejestru - przynajmniej nie na serwerze 2k8. Już to rozgryzłem, zanim opublikowałem to pytanie, ale pomyślałem, że dam trochę czasu, aby ktoś inny mógł je opublikować. Jeśli nikt inny tego nie zrobił, prawdopodobnie dzisiaj opublikuję moją odpowiedź.
Iszi
Prześlij swoją odpowiedź i zaakceptuj ją jak najszybciej. Na tym właśnie polegają te fora: dzielenie się wiedzą! Dziękuję :)
Yanick Girouard
@YanickGirouard Właśnie dlatego opublikowałem ten wątek, aby umożliwić dzielenie się wiedzą. Lubię też dzielić przedstawiciela, jeśli ktoś chce skorzystać z okazji. Zbieram zrzuty ekranu dla mojej odpowiedzi.
Iszi
2

Sposób zmodyfikowania przechowywanych poświadczeń w pamięci podręcznej jest (co dziwne) poprzez modyfikację opcji bezpieczeństwa \ Logowanie interakcyjne: liczba poprzednich logowania do pamięci podręcznej zasad za pomocą edytora zasad grupy (gpedit)

Jim B.
źródło
-1

Udało mi się wyczyścić wszystkie zapisane hasła, ustawiając wszystkie wpisy NL $ na takie same jak ostatnie (ostatnie kilka wpisów NL $ było takich samych, więc wygląda na to, że są tylko symbolami zastępczymi). Testowałem to na 64-bitowych komputerach z systemem Windows 7 PRO, nie testowałem tego na żadnym innym.

Po prostu skopiuj poniżej do notatnika i zapisz go jako .reg, a następnie uruchom

regedit / s twoja nazwa_pliku.reg

jako konto systemowe.

 Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SECURITY\Cache]
"NL$1"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,04,00,01,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"NL$2"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,04,00,01,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"NL$3"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,04,00,01,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"NL$4"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,04,00,01,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"NL$5"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,04,00,01,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"NL$6"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,04,00,01,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"NL$7"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,04,00,01,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"NL$8"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,04,00,01,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"NL$9"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,04,00,01,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
"NL$10"=hex:00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,04,00,01,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,\
  00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00
Greg
źródło
1
Twoje założenie dotyczące „ostatnich kilku NL $” jest nieprawidłowe, chyba że wykonałeś dokładne testy. Bardziej prawdopodobne jest, że po prostu nie masz 10 lub więcej (lub cokolwiek ustawiony jest limit pamięci podręcznej) użytkownicy logują się do systemu od czasu ostatniego wyczyszczenia pamięci podręcznej. To powiedziawszy, jeśli naprawdę czujesz się na tyle ryzykowny, aby modyfikować te wartości „ręcznie”, możesz napisać dość prosty skrypt w PowerShell, aby sobie z tym poradzić (działając oczywiście jako SYSTEM) zamiast mieć duży plik .reg, który chciałbyś trzeba ręcznie dostosować w zależności od konfiguracji systemu.
Iszi
-2

Najprostszym sposobem na usunięcie zapisanych poświadczeń jest uruchomienie MSTSC i wprowadzenie nazwy lub adresu IP serwera terminali, który jest buforowany. Jeśli została zapisana w pamięci podręcznej jako w pełni kwalifikowana nazwa domeny, to właśnie musisz ją wprowadzić, prawdopodobnie wypełni to pole, a także twoja domena \ nazwa użytkownika. Następnie kliknij Opcje. Jeśli dane logowania są przechowywane, możesz je edytować lub usunąć.

Aby uniemożliwić systemowi buforowanie danych uwierzytelniających, edytuj plik RDP za pomocą notatnika i zmień parametr PromptCredentialOnce: i: 1 na PromptCredentialOnce: i: 0

Jim A Fieser
źródło
Usuwa to „pamięć” poświadczeń klienta RDP, ale nie usuwa pamięci podręcznej z systemu docelowego.
Iszi