Exploit, czyli szkodliwe oprogramowanie wykorzystujące błąd programistyczny w systemie lub w zainstalowanych aplikacjach nie jest najczęściej występującą odmianą wirusów. Ma za to przewagę nad powszechnie występującymi makrowirusami lub złośliwymi skryptami JavaScript, ponieważ są używane do wykonania kodu z uprawnieniami zalogowanego użytkownika. Są też trudniejsze do wykrycia, gdyż w większości przypadków cyberataków dostarczane są poprzez luki w przeglądarce lub w zainstalowanych rozszerzeniac. Dodatkowo mogą pozostawać w ukryciu przez ługi czas, tak jak to miało miejsce podczas zainfekowania serwerów Komisji Nadzoru Finansowego (na wykrycie zagrożenia potrzeba był aż 5 miesięcy).
W przeprowadzonym teście ochrony przez exploitami, sprawdzono w jaki sposób produkty zabezpieczające radzą sobie z popularnymi technikami exploitowania.
Opracowano 35 różnych symulacji, w tym:
1. Wykorzystano aplikację do przetestowania systemowej funkcji DEP (Data Execution Prevention) spotykanej we współczesnych systemach operacyjnych. Celem tego zabezpieczenia jest uniemożliwienie wykonywania kodu z segmentu danych. Pomaga to w ochronie przed exploitami wykorzystującymi przepełnienie bufora. DEP działa w dwóch trybach: sprzętowym, w którym procesor oznacza strony pamięci jako niewykonywalne oraz programowym, który daje ograniczoną ochronę i jest stosowany wtedy, gdy procesor nie potrafi oznaczyć stron pamięci jako niewykonywalne. Pierwsza wersja DEP pojawiła się w systemie Windows XP Service Pack 2.
2. Do przetestowania funkcjonalności ASLR także wykorzystano własną aplikację. Mechanizm ASLR po raz pierwszy został zastosowany w systemie Windows Vista. Losowy układ alokacji przestrzeni adresowej (ASLR – Address Space Layout Randomization) zabezpiecza (czyt. utrudnia) przed przepełnieniem bufora na skutek ataku exploita. Ten skomplikowany mechanizm w skrócie oznacza, że ASLR losowo przydziela stos adresów pamięci aplikacji, co sprawia, że żaden z istotnych elementów systemu (między innymi pliki exe, dll, sys) nie może zostać łatwo namierzony przez złośliwy kod obcej aplikacji. Jest to tym trudniejsze, jeśli złośliwy kod „nie wie”, w jakiej lokalizacji w pamięci i w danym czasie znajduje się legalna aplikacja.
3. W tym scenariuszu sprawdzono ochronę przed techniką „process hollowing” używaną przez niektóre złośliwe programy do zastępowania legalnego kodu aplikacji złośliwymi instrukcjami.
W teście wykorzystano publicznie dostępne narzędzia, takie jak: DoublePulsar, Mimikatz, ShellterPro, Backdoor Factory i inne, które posłużyły do odwzorowania 35 technik ataków wstrzykiwania bibliotek DLL i wykonywania własnego, złośliwego kodu. Większość z tych narzędzi jest dostępna na platformie GitHub — za darmo dla każdego testera i przestępcy. To w jaki sposób zostaną wykorzystane zależy przede wszystkim od moralnego kręgosłupa osoby siedzącej po drugiej stronie monitora.
Testowane systemy:
- Microsoft Windows 7 Professional x64 (6.1.7601 Service Pack 1).
- Microsoft Windows 10 Pro (10.0.16299 Fall Creators Update).
Testowane produkty zabezpieczające:
- McAfee Endpoint Security with Threat Protection
- Symantec Endpoint Protection
- Trend Micro Smart Protection for Endpoints
- CrowdStrike Falcon Prevent
- Sophos Intercept X
- SentinelOne Endpoint Protection
- Microsoft Windows 10 Professional z zainstalowanym Windows Defender (Fall Creators
- Update)
- Microsoft Windows 10 Professional z zainstalowanym Windows Defender i aktywnym Exploit Guard (Fall Creators Update)
- Produkt A (zgodnie z ustaleniami z producentem nie ujawniono nazwy produktu)
Poniższe wyniki nie oddają całkowitej skuteczności produktów, ale raczej są odbiciem skuteczności ochrony przed exploitami.
Podsumowanie podzielono na etapy:
- Zielony oznacza wynik pozytywny — produkt zatrzymał exploit lub rozpoznał atak przez uruchomieniem złośliwego kodu. Dodatkowo niektóre techniki lub narzędzie nie działały w Windows 10 (ze względu na lepszy hardening niż w Windows 7), ale wynik zaliczano na korzyść produktu zabezpieczającego.
- Żółty oznacza pozytywne rozpoznanie i zablokowanie techniki ataku przed uruchomieniem złośliwego kodu (np. w niektórych przypadkach używano PowerShell, który jest obarczony podwyższonym ryzykiem przez niektóre produkty zabezpieczające).
- Szarym zaznaczono sytuację, kiedy testerzy stwierdzili, że produkt nie zatrzymał zagrożenia, a producent był zdania, że niepoprawnie skonfigurowano produkt.
- Czerwony oznacza wynik negatywny.
Szczegółowe wyniki z podziałem na 35 rodzajów ataków i technik exploitacji:
Nie dziwi nas fakt, że Sophos uzyskał najlepszy wynik w sponsorowanym przez siebie teście. Nie, nie — nie zarzucamy firmie MRG Efiitas manipulowania wynikami. Bardziej prawdopodobny jest drugi scenariusz. Otóż Sophos tak bardzo czuł na siłach w ochronie przed exploitami, że zapłacił za przeprowadzenie takiego testu, aby udowodnić konkurencji oraz potencjalnym klientom, że w tej kategorii jest po prostu lepszy. Ale najbardziej zadziwiające jest to, że natywne rozwiązania systemowe Microsoftu okazały się gorsze w zabezpieczeniu środowiska Windows niż oprogramowanie stworzone przez firmy trzecie.
Czy ten artykuł był pomocny?
Oceniono: 0 razy