Zabezpieczenia systemu Windows: czy użytkownik może odczytywać lokalne pliki za pomocą opcji „Zaloguj się jako zadanie wsadowe”?

0

Zaplanowane zadanie systemu Windows działa jako [email protected] na serwerze 2008R2. Na lokalnym dysku serwera znajdują się pliki, których Joe Blow nie powinien widzieć. Joe Blow zna hasło serviceAccount. O ile mi wiadomo, serviceAccount nie ma żadnych uprawnień do serwera poza Logowaniem jako zadaniem wsadowym i członkostwem w lokalnej grupie użytkowników za pośrednictwem Domain Users. Czy Joe mógłby odczytać te pliki?

Jeśli tak, prawdopodobnie powinienem utworzyć kolejne konto usługi, aby uruchomić zadanie. Ale wolałbym uniknąć tego bałaganu, jeśli „Zaloguj się jako zadanie wsadowe” nie ujawnia plików.

Tytuł pytania może wprowadzać w błąd; Pytam, czy dołożyłem należytej staranności, ograniczając nieautoryzowany dostęp w tym konkretnym przypadku. Nie proszę o pomoc w czytaniu plików ... chociaż pytam, czy i jak pliki mogą zostać odczytane.

Odetchnąłem z ulgą, gdy Access Denied próbował użyć Enter-PSsession jako serviceAccount do utworzenia zdalnej sesji. Ale nie testowałem dużo dalej.

Serwer jest maszyną wirtualną VMware, ale pytam tutaj o poziom gościa, a nie o zabezpieczenia na poziomie hiperwizora.

edit Próbowałem zaplanować Zadanie na drugim serwerze, gdzie serviceAccount znajduje się w lokalnej grupie Administratorów. (To członkostwo nie było moją decyzją i wiem, że to zła praktyka.) Zadanie uruchamia test.cmd z zawartością:

dir \\firstServer\c$\ > C:\temp\out.txt 2>&1

Uruchomiłem zadanie jako serviceAccount i „Harmonogram zadań pomyślnie zakończony” z zawartością out.txt, 'Access is denied.'- dobrze. Jako rodzaj testu kontrolnego uruchomiono to zadanie jako otherAdmin z prawami do obu serwerów, a plik out.txt zawierał listę katalogów z firstServer.

Może powinienem był zapytać: czy powinienem utworzyć nowe konto usługi, dla którego Joe Blow nie ma hasła? Czy to jest niepotrzebne?

Więcej o tym skomplikowanym scenariuszu tutaj .

noam
źródło
Jeśli konto należy do użytkowników domeny i należy do grupy użytkowników lokalnych, może on uzyskać dostęp do wszystkiego na tym serwerze, do którego grupa użytkowników lokalnych może uzyskać dostęp (udziały SMB, drukarki itp.)
TheCleaner
@TheCleaner - Żadne foldery nie są udostępniane i nie martwię się o dostęp do drukarki, chyba że uważasz, że pomogłoby to Joe odczytać plik na dysku lokalnym.
noam

Odpowiedzi:

1

Joe może odczytać te pliki, jeśli utworzy zadanie wsadowe, skonfiguruje je do zalogowania się jako ten użytkownik i zleci odczytanie tych danych i jakoś mu je przekaże. Lub jeśli zmanipuluje istniejące zadanie wsadowe, aby w jakiś sposób odczytać te dane.

MDMarra
źródło
W porządku ... zobacz edycję.
noam
Zakładając, że wysiłki Joe dotyczące odczytania ograniczonych danych będą mniej niż heroiczne, czy zgadzasz się z wnioskiem Kasiusa w komentarzach? A może coś przeoczyliśmy?
Noam
0

Zakładam, że Joe Blow nie jest administratorem i dlatego nie może tworzyć zaplanowanych zadań. W takim przypadku należy ustawić uprawnienia NTFS do pliku, aby zezwolić tylko „Administratorom” i wbudowanej grupie „BATCH” na odczytanie pliku. „BATCH” obejmuje użytkowników, którzy są aktualnie zalogowani w trybie wsadowym. Tryb wsadowy dotyczy tylko zaplanowanych zadań. Nie możesz zalogować się w trybie wsadowym, po prostu tworząc plik .BAT, więc powinno to działać zgodnie z Twoimi celami. Plik będzie czytelny tylko dla administratorów i kont zalogowanych za pomocą zaplanowanego zadania.

Kasius
źródło
Dzięki. Joe nie ma uprawnień grupy lokalnej Administratorzy na firstServer. Zaplanowane zadanie jest skryptem Powershell i faktycznie działa dobrze bez grupy BATCH w kontekście bezpieczeństwa.
Noam
Obawiam się, że ta odpowiedź nasuwa pytanie: czy Joe może jakoś zalogować się „przez zaplanowane zadanie” i odczytać dane? A może został skutecznie ograniczony?
Noam
1
Tak długo, jak grupa Administratorzy i grupa BATCH są TYLKO grupami wymienionymi w uprawnieniach NTFS, a użytkownik nie jest Administratorem, będzie skutecznie ograniczany. Użytkownik nie może utworzyć zaplanowanego zadania i jestem pewien, że nie ma mechanizmu, za pomocą którego można zainicjować logowanie w trybie wsadowym. Nie ma dla niego interfejsu, programowego ani żadnego innego. Kolejnym procesem na maszynie musi być zainicjowanie komuś logowania wsadowego.
Kasius