W systemie Windows XP do uzyskania uprawnień systemowych (większych niż uprawnienia administratora systemu) można wykorzystać możliwości, jakie daje harmonogram zadań (task scheduler). Jeżeli po wydaniu w shellu komendy
at nie uzyskamy komunikatu odmowy dostępu, system jest prawdopodobnie podatny na eskalowanie uprawnień do poziomu systemowego. Podatność w konkretnym przypadku zależy od zainstalowanych poprawek i poziomu dostępu konta, z którego wykonywana jest próba.
Opisywana podatność wynika z faktu, że usługa harmonogramu zadań działa na koncie systemowym (Local system account), więc w tym kontekście uruchamiane są wszystkie harmonogramowane zadania. Wydanie polecenia:
at 00:00 /interactive "cmd.exe"
sprawi, że o żądanym czasie (odpowiednio dobranym, by stało to się szybko po wydaniu powyższego polecenia) zostanie odpalona powłoka. Co ciekawe, na pasku tytułowym nie będzie widniało "cmd.exe", tylko "svhost.exe" (Service Host), czyli shell zostanie uruchomiony w "trybie roota", używając analogii *nixowej. Teraz wystarczy zabić proces explorer.exe i wydać z powłoki systemowej polecenie:
explorer.exe
Efekt będzie identyczny, jakbyśmy zalogowali się na konto "SYSTEM".
W związku z powyższym zaleca się:
1. wyłączenie usługi harmonogram zadań - jeżeli nie jest używana
2. skonfigurowanie usługi na działanie na nisko uprzywilejowanym koncie
Więcej informacji i dokładny opis krok-po-kroku:
kliknij tutaj