Jakie są zalety / wady blokowania uruchamiania programu w% appdata%,% temp% itd.?


13

Badając sposoby zapobiegania CryptoLocker , zobaczyłem post na forum, który zalecał używanie obiektów zasad grupy (GPO) i / lub oprogramowania antywirusowego do blokowania uruchamiania dostępu w następujących lokalizacjach:

  1. %dane aplikacji%
  2. % localappdata%
  3. % temp%
  4. %Profil użytkownika%
  5. Skompresowane archiwa

Oczywiście, wszystko napisane na forum należy traktować ostrożnie. Widzę jednak zalety robienia tego, przede wszystkim dlatego, że złośliwe oprogramowanie lubi uruchamiać się poza tymi lokalizacjami. Oczywiście może to również wpłynąć na legalne programy.

Jakie są wady blokowania dostępu do tych lokalizacji?

Jakie są zalety?


3
Of course, this could impact legitimate programs as well.- nieznacznie ...
TheCleaner

1
Na przykład GitHub zainstalował się w% APPDATA%, a kiedy mój sysadmin wprowadził ostatnio nowe reguły blokowania plików wykonywalnych w celu uruchomienia z tej lokalizacji, GitHub dla Windows nie mógł się już uruchomić. git.exe w% APPDATA%, który pierwotnie został zainstalowany przez GitHub - trochę irytujące, oczywiście ...
Jim Raynor

Odpowiedzi:


12

Powodem, dla którego złośliwe oprogramowanie lubi uruchamiać się z tych lokalizacji, jest fakt, że legalne oprogramowanie lubi z nich korzystać. Są to obszary, do których konto użytkownika powinno mieć pewien poziom dostępu.

W oparciu o szybki grep mojego systemu i losowe konto użytkownika końcowego w naszej sieci:

%appdata%

W tej chwili mam Dropbox , instalator Adobe AIR i kilka szans na Microsoft Office i kończy się w tym folderze.

%localappdata%

Join.me i SkyDrive wydają się tu mieszkać, a przynajmniej przejechać niedawno.

%temp%

Wiele programów, legalnych lub innych, będzie chciało się uruchomić z tego folderu. Instalatorzy zazwyczaj rozpakowują się do tego podfolderu, gdy działa się setup.exena skompresowanym archiwum instalatora.

%Profil użytkownika%

Zazwyczaj będzie bezpieczny, chyba że użytkownik ma określone wymagania, jednak należy pamiętać, że przynajmniej niektóre z powyższych folderów mogą być jego podzestawami w sieci z profilami mobilnymi.

Skompresowane archiwa

Nie uruchamiaj kodu bezpośrednio, zamiast tego zwykle rozpakuj %temp%i uruchom stamtąd.

To, czy powinieneś zablokować te obszary, zależy od tego, co zwykle robią użytkownicy. Jeśli wszystko, co muszą zrobić, to edytować dokumenty Office, grać w Saper podczas lunchu i być może uzyskać dostęp do aplikacji LOB za pośrednictwem przeglądarki itp., To możesz nie mieć zbyt dużych problemów z blokowaniem plików wykonywalnych w przynajmniej niektórych z tych folderów.

Oczywiście to samo podejście nie będzie działać w przypadku osób z mniej dobrze zdefiniowanymi obciążeniami.


Chrome też tam mieszka%appdata%
Juri Robl

5
@JuriRobl tylko wersja konsumencka, wersja biznesowa Chrome jest znacznie lepsza.
GAThrawn

@JuriRobl - Chrome na moim komputerze stacjonarnym znajduje się w C: \ Program Files (x86) \ Google \ Chrome \ Application. Wersja biznesowa, jak mówi GAThrawn. Próbowałem też podać przykłady oparte na tym, co w moim systemie, a nie tworzyć wyczerpującej listy.
Rob Moir

6

Plusy:

Złośliwe oprogramowanie próbujące uruchomić się z tych lokalizacji nie będzie mogło zostać uruchomione.

Cons:

Legalne programy próbujące uruchomić się z tych lokalizacji nie będą mogły zostać uruchomione.


Co do legalnych programów, które masz w swoim środowisku, które potrzebują uprawnień do wykonania w tych katalogach, tylko Ty możesz powiedzieć, ale widzę, że RobM właśnie opublikował odpowiedź z ogólnym przeglądem . Blokowanie wykonywania tych katalogów spowoduje problemy, więc najpierw musisz wykonać testy, aby ustalić, jakie problemy będziesz mieć i jak je obejść.


3

Te zalecenia sprawdzą się doskonale w moim środowisku. Żaden użytkownik nie może instalować oprogramowania, a ŻADNE z zatwierdzonego oprogramowania nie wykonuje się z wymienionych lokalizacji. Stacje robocze mają wstępnie zainstalowane zatwierdzone oprogramowanie na obrazie stacji roboczej i aktualizowane przez skrypt.

Dropbox, Chrome, Skype itp. Można zlokalizować podczas instalacji w bardziej akceptowalnym miejscu instalacji „Program Files”.

Tak długo, jak masz uprawnienia administratora lub administratora domeny (i być może konkretnego konta „Instalatora”), aby móc uruchamiać aktualizacje i dodawać zatwierdzone oprogramowanie, zgadzam się z zaleceniami.


2

Zakładam, że chcesz odmówić wykonania prawa nie tylko tym folderom, ale całemu drzewu, zaczynając od nich (w przeciwnym razie nie ma sensu robić tego, co chcesz zrobić).

