Friday, April 18th, 2008...12:18 am
Jak zatrzymać czas …
Zatrzymanie czasu może być rzeczą trudną … więc może na początek tylko odczytać, a żeby nie było prostu to niekoniecznie z zegarka. Ale do rzeczy.
Znajomy ostatnio zapytał sie mnie jak przełożyć na zrozumiałą formę wartość atrybutu pwdLastSet. Moja pierwsza odpowiedź brzmiała - cóż za niespodzianka - adfind.exe. Adfind radzi sobie z takim zadaniem nadwyraz dobrze:
C:\Temp>adfind -b “CN=Administrator,CN=Users,DC=w2k,DC=pl” -s base pwdlastset -tdc
AdFind V01.37.00cpp Joe Richards (joe@joeware.net) June 2007
Using server: W03DC1.w2k.pl:389
Directory: Windows Server 2003dn:CN=Administrator,CN=Users,DC=w2k,DC=pl
>pwdLastSet: 12/22/2005-17:18:55 Central European Daylight Time
Hmmm … odpowiedź znajomego brzmiała:
‘adfind.exe’ is not recognized as an internal or external command,
operable program or batch file.
Cóż .. jeżeli wasz system zeznaje tak samo to najwyższy czas to zmienić :). Problem jednak pozostał - jak zamienić wartość pwdLastSet, która przechowywana jest w katalogu jako Interval na czytelną postać, przy pomocy narzędzi dostępnych w systemie (albo dosyć blisko systemu - w niektórych środowiskach nie wolno używać narzędzi innych niż systemowe bądź producenta)?
Zacznijmy więc od scyzoryka uniwersalnego czyli LDP.EXE. W wersji z Windows 2003 LDP.EXE wyświetla tą informację w czytelnej postaci:
CN=Administrators,CN=Builtin,DC=w2k,DC=pl;
1> pwdLastSet: 12/22/2005 16:18:55 Central European Standard
Następne narzędzie, którego możemy użyć to repadmin.exe, który posiada przełącznik /showtime. W tym wypadku musimy jednak trochę “przetworzyć” dane wejściowe. Z wartości atrybutu pwdlastSet usuwamy 7 cyfr licząc od prawej strony i tak otrzymujemy:
C:\Temp>repadmin /showtime 12779738335
12779738335 = 0×2f9bb54df = 05-12-22 15:18.55 UTC = 2005-12-22 16:18:55 local
I na koniec jeszcze narzędzie jak najbardziej z czasem związane czyli w32tm.exe:
C:\Temp>w32tm /ntte 127797383352618256
147913 15:18:55.2618256 - 12/22/2005 5:18:55 PM (local time)
Jak widać można … ale ja i tak polecam adfind.exe i przełączniki pozwalające na deokodowanie tego typu wartości. Naprawdę się przydają.

2 Comments
April 18th, 2008 at 12:03 pm
intryguje mnie tylko data… 2oo5? strasznie dlugo ktos nie zmienial hasla - w tej domenie potrzebna jest lepsza polityka bezpieczenstwa! (;
April 18th, 2008 at 2:53 pm
Data jest prosta do wytlumaczenia - w chwili wypromowania serwera na DC w przypadku pierwszego kontrolera konto lokalne administratora jest “wciagane” do AD z przypadlosciami. W tym przypadku wirtualka byla robiona w zeszlym tygodniu, ale na podstawie maszyny bazowej z 2005 roku wiec taki jest efekt.
Polityki hasel nie ma faktycznie - ale nie chce mi sie jej konfigurowac w srodowisku czysto wirtualnym ktore czasami nawet nie dozywa tych 30 dni przykladowych.
Leave a Reply