Technik na ukrywanie się w systemie Windows i możliwości utworzenia backdoora jest na pewno wiele. O części z nich pisaliśmy na Kapitanie. Czy jednak zdawałeś sobie sprawę, iż taki backdoor może istnieć również w logach na Windows, a tak naprawdę w przeglądarce logów? O tym właśnie jest dzisiejszy tekst.
W poprzednim artykule opisywaliśmy, jak atakujący może w łatwy sposób utworzyć w systemie Windows backdoor w bazie danych Service Control Managera (Menadżer Kontroli Usług na Windows), pozwalający mu na wykonywanie dowolnych poleceń, w tym eskalację uprawnień na zwykłym koncie użytkownika. W dzisiejszym opiszemy i pokażemy podobną możliwość ukrywania się (ang. persistence) ale tym razem w kontekście dziennika zdarzeń Windows (z ang. Event Log) i dzięki temu możliwości uruchomienia payload.
Event Viewer na Windows jako miejsce przyczółku dla atakującego
Event Viewer (podgląd dziennika zdarzeń) to znana w środowisku administratorów i cybersecurity konsola (składnik systemu Windows) do wyświetlania logów. Pokazuje informacje związane z aplikacjami, bezpieczeństwem, zdarzeniami systemowymi i konfiguracyjnymi. Wspominając o logach, chcielibyśmy przypomnieć Ci, Drogi Czytelniku, jeden z naszych pierwszych artykułów, opisujący ciekawostki, jakie możemy odnaleźć w takich logach.
Mimo iż podgląd zdarzeń używany jest głównie do rozwiązywania problemów z systemem Windows przez administratorów, może być również wykorzystywany jako miejsce, w którym zespół red team lub atakujący mogą utworzyć w systemie przyczółek.
Jedną z funkcji, jakie oferuje konsola, jest pomoc dla administratorów w celu uzyskania bezpośrednich informacji o określonym identyfikatorze zdarzenia przez Internet. Microsoft wbudował tę funkcję pod linkiem o nazwie: „Pomoc online dziennika zdarzeń”.
Pomoc online dziennika zdarzeń przekierowuje użytkowników do adresu URL firmy Microsoft i jest kontrolowana z następującej lokalizacji rejestru:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Event ViewerCo to dla nas oznacza?
Jeśli uzyskałeś wcześniej dostęp administracyjny do systemu lub Twój payload czy skrypt modyfikujący rejestr został uruchomiony na poświadczeniach użytkownika, który pracuje na komputerze, jako lokalny admin możesz zmodyfikować interesujące trzy klucze rejestru.
Wszystkie one dotyczą właśnie powyższego przycisku pomocy (hyperlink) w konsoli.
Omawiane klucze to:
- MicrosoftRedirectionURL=<url>
- MicrosoftRedirectionProgramCommandLineParameters=<args>
MicrosoftRedirectionProgram=<program>
W tle systemu operacyjnego, gdy klikniemy łącze, konsola (proces mmc.exe) otworzy domyślne łącze pomocy firmy Microsoft, które będzie renderowane przez aktualnie skonfigurowaną (domyślną) przeglądarkę.
Najważniejsze w tym wszystkim jest to, iż modyfikując wartości tych kluczy, zamiast domyślnej przeglądarki możemy uruchomić wybrany przez nas program!
Wiedza na temat odpowiedniej modyfikacji kluczy rejestru będzie sednem powodzenia utworzenia takiego backdoora w systemie. Pamiętajmy, iż do ich modyfikacji potrzebne są uprawnienia administratora. Później, żeby wykonać tę sztuczkę i uruchomić backdoor, wystarczy, iż będziemy zalogowani na zwykłym koncie użytkownika.
Jakie wartości wpisać?
W przypadku:
- MicrosoftRedirectionURL –można zmienić na np. „file://c:\windows\system32\cmd.exe”
- MicrosoftRedirectionProgram – można bezpośrednio wskazać plik wykonywalny. Można też majstrować przy parametrach wiersza poleceń, np. w kombinacji z lolbinem. https://kapitanhack.pl/?s=lolbin
Podczas konfigurowania parametrów pojawia się jeden problem – istnieje odpowiednik dla tych wpisów w rejestrze w gałęzi „Wow6432Node”, ale nie wydają się one zdatne do użytku.
Nawet jeżeli wpisy w tym kluczu zostaną zmienione, a podgląd zdarzeń zostanie uruchomiony z katalogu syswow64 (w celu wymuszenia wersji 32-bitowej), system operacyjny i tak uruchomi adekwatną wersję 64-bitową.
Kolejna rzeczą, która należy wyłączyć w rejestrze, jest ostrzeżenie użytkownika, a w zasadzie prośba o zgodę na przesłanie danych z dziennika do firmy Microsoft (to okno dialogowe pojawia się przed uruchomieniem programu):
W celu wyłączenia tego okna należy w rejestrze zmienić parametr w kluczu:
HKCU\Software\Microsoft\Windows NT\ CurrentVersion\Event Viewer\ConfirmUrl=0na zero.
Po tej zmianie w momencie kliknięcia na link pomocy możemy się cieszyć uruchomionym w systemie naszym payload lub LOLBinem.
Czy stanowi to duże zagrożenie?
Zauważmy, iż do detekcji tego procesu wystarczy reguła w systemie bezpieczeństwa, która będzie sprawdzała proces „mmc.exe” i odpalane przez niego procesy dziedziczne.
Ponadto monitorowanie powyższych kluczy rejestru pod kątem zmian może stworzyć okazję do wykrycia próby manipulacji w systemie.
Patrząc też na konieczność manualnego dostępu do konsoli w celu kliknięcia na link i biorąc pod uwagę fakt, iż przeciętny użytkownik zwykle nie otwiera dziennika zdarzeń i nie klika pomocy online, jest mało prawdopodobne, aby technika ta zyskała popularność.
Sprawdzi się natomiast jako trywialna metoda do odpalenia payload i uruchomienia kanału komunikacji C2.