Współczesne testowanie oprogramowania antywirusowego (AV) odgrywa kluczową rolę w procesie symulacji ataków oraz ocenie skuteczności zabezpieczeń. W świecie cyberbezpieczeństwa, gdzie rozwiązania AV stają się coraz bardziej zaawansowane, zrozumienie ich działania i możliwości wykrywania jest niezbędne zarówno dla zespołów red team, jak i pentesterów. W artykule przedstawiono narzędzia, środowiska testowe, metody identyfikacji oraz podejście do analizowania obecności oprogramowania AV w środowisku docelowym. Znajomość tych elementów pozwala efektywnie przeprowadzać symulowane ataki i dostosowywać techniki unikania wykrycia. Zaprezentowane informacje zostały oparte na praktycznych doświadczeniach i dostępnych narzędziach open source.
Dostawcy oprogramowania AV i ich rozwój
Na rynku działa wielu dostawców oprogramowania antywirusowego, którzy koncentrują się zarówno na użytkownikach domowych, jak i na rozwiązaniach korporacyjnych. Współczesne pakiety AV nie ograniczają się już tylko do wykrywania wirusów. Obecnie integrują firewalle, funkcje EDR, szyfrowanie, VPN, a także ochronę przed spamem czy skanowanie podatności.
Warto podkreślić, że nie istnieje jednoznaczna odpowiedź na pytanie, które oprogramowanie AV jest najlepsze. Wybór zależy głównie od doświadczeń użytkownika oraz specyfiki środowiska IT. Aby dokonać świadomego wyboru, rekomenduje się zapoznanie się z niezależnymi rankingam. Przykładem jest strona AV-Comparatives, gdzie publikowane są szczegółowe analizy skuteczności różnych produktów.
Środowiska testowe AV – jak i gdzie testować pliki
W celu analizy działania AV w bezpiecznym otoczeniu, warto korzystać z dedykowanych środowisk testowych. Jednym z najpopularniejszych narzędzi jest VirusTotal, umożliwiający szybkie przeskanowanie pliku przy użyciu ponad 70 silników wykrywania. Platforma dostarcza również analizę behawioralną, sprawdzanie hashów, domen i wywołań API. Trzeba jednak pamiętać, że VirusTotal udostępnia przesłane pliki dostawcom oprogramowania antywirusowego. To może skutkować „spaleniem” ładunku używanego w działaniach red teamowych.
Dlatego zespoły często sięgają po alternatywne rozwiązania, które nie udostępniają wyników analizy podmiotom trzecim.
Przykładowe narzędzia to:
- Antiscan.me – umożliwia 6 darmowych skanów dziennie,
- Jotti’s Malware Scan – kolejna bezpieczna alternatywa.
Identyfikacja AV w środowisku docelowym
Podczas działań ofensywnych, jedną z pierwszych czynności jest identyfikacja zainstalowanego oprogramowania AV, co pozwala przygotować adekwatne środowisko testowe oraz dostosować techniki unikania wykrycia. Odciski palców AV można wykryć na podstawie:
- nazw usług i procesów,
- kluczy rejestru,
- folderów instalacyjnych,
- ładowanych bibliotek DLL.
Wśród popularnych dostawców AV znajdują się m.in. Microsoft Defender, Kaspersky, Avast, Norton, AVG, Bitdefender czy McAfee.
Narzędzia do fingerprintingu – SharpEDRChecker i własne skrypty
W celu zautomatyzowania procesu fingerprintingu, wykorzystywane są narzędzia takie jak SharpEDRChecker. To program napisany w C#, który wykonuje analizę usług, procesów, rejestru oraz katalogów w poszukiwaniu sygnatur AV i EDR. Po kompilacji można uruchomić go na maszynie ofiary, aby szybko uzyskać przegląd zainstalowanego oprogramowania ochronnego. Wyniki wskazujące na obecność Defendera można zaobserwować m.in. w katalogach systemowych oraz usługach takich jak WinDefend, WdNisSvc i inne.
Alternatywnie można stworzyć własny program w C#, który przeszukuje aktualnie uruchomione procesy w systemie, porównując je z predefiniowaną listą nazw plików związanych z popularnymi programami AV. Kod wykorzystuje Windows Management Instrumentation (WMI), aby pobrać listę aktywnych procesów. Przykładowy kod poszukuje takich nazw jak: MsMpEng.exe, Avira.ServiceHost.exe, AVGSvc.exe, NortonSecurity.exe i wiele innych.
Fałszywe pozytywy – analiza wyników w VirusTotal
Po skompilowaniu programu testowego w C# warto przesłać go do VirusTotal, aby sprawdzić, czy jest on oznaczany jako złośliwy. W testach wykazano, że nawet nieszkodliwy kod może zostać błędnie sklasyfikowany jako złośliwe oprogramowanie. Przykładowo, niektóre silniki AV (np. MaxSecure, SecureAge APEX, Cyren) mogą oznaczyć skrypt jako niebezpieczny z powodu zastosowania interfejsów API WMIC czy technik takich jak Process Ghosting.
Wyniki analizy można znaleźć w czterech sekcjach: Detection, Details, Behavior oraz Community. Warto analizować te raporty, aby lepiej zrozumieć sposób działania silników AV.
Podsumowanie
Testowanie oprogramowania antywirusowego oraz identyfikacja obecnych mechanizmów ochronnych stanowią istotny element pracy każdego red teamera. Dzięki narzędziom takim jak SharpEDRChecker, VirusTotal, czy własnym skryptom w C#, możliwe jest skuteczne wykrywanie obecnych rozwiązań AV i dostosowanie technik unikania wykrycia. Jednocześnie należy pamiętać o ryzyku „spalenia” pliku podczas analizy w publicznych środowiskach oraz o potencjalnych fałszywie pozytywnych wynikach, które mogą wynikać z nieprecyzyjnych reguł wykrywania. Warto więc stosować różnorodne podejścia i regularnie aktualizować narzędzia oraz techniki testowe, aby skutecznie omijać mechanizmy ochrony i jednocześnie podnosić jakość symulowanych ataków.
źródło: https://tryhackme.com/room/introtoav dostęp 04.04.2025

