Menu dostępności

Kolejny mało znany LOLBIN – CyberGhost VPN

O całej koncepcji narzędzi LOLBIN pisaliśmy już przy okazji tego artykułu. W skrócie narzędzia te to pliki binarne podpisane przez system Windows, które przy złych intencjach mogą być wykorzystane do pobrania lub wykonania złośliwego kodu. Są to więc programy na co dzień wykorzystywane przez użytkowników systemu Windows. Mogą też posłużyć atakującym do dostarczenia malware. Nie powinno się korzystać z programów określanych jako LOLBIN w sieciach korporacyjnych, gdyż po prostu uznawane są za „podatne”.

Dziś omówimy program CyberGhost VPN, którego podatność została opisana przez autora – Nasreddine Bencherchali.

Ciekawostka – odkrywca podatności zgłosił ten problem bezpośrednio do zespołu pomocy technicznej, który przekazał sprawę dalej. Ostatecznie producent nie uznał tego za poważną lukę, więc żądna poprawka nie jest dostępna do momentu powstania tego artykułu.

Autor zaczął oczywiście od pobrania najnowszej wersji CyberGhost VPN i zainstalowania jej oraz monitorowania wszystkich działań aplikacji w tle. Na pierwszy rzut oka nic nie wyglądało podejrzanie, dopóki nie przyjrzano się strukturze katalogów i plikom binarnym w środku.

Pierwszy, który przykuł uwagę, nazywa się wprost „PeLauncher.exe” i domyślnie znajduje się w „C:\Program Files\CyberGhost 8\Applications\VPN”.

Sprawdzając plik za pomocą PEStudio, widzimy, że jest napisany w „.NET”, co oznacza, że można podejrzeć jego „źródło”. Sprawdzenie ujawnia tylko jedną klasę o nazwie „Program” z interesującą funkcją główną, która przyjmuje względną ścieżkę do pliku binarnego o nazwie „Dashboard.exe” i wykonuje ją z argumentem „!!launch” i dowolnym argumentem, który przekazujemy.

„Dashboard.exe” to plik binarny odpowiedzialny za wyświetlanie pulpitu nawigacyjnego CyberGhost VPN widocznego poniżej:

Z tą wiedzą można nadużywać „Dashboard.exe” w następujący sposób:

  • Wybrać dowolny plik binarny i zmienić jego nazwę na „Dashboard.exe”.
  • Utworzyć dwa zagnieżdżone foldery „A” i „B” i skopiować „PeLauncher.exe” do środka.
  • Skopiować fałszywy „Dashboard.exe” dwa poziomy niżej od „PeLauncher”.
  • Wykonać następujące polecenie. (Arg jest niezbędny do pominięcia sprawdzenia widocznego w źródle) – „PeLauncher.exe [ARG]”
  • Przygotowany plik binarny zostanie wykonany jako dziecko „PeLauncher”. (Zauważ, że plik binarny musi wiedzieć, jak obsłużyć „!!launch” i argument, który podamy, ponieważ są one zakodowane na stałe).

Na początek to bardzo dużo, ponieważ PeLauncher.exe jest podpisaną binarką, jak widzimy poniżej:

Argumnent „!!launch” wydaje się być równie ciekawy, więc autor zdecydował się pójść o krok dalej.

Analizując teraz plik „Dashboard.exe” dostarczony z oprogramowanie również widzimy, że jest on napisany w „.NET”. To sprawia, że życie jest nieco łatwiejsze do przeprowadzenia analizy. Szukanie wpisów po znakach „!!” dało rezultat.
Okazało się, że można użyć argumentu „!!launch”, aby uruchomić dowolny plik wykonywalny, określając go w następujący sposób:

– Dashboard.exe !!launch [Ścieżka do pliku binarnego]

Test został wykonany na programie Kalkulator:

Dodatkowo również jest podpisany i zweryfikowany:

Powyższy przykład pokazuje, że złośliwe działanie w systemie niekoniecznie musi być wiązać się z wcześniejszą kompromitacją stacji roboczej czy konta użytkownika. Program CyberGhost VPN z pewnością wykorzystywany jest przez wielu nieświadomych zagrożenia użytkowników, a użycie powyższej metody może nie spowodować podniesienia żadnego alarmu w systemach bezpieczeństwa.

Warto znać takie techniki i być świadomym istnienia plików LOLBIN. Obrazki i POC pochodzi z bloga.

Popularne

W jaki sposób współczesne wirusy atakują i wyłączają ochronę antywirusową na komputerze?

W jaki sposób współczesne wirusy atakują i wyłączają ochronę antywirusową na komputerze?

O sposobach na obejście antywirusa przez złośliwe oprogramowane pisaliśmy w artykule tutaj. W tym artykule skupimy się na nieco innej metodzie polegającej na wyłączeniu ochrony antywirusowej na komp...
Jak poznać hasło administratora lub użytkowników logujących się do Twojego komputera?

Jak poznać hasło administratora lub użytkowników logujących się do Twojego komputera?

Jeśli masz odrobinę szczęścia lub „odpowiednie umiejętności” i potrafisz zdobyć lokalne uprawnienia administracyjne na Twoim komputerze w firmie lub zaliczasz się do grona tych szczęściarzy, którzy pracuj...
Cyber Fake as a service. Jaka przyszłość czeka sterowany przekaz

Cyber Fake as a service. Jaka przyszłość czeka sterowany przekaz

Wszyscy znamy pojęcie „fake newsów”. Informacje o farmach troll, internetowym hejcie i działaniach „piarowych” z wykorzystaniem nowoczesnych środków przekazu dominują w wiadomości na całym Świecie. Jaka b...
Testujemy nowy LOLBin na Windows – lpremove.exe

Testujemy nowy LOLBin na Windows – lpremove.exe

Ostatnio  o LOLBinach pisaliśmy w kwietniu. Podczas kolejnych poszukiwań natrafiliśmy na ciekawy nowo odkryty LOLBin o nazwie „lpremove.exe”. Zasadę działania nowego LOLBina opisał Grzegorz Tworek na...
Krytyczna luka w zabezpieczeniach F5 Big-IP. Jest publiczny POC

Krytyczna luka w zabezpieczeniach F5 Big-IP. Jest publiczny POC

F5 naprawia krytyczną lukę CVE-2023-46747 w zabezpieczeniach BIG-IP, jest publiczny POC. Nie tak dawno pisaliśmy o krytycznej podatności w CISCO, a w międzyczasie pojawiła się nowa luka w zabezpieczeniach urządz...