Konsekwencją - oczywistą - będzie to, że żaden plik wykonywalny znajdujący się w nich nie uruchomi się.

Niestety będzie to obejmować dość dużą liczbę legalnych aplikacji.

% localappdata% i% appdata% są najbardziej problematyczne: na przykład Dropbox, Chrome, SkyDrive nie będą działać. Większość automatycznych programów do przesyłania i wielu instalatorów również nie będzie działać.

% UserProfile% jest jeszcze gorszy, ponieważ zawiera zarówno% localappdata% i% appdata%, jak również wiele innych folderów.

W skrócie: jeśli uniemożliwisz uruchamianie aplikacji z tych folderów, twój system może stać się praktycznie bezużyteczny.

% temp% jest inny. Chociaż od czasu do czasu możesz mieć uruchomione legalne programy, jest to dość rzadkie i zwykle łatwe do obejścia. Niestety,% temp% rozwija się do różnych folderów w zależności od kontekstu użytkownika, z którego go rozwijasz: może skończyć w% localappdata% \ temp (w kontekście użytkownika) lub% SystemRoot% \ temp (w kontekście system), więc będziesz musiał zabezpieczyć każdą lokalizację indywidualnie.

% temp% jest również dobrym kandydatem, ponieważ tam większość programów pocztowych zapisuje załączniki przed ich otwarciem: pomoże to w wielu przypadkach złośliwego oprogramowania opartego na poczcie.

Jedną dobrą sztuczką jest zmiana premii w folderach C: \ Users \ Default \ AppData \ Local \ temp i C: \ Users \ DefaultAppPool \ AppData \ Local \ Temp podczas konfigurowania systemu (i oczywiście% SystemRoot% \ temp). System Windows skopiuje te foldery podczas tworzenia nowych profili, dzięki czemu nowi użytkownicy będą mieli bezpieczne środowisko.

Możesz dodać% UserProfile% \ Downloads do swojej listy: w tym miejscu większość przeglądarek będzie pobierać pliki pobrane przez użytkownika, a odmowa wykonania spowoduje zwiększenie bezpieczeństwa.


2

Przez ostatnie trzy miesiące działam z podobną konfiguracją na mojej głównej stacji roboczej. Mój główny użytkownik ma uprawnienia do wykonywania katalogu lub uprawnienia do zapisu, ale nigdy jedno i drugie.

Oznacza to, że na tym koncie nie można wprowadzić żadnych nowych plików wykonywalnych. To jest pro, mogę uruchamiać programy już zainstalowane w systemie lub zainstalowane przez inne konta, ale nie mogę pobrać żadnego nowego programu i uruchomić go, co oznacza, że ​​każde złośliwe oprogramowanie, które wchodzi przez przeglądarkę lub w inny sposób, ma znacznie trudniejszy czas do uruchomienia w moim systemie proste wstrzykiwanie DLL również nie działa.

Jak zauważyli inni, głównym problemem jest to, że niektóre legalne oprogramowanie wykorzystuje zablokowane lokalizacje. W moim przypadku:

  • Google Chrome - zainstalowałem wersję MSI
  • dowolna aplikacja Portable Apps - którą teraz uruchamiam pod innym użytkownikiem
  • Process Explorer - używam bezpośrednio wyodrębnionej wersji 64-bitowej
  • dism.exe - uruchom jako administrator, co i tak muszę robić przez większość czasu.

Zasadniczo używam trzech kont, jednego loguję się, innego zwykłego konta użytkownika do uruchamiania niektórych zweryfikowanych programów jako i konta administratora do instalowania nowego oprogramowania dla pozostałych dwóch.

Podoba mi się fakt, że zmusza mnie to do testowania każdego nowo pobranego oprogramowania na maszynie wirtualnej.

Większość moich programów uruchamiam za pomocą programu PowerShell, a posiadanie trzech powłok, po jednej dla każdego konta, jest dla mnie w porządku. To, czy to działa, naprawdę zależy od tego, ile oprogramowania używasz, które musi być traktowane inaczej.

Na komputerze dewelopera tak naprawdę to nie działa, ponieważ muszę skompilować kod, a następnie go uruchomić. Zrobiłem więc wyjątek dla mojego katalogu kodu na dysku danych, złośliwe oprogramowanie może skanować wszystkie dyski i znaleźć to.

Korzystam z list ACL NTFS zamiast zasad, aby to wymusić. Zapobiega to uruchamianiu jakichkolwiek programów, ale nadal mogę utworzyć skrypt PowerShell, a następnie uruchomić go, co może spowodować wystarczającą szkodę.

Tak więc, choć utrudnia to działanie, nie jest w 100% bezpieczny, ale nadal chroniłby cię przed większością obecnego złośliwego oprogramowania.


0

Możesz przeglądać te foldery, ale większość z nich to dane, od których dokładnie pochodzi nazwa folderu. Na przykład zobaczysz chrome, ale rzeczywisty plik wykonywalny znajduje się w folderze c: \ Programs.

Blokuję wszystkie pliki wykonywalne przed uruchomieniem w dowolnym miejscu na komputerze oprócz folderów programów. Dozwolone tylko tymczasowo, gdy muszę coś zainstalować, i nigdy nie miałem żadnych problemów.


-1

Polecam szybkie przeszukanie katalogów, aby zobaczyć, co aktualnie masz w każdym z nich. Jeśli nic z nich nie wykonuje, postępuj zgodnie ze wskazówkami na forum. Jeśli napotkasz problem w przyszłości, po prostu oceń swoje opcje. Większość z nich i tak nie powinna zawierać plików wykonywalnych.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.