Menu dostępności

Kolejny LOLBIN umożliwia niekontrolowane uruchomienie malware na Windows

W dzisiejszym poście opiszemy i przetestujemy kolejną aplikację/plik wykonywalny, wbudowany w system operacyjny Windows o nazwie „runexehelper.exe”, który może pozwolić atakującemu ominąć zabezpieczenia i blokady systemowe oraz niekontrolowanie uruchomić zewnętrzny kod (aplikację).

Minął równo miesiąc, kiedy pisaliśmy o innym ciekawym LOLBIN – grpconv.exe , którego użycie powodowało utworzenie skrótu do aplikacji i uruchomienie jej podczas logowania użytkownika do Windows. Inne opisywane przez nas LOLBINS znajdziesz tutaj. Odkrywcą opisywanego dzisiaj LOLBIN’a jest użytkownik Twittera o pseudonimie Freddy (@falsneng). W swoim poście z 23 lipca 2021, przedstawia wbudowany w Windows program „runexehelper.exe”, podpisany przez Microsoft certyfikatem, który przy odpowiednio zadanym parametrze pozwala uruchomić zewnętrzny kod (program).

Autor postu podaje, że za wykonanie (przy pewnych warunkach) zewnętrznego kodu odpowiada uruchamiana funkcja Windows API „CreateProcessAsUserW”. Na poniższym ekranie widać ją w kodzie.

Źródło: Twitter użytkownik Freddy.

Według autora, po ustawieniu zmiennej wskazującej na nieistniejący katalog oraz podaniu w parametrze wywołania programu ścieżki do zewnętrznego procesu (np. aplikacji notepad.exe) powinniśmy mieć możliwość uruchomienia tej aplikacji. Jako dowód, pokazane jest to na poniższym ekranie w Process Monitor’ze.

Źródło: Twitter użytkownik Freddy.

Postanowiliśmy sprawdzić, czy po prawie roku nadal występuje taka możliwość w Microsoft Windows.


Uruchomienie zewnętrznego kodu

W naszym teście będziemy starali się za pomocą „runexehelper.exe” uruchomić zewnętrzny program (kalkulator w Windows).
Pierwszym krokiem, jaki musimy wykonać to ustawienie zmiennej środowiskowej o nazwie „diagtrack_action_output”, której wartość musi odpowiadać nieistniejącemu w systemie katalogowi. Według Freddiego tylko w przypadku takiej konfiguracji kod runexehelper . exe będzie w stanie uruchomić zewnętrzny proces aplikacji, do której ścieżkę podamy w wywołaniu linii komend cmd . exe.

Ustawiamy zmienną „diagtrack_action_output”, aby wskazywała na nieistniejący katalog „Fake”.

„Set diagtrack_action_output=c:\Fake\:”

Następnie wykonujemy poniższe polecenie

Runexehelper c:\\windows\\system32\\calc.exe

Program wykonał się bezbłędnie, lecz ku naszemu zdziwieniu w procesach systemowych w Proces Monitorze nie pojawia się nowy proces, jak sugeruje wcześniej autor. Czyżby Microsoft poprawił swój błąd? Jedno jest na pewno pewne – działa ustawienie zmiennej „diagtrack_action_output” na nieistniejący katalog, bo aplikacja próbuje w nim utworzyć plik tekstowy o nazwie „runexewithargs_output.txt” Widać to na poniższym ekranie z Process Monitor’a.

Po tym zdarzeniu nie następuje jednak kolejne – uruchomienie procesu kalkulatora, którego byśmy się spodziewali. Ścieżkę do binarki kalkulatora podaliśmy we wcześniejszym wywołaniu z linii komend. Być może Microsoft poprawił ten błąd. Nie zaglądaliśmy do kodu, więc może Ty drogi czytelniku skusisz się na głębszą analizę i coś znajdziesz?

Popularne

Popularne oszustwa na WhatsAppie i jak ich uniknąć

Popularne oszustwa na WhatsAppie i jak ich uniknąć

Z ponad dwoma miliardami użytkowników WhatsApp oferuje ogromną pulę potencjalnych celów dla scamerów. Aby jeszcze bardziej skomplikować sprawę, oszuści cały czas zdobywają nowe wyrafinowane umiejętno...
Masowy wyciek danych PayPal – 15,8 miliona haseł w rękach cyberprzestępców

Masowy wyciek danych PayPal – 15,8 miliona haseł w rękach cyberprzestępców

16 sierpnia br. na forum cyberprzestępczym pojawiła się oferta sprzedaży ogromnej bazy danych, zawierającej ponad 15,8 miliona par adresów e-mail i haseł w formacie jawnego tekstu powiązanych z konta...
Pełna widoczność punktów końcowych jako fundament bezpieczeństwa

Pełna widoczność punktów końcowych jako fundament bezpieczeństwa

W dynamicznym środowisku IT współczesnych organizacji uzyskanie pełnej widoczności punktów końcowych (endpoint visibility) to zadanie długotrwałe i wymagające. Szereg zmiennych, takich jak różnorodne narzędzia,...
Nie masz dostępu administracyjnego do Windows? Żaden problem – pokazujemy, jak możesz go zdobyć lub odzyskać

Nie masz dostępu administracyjnego do Windows? Żaden problem – pokazujemy, jak możesz go zdobyć lub odzyskać

W dzisiejszym odcinku hakowania pokażemy, jak za pomocą specjalnie przygotowanego kodu możemy przeprowadzić w trybie offline atak na Windows i utworzyć w nim nowe konto administratora. Scenariusz może...
Jak uzyskać pełny dostęp do Windows? Tworzymy backdoor i uruchamiamy wiersz linii poleceń przed ekranem logowania na koncie SYSTEM

Jak uzyskać pełny dostęp do Windows? Tworzymy backdoor i uruchamiamy wiersz linii poleceń przed ekranem logowania na koncie SYSTEM

W dzisiejszym odcinku hakowania pokażemy stary i sprawdzony, choć nieco zmodyfikowany sposób na przejęcie pełnej kontroli w Windows i to jeszcze przed zalogowaniem się do systemu (na ekranie powitalnym). Za je...