Jak działają Zasady Ograniczeń Oprogramowania (Software Restriction Policies) cz.1
#1
Windows jest jak Forteca z pootwieranymi drzwiami. SRP potrafią zamknąć drzwi i tylko Administratorzy są w stanie je otworzyć.
 
Podstawowe fakty dotyczące Zasad Ograniczeń Oprogramowania, wbudowanych w systemie Windows (Software Restriction Policies, w skrócie SRP).
1. Mogą być aktywowane w dowolnej wersji Windows począwszy od Windows XP.
2. W Windows Pro, Enterprise i Education, można konfigurować SRP używając secpol.msc lub gpedit.msc .
3. W Windows Home, SRP można konfigurować poprzez edytowanie Rejestru lub stosując narzędzia: Simple  Software Restriction Policies (brak GUI), Hard_Configurator (posiada GUI).
4. SRP można ustawić tak aby nie kontrolowały procesów uruchamianych z uprawnieniami Administratora lub wyższymi (opcja 'Wymuszania' =  'Wszyscy użytkownicy oprócz administratorów lokalnych'), pozwalając na swobodne działanie systemowych procesów Windows (nawet w przestrzeni zwykle blokowanej przez SRP). Nie ma potrzeby wyłączania SRP aby uaktualnić Windows, realizować zaplanowaną konserwację systemu lub zainstalowć/aktualizować Uniwersalne Aplikacje Sklepu Windows.
5. Zwykle mamy do czynienia z dwoma typami konfiguracji SRP:
* Domyślnie Zezwól + Czarna/Biała Lista (stosowane w CryptoPrevent i SBGuard Anti-Ransomware).
* Domyślnie Blokuj + Biała/Czarna Lista (stosowane w SSRP i Hard_Configuratorze)
6. Najbardziej efektywnym podejściem jest właściwie skonfigurowane 'Domyślnie Blokuj', ale wymaga ono pewnej znajomości działania SRP. 'Domyślnie Zezwól' ma swoje plusy (ale nie w Windows 8+), gdy instalujemy nowe programy. Większość ograniczeń jest wtedy aktywna, więc gdy trafimy na zainfekowanego instalatora typu 0-day, instalacja może być zablokowana lub jej negatywne skutki znacznie ograniczone. Z kolei 'Domyślnie Blokuj' jest bardziej skuteczne przeciwko eksploitom i generalnie wtedy, gdy złośliwe oprogramowanie próbuje się uruchomić bez wiedzy użytkownika lub wskutek nieumyślnego działania (także szkodniki 0-day). Jednak podczas instalacji nowych programów, większość ograniczeń musi być wyłączona, więc gdy oszukany użytkownik uruchomi złośliwy instalator typu 0-day, SRP nie mogą zadziałać.
7. Aby zwiększyć skuteczność SRP, można używać na co dzień 'Domyślnie Blokuj' i tylko czasowo przełączać się na 'Domyślnie Zezwól', gdy chcemy zainstalować coś nowego (bez reinstalacji CryptoPrevent lub SBGuard).
8. Dobrze skonfigurowane SRP mogą być w praktyce stosowane nawet przez niedoświadczonych użytkowników, jednak nie oznacza to, że są oni w stanie sami przeprowadzić taką konfigurację.
9. SRP w ustawieniach 'Domyślnie Blokuj', mogą być szczególnie pożyteczne dla użytkowników Windows Home 8 i nowszych wersji. Wynika to z wprowadzenia przez Microsoft serwisu SmartScreen Application Reputation (serwis reputacyjny aplikacji) oraz ulepszonego i zintegrowanego z systemem Windows Defendera. Pozwala to na zbudowanie dobrego i skutecznego systemu zabezpieczeń, w oparciu o wbudowane mechanizmy Windows, bez konieczności instalowania programów antywirusowych (antimalware) innych firm.
10. SRP w ustawieniach 'Domyślnie Blokuj' + wyciszony UAC (ConsentPromptBehaviorUser=0) mogą być zastosowane do zamrożenia Konta Standardowego Użytkownika - na takim koncie w ogóle nie można instalować/uruchamiać nowych programów, za wyjątkiem Uniwersalnych Aplikacji Sklepu Windows. Microsoft ma zamiar udostępnić podobne rozwiązanie, jako opcję, w nowej wersji Windows.
11. Właściwie skonfigurowane SRP mogą pracować równolegle z programami innych firm: antywirusami, anty-exe, anty-eksploit, HIPS. Jednak w niektórych przypadkach, konfiguracja musi być przeprowadzona przez zaawansowanego użytkownika.
12. SRP potrafią przeciwdziałać wielu atakom typu "Drive By", ale nie są skuteczne w przypadku ataków odbywających się bez użycia plików zapisanych na dysku.
13. Opisane w artykule SRP, różnią się od rozwiązań zastosowanych w takich programach jak Blue Ridge AppGuard, czy też Excubits Bouncer. Podstawowa różnica polega na tym, że Wbudowane w Windows SRP pozwalają na swobodne działanie programów z podwyższonymi uprawnieniami. To rozwiązanie ma swoje plusy i minusy. Można go wykorzystać do integracji z wymuszonym sprawdzaniem aplikacji przez SmartScreen. Innymi słowy, SRP potrafią zablokować normalne uruchamianie nowych programów w Przestrzeni Użytkownika, ale nadal mogą być one uruchamiane z uprawnieniami Administratora, przy jednoczesnym sprawdzaniu przez SmartScreen. Służy do tego opcja "Run As SmartScreen" w menu Eksploratora Windows. W ten bezpieczny sposób, można instalować nowe programy, bez konieczności każdorazowego wyłączania SRP w ustawieniach 'Domyślnie Blokuj'. Ten typ zabezpieczeń wykorzystuje program Hard_Configurator w wersjach Windows 8 i nowszych.
 
