Zabawię się w pogromcę mitów... Dość często różni "znawcy" bezpieczeństwa Windows podają prosty przykład na uruchomienie programu z prawami użytkownika SYSTEM jako dowód na to, że system jest niebezpieczny. Problem w tym, że... nie jest to żadna podatność.
Mityczny "uprzywilejowany zegar"
Metoda ta opiera się na wykorzystaniu polecenia at oraz Schedule service. Uruchomienie programu z prawami użytkownika SYSTEM jest proste, wystarczy wydać polecenie w stylu: at HH:MM /interactive cmd.exe, gdzie HH:MM oznacza godzinę, o której program (w tym przypadku konsola) ma się uruchomić. Program uruchamiany w ten sposób uruchamia się rzeczywiście z prawami SYSTEM. Problem? Nie bardzo: C:\>at 07:51 /interactive cmd.exe Access is denied. Tak, zwykły użytkownik nie może skorzystać z at, a więc nie może eskalować swoich uprawnień do poziomu SYSTEM.
A co z administratorem? Przecież SYSTEM to więcej niż Administrator. Tak, ale:
- administrator ma prawo do instalacji usług, które mogą pracować z uprawnieniami SYSTEM,
- administrator ma prawo do instalacji sterowników urządzeń,
Sterowniki urządzeń pracują (zwykle) w trybie jądra, a to więcej niż praca z uprawnieniami SYSTEM.
Podsumowując - pokazywanie, że z poziomu administratora można uruchomić kod z prawami użytkownika SYSTEM może i jest trendy na podwórku forum, w praktyce jednak nie wnosi to NIC.
Cóż, widać niektórzy jeszcze żyją w czasach XP SP0 kiedy to at można było uruchomić z dowolnego usera, i wskakiwało się na SYSTEM ;>
Swoją drogą na Viście at nie pozwala na /interactive nawet z admina (co w sumie w niczym nie przeszkadza, ale..).
Wyświetlany jest ciekawy komunikat:
9:45:47 gynvael >at 9:46 /interactive cmd.exe
Ostrzeżenie: Z powodu ulepszeń zabezpieczeń to zadanie zostanie uruchomione
o określonej godzinie, ale nie będzie interakcyjne.
Użyj narzędzia schtasks.exe, jeśli jest wymagane interakcyjne wykonanie
zadania (wpisz polecenie schtasks /?, aby uzyskać szczegółowe informacje).
Dodano nowe zadanie o identyfikatorze = 2
http://blogs.technet.com/askds/archive/2008/10/22/getting-a-cmd-prompt-as-system-in-windows-vista-and-windows-server-2008.aspx