Jak powstrzymać najpopularniejsze wirusy? Część 2

Kontynuujemy temat konfigurowania Windowsa celem nabrania odporności na najczęstsze sposoby rozpoczynania ataku przez trojany. Tym razem czeka nas blokowanie niezarządalnych składników systemu z wykorzystaniem wbudowanej w Windowsa Zapory. Mowa tu o MSHTA oraz silniku skryptów PowerShell.

Jak powstrzymać najpopularniejsze wirusy?
Jak powstrzymać najpopularniejsze wirusy?
Źródło zdjęć: © Licencjodawca | Kamil Dudek
Kamil J. Dudek

10.08.2022 16:33

Zalogowani mogą więcej

Możesz zapisać ten artykuł na później. Znajdziesz go potem na swoim koncie użytkownika

Stare technologie

Zacznijmy od MSHTA. Program ten to pozostałość po pierwszym podejściu Microsoftu do aplikacji z interfejsem webowym. MSHTA jest parserem tzw. "Aplikacji HTML" (HTA): plików HTML zaopatrzonych w kontrolki ActiveX oraz skrypty Visual Basic Script, mogących wołać funkcje systemowe za pomocą interfejsu COM. Aplikacja HTA to jednoplikowy kontener na pliki HTML, JS/VBS, GIF/JPEG, DLL/OCX i CSS.

Ich parserem jest, oczywiście, Internet Explorer. MSHTA uruchamia po prostu jego silnik rysujący (MSHTML) w odpowiednim trybie. Aplikacje HTML robią to, co IE potrafi zaoferować, ale domyślnie blokuje na stronach internetowych: mowa o uruchamianiu skryptów wykorzystujących wywołania systemowe. Użycie niniejszej funkcji jest możliwe tylko wtedy gdy strona wykorzystująca ją znajduje się w strefie zabezpieczeń "Zaufane witryny" lub "Komputer lokalny".

Aplikacje HTA, ponieważ "już są na komputerze", są traktowane jako strefa Komputer lokalny i mają prawa do wszystkiego. Nie szkodzi, że mógł je pobrać wirus: są zaufane z definicji. Jest to słabość projektowa Internet Explorera - choć bardzo drobiazgowo pilnuje on bezpieczeństwa na stronach, całkowicie porzuca tę czynność podczas pracy z lokalnymi plikami.

Co gorsza, MSHTA ma możliwość uruchamiania plików… bezpośrednio z internetu. One też są "zaufane", bo po pobraniu są już plikiem lokalnym. To oczywiście bez sensu i nie jest słabością, a dziurą, błędem. Microsoft nie spieszy się jednak z jego usunięciem i nawet w Windows 11 MSHTA wciąż istnieje i zachowuje się właśnie tak, jak wyżej.

Zapora

Wyłączenie MSHTA jest niemożliwe, dlatego należy odmówić mu łączności z siecią. Warto tu dobitnie podkreślić, że usuwanie parsera HTA z systemu to błąd: Windows naprawi swój katalog podczas najbliższej konserwacji, a jeżeli nie zdąży tego zrobić przed instalacją aktualizacji, może mieć problem z jej ukończeniem. Blokada na zaporze jest mniej inwazyjna, odwracalna i możliwa do osiągnięcia następującym poleceniem PowerShell:


New-NetFirewallRule -Name 'BlockHTA' -DisplayName 'Blokuj HTA' -Description 'Zabrania parserowi HTA laczyc sie z siecia' -Enabled True -Profile Any -Direction Outbound -Action Block -Program C:\Windows\system32\mshta.exe

Przy okazji możemy od razu użyć PowerShella do zablokowania… PowerShella. Teoretycznie, domyślne ustawienie systemu zakazuje wykonywania skryptów PowerShell. Niestety, środowisko to cierpi na tę samą bolączkę, co MSHTA: można podać mu skrypt jako parametr wiersza poleceń. To jest dozwolone niezależnie od poziomu zabezpieczeń i niemożliwe do wyłączenia. Jest więc masowo wykorzystywane przez wirusy. PowerShell znajduje się w nietypowym miejscu i jego wyłączenie za pomocą polecenia osiągniemy w następujący sposób:

New-NetFirewallRule -Name 'BlockPS' -DisplayName 'Blokuj PowerShell' -Description 'Zabrania skryptom PowerShell laczyc sie z siecia' -Enabled True -Profile Any -Direction Outbound -Action Block -Program C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe

Aktualizacje

Pakiet Office jest w stanie wywołać złośliwy kod na więcej sposobów (teoretycznie nie powinien, jeżeli reguły redukcyjne działają…), ale te które zablokowaliśmy, są najważniejsze. Kampanie wirusowe wykorzystujące dokumenty Office stosują jednak jeszcze jeden sposób: dziury w samym pakiecie. To zaskakujące, ale akcje celujące w Polskę dziś wciąż wykorzystują dziury załatane w 2017 i 2018 roku. Można to wyjaśnić tylko w jeden sposób: wysokim udziałem niezaktualizowanych kopii Office 2007, ostatniej wersji posiadającej wariant niewymagający aktywacji.

Tutaj istotna uwaga dla posiadaczy "lewych" kopii Office 2007: pakiet ten jest aktualizowany przez Windows Update po odblokowaniu tej funkcji, a instalacja aktualizacji nie sprawia, że pakiet jest "wykrywany" i "zgłaszany" jako nielicencjonowany. Aktualizacje dla wersji 2007 skończyły się w 2018 roku i dotyczą właśnie tych popularnych dziur. Dlatego wysoce wskazane jest jednak zaktualizować pakiet Office. Nie zaszkodzi także usunąć z niego składnik "Edytor Równań".

Co dalej?

Czy to wszystko? Oczywiście, że nie. Metod infekcji jest o wiele więcej i przed częścią z nich nie ustrzeże nas żadna konfiguracja, a jedynie ostrożność (i aktualne oprogramowanie). Kwestiami godnymi uwagi są tutaj metody wyłączania Defendera, omijania UAC oraz przeżywające swój renesans nadużycia LNK. Problemów zawsze będzie więcej niż rozwiązań. Jest jednak jeszcze kilka pomniejszych rzeczy, które możemy zrobić. O nich następnym razem.

Kamil J. Dudek, współpracownik redakcji dobreprogramy.pl

Programy

Zobacz więcej
Komentarze (22)