Co się dzieje gdy klikamy myszką na plik usytuowany na Pulpicie?
Coś musi wystosować zapytanie do SRP i uzyskać informację Blokować/Przepuścić. W Windowsie istnieje specjalna funkcja API, która obsługuje otwieranie plików z Pulpitu (także z Eksploratora Windows lub Internet Explorera) - jest to ShellExecute().
Przypuśćmy, że klikamy plik 'JakZostaćMilionerem.hta'. Funkcja ShellExecute() rozpoznaje, że do otwarcia pliku z rozszerzeniem HTA potrzebny jest pewien program (nazwijmy go Sponsorem), w tym przypadku Sponsorem jest mshta.exe . ShellExecute() ma wbudowaną umiejętność komunikowania się z SRP, więc jeśli SRP są aktywne, plik 'JakZostaćMilonerem.hta' może zostać zablokowany. Blokowanie przez ShellExecute() zapobiega uruchamianiu złośliwego kodu w sposób nieumyślny lub bez wiedzy użytkownika.
SRP korzystają ze specjalnej listy rozszerzeń plików, nazywanej 'Designated File Types' (w skrócie DFT). Jeżeli rozszerzenie otwieranego pliku jest na tej liście, to wtedy ShellExecute() może zablokować otwarcie pliku. W przypadku pliku 'JakZostaćMilionerem.hta' może on być zablokowany w ten sposób, gdy rozszerzenie HTA znajduje się na liście DFT. Listę można konfigurować poprzez dodawanie lub kasowanie rozszerzeń. Domyślna lista DFT zawiera następujące rozszerzenia:
ADE, DP, BAS, BAT, CHM, CMD, COM, CPL, CRT, EXE, HLP, HTA, INF, INS, ISP, LNK, MDB, MDE, MSC, MSI, MSP, MST, OCX, PCD, PIF, REG, SCR, SHS, URL, VB, WSC.
Rozszerzenie EXE znajduje się na niej pro forma. SRP działają tak samo jeśli je wykasujemy z listy. Dzieje się tak dlatego, że w przypadku plików EXE funkcja ShellExecute() jest ignorowana, jej rolę przejmuje inna funkcja API.
Gdybyśmy chcieli otworzyć nasz plik bezpośrednio używając komendy: 'mshta.exe %Userprofile%\Desktop\How2BeReach.hta', to ShellExecute() zostanie zignorowana i SRP nie będą wiedzieć, że coś ma być otwarte lub uruchomione.
W tym przypadku Windows ma do wyboru 2 możliwości:
1. Pozwolić na otwarcie/uruchomienie pliku.
2. Zastosować inny mechanizm interakcji z SRP
 
Koniec części 1.
Odpowiedz
#2
Dzięki za opracowanie...świetne i przydatne...oczywiście plusik Smile
Do takich zastosowań mamy jeszcze na starszych systemach PGS (Pretty Good Security), którego autorem jest Sully z Wildersów

[Aby zobaczyć linki, zarejestruj się tutaj]

[Aby zobaczyć linki, zarejestruj się tutaj]

"Bezpieczeństwo jest podróżą, a nie celem samym w sobie - to nie jest problem, który można rozwiązać raz na zawsze"
"Zaufanie nie stanowi kontroli, a nadzieja nie jest strategią"
Odpowiedz
#3
Jakieś pół roku temu próbowałem poszukać instalatora, ale nie mogłem znaleźć w sieci. Strona autora nie działa, strona na sourceforge.net nie zawiera plików, installer na downloadplex.com jest zamulony adware i na dodatek nie potrafił zainstalować PGS.  Craze
Doszedłem do wniosku, że projekt został odstawiony do lamusa. Jeśli masz namiar na PGS, to chętnie przetestuję. Smile
Odpowiedz
#4
Mam na pewno gdzieś instalkę, to Ci podrzucę.
"Bezpieczeństwo jest podróżą, a nie celem samym w sobie - to nie jest problem, który można rozwiązać raz na zawsze"
"Zaufanie nie stanowi kontroli, a nadzieja nie jest strategią"
Odpowiedz
#5
No PGS było OP

[Aby zobaczyć linki, zarejestruj się tutaj]


Trochę lewy mirror ale oficjalna strona RIP
I Jeszce dla LUA nakładka SuRun i się bardzo przyjemnie korzystało Smile
Warstwy ochrony

1)Ograniczenie/blokowanie dostępu do danych/aplikacji
2)Odizolowanie i tworzenie osobnych baz danych/aplikacji
3)Kopia zapasowa systemu/ważnych danych.
4)Wykrywanie i kasowanie wirusów/złośliwych aplikacji.
Odpowiedz
#6
(09.03.2017, 21:47)Quassar napisał(a):

[Aby zobaczyć linki, zarejestruj się tutaj]

No PGS było OP

[Aby zobaczyć linki, zarejestruj się tutaj]


Trochę lewy mirror ale oficjalna strona RIP
I Jeszce dla LUA nakładka SuRun i się bardzo przyjemnie korzystało Smile

Niestety to jest właśnie ten installer (adware), który u mnie nie działał. Sad
Odpowiedz
#7
PGS

[Aby zobaczyć linki, zarejestruj się tutaj]

Odpowiedz
#8
(09.03.2017, 23:06)tachion napisał(a):

[Aby zobaczyć linki, zarejestruj się tutaj]

PGS

[Aby zobaczyć linki, zarejestruj się tutaj]


Dzięki - zabieram się do testowania. Grin
Odpowiedz
#9
Fajny programik. Smile
Jak rzekł @ichito, program jest dostosowany do Windows XP i Visty w wersji 32Bit. Działa też na Windows 10 ale trzeba wtedy uwzględnić następujące rzeczy:
0. Koniecznie dodać do białej listy program PGS : Presets > Allowed Paths >*PGS*.exe i wcisnąć przycisk <Import>.
  Ten punkt jest kluczowy, gdyż bez niego nie można skonfigurować Białej Listy, co szybko prowadzi do zablokowania komputera. Przy okazji PGS dodaje też automatycznie 2 dodatkowe ścieżki do Białej Listy: Windows i Program Files.
1. Następnie przechodzimy do Automatic Setup, wybieramy pierwszą opcję od góry:' Setup SRP policies if you are a User or use a LUA' i wciskamy przycisk <Apply>.
2. W wersji 64Bit trzeba jeszcze ręcznie dodać do Białej listy katalog 'C:\Program Files (x86)'
3. Nie działają opcje 'LUA options' oraz 'Admin options' w zakładce Automatic Setup.
4. SRP uległy zmianie począwszy od Windows 7, czego program nie uwzględnia w plikach pomocy oraz interfejsie.
5. Nie ma sensu używać opcji 'Setup SRP policies if you are an Administrator', bo jest ona natywnie wbudowana w nowszych wersjach Windows.
6. Nie ma sensu używać: 'Restrict' Policy Level (jest obsługiwana natywnie przez nowsze wersje Windows)
7. Opcja: SRP Manager > Additional security level > Basic User, nie działa poprawnie, więc trzeba ją zawsze mieć ustawioną w pozycji Disabled.
Odpowiedz


Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości