Zanim przyjrzymy się, jak obejść zabezpieczenia, powinniśmy przyjrzeć się, jak zabezpieczenia działają w działaniu. Aby to zrobić, zbudujemy bardzo prosty skrypt na naszym komputerze z systemem Windows , a następnie spróbujemy wykonać ten skrypt. W przypadku naszego skryptu po prostu utworzymy listę katalogów katalogu głównego C:\. Najpierw musimy połączyć się z systemem docelowym, używając szczegółów połączenia z wyników kompilacji naszego laboratorium i poświadczeń wymienionych w repozytorium dla rozdziału 15. Po zalogowaniu się do systemu przy użyciu protokołu pulpitu zdalnego (RDP) otwieramy wiersz poleceń jako administrator, a następnie uruchamiamy następujący kod:
Tutaj widać, że wykonanie naszego skryptu test.ps1 zostało zablokowane, ponieważ uruchamianie skryptów w systemie zostało wyłączone. Przyjrzyjmy się bieżącej polityce wykonywania:
Pokazuje to, że bieżąca polityka wykonywania jest „Restricted”. Tabela przedstawia podział tego, co robi każda z możliwych polityk wykonywania.
Spróbujmy zmienić politykę wykonywania na Unrestricted, a następnie ponownie uruchomić nasz skrypt test.ps1:
Jak widać, po zmianie polityki na Unrestricted nasz skrypt działa bez zarzutu. Na podstawie Tabeli wygląda na to, że RemoteSigned również powinno działać. Spróbujmy:
Zasada RemoteSigned również działa. Teoretycznie moglibyśmy po prostu zresetować zasadę wykonywania do jednej z tych dwóch wartości. Niestety, w wielu środowiskach wartość ta jest wymuszana przez zasady grupy. W takiej sytuacji nie jest tak łatwo zmienić zasadę. Dlatego ustawmy wartość z powrotem na Restricted, jak pokazano tutaj, i przejdziemy do reszty rozdziału z włączonymi najsurowszymi kontrolami:
Zamknij teraz wiersz poleceń, ponieważ pozostałe ćwiczenia laboratoryjne należy wykonać jako normalny użytkownik „docelowy”.