Badacz bezpieczeństwa Grzegorz Tworek opublikował na Twitterze kolejny plik binarny Windows (LOLBin), który pozwala użytkownikowi uruchomić z systemu dowolny inny plik wykonywalny.
RunOnce.exe – co to takiego?
RunOnce.exe to skrót od Microsoft Run Once. Jest to plik wykonywalny Windows używany przez programy instalacyjne dla aplikacji firm trzecich. Pozwala na ponowne uruchomienie programu instalacyjnego po jego użyciu, umożliwiając użytkownikowi przeprowadzenie dalszej konfiguracji. Podczas instalacji programów niektóre instalatory Windows dodają specjalny wpis do gałęzi rejestru systemowego, pozwalający na automatyczne uruchomienia ich po jego instalacji.
Grzegorz wykorzystał powyższe zachowanie i pokazał, jak dzięki wbudowanego w Windows programu RunOnce.exe oraz specjalnego wpisu do rejestru możemy taki program uruchomić. Przy okazji tym sposobem jesteśmy w stanie obejść zabezpieczenia Windows zabraniające uruchamiania dowolnych (niedozwolonych) programów przez użytkownika.
Przykład uruchomienia programu dzięki RunOnce.exe
W celu uruchomienia dowolnego pliku wykonywalnego musimy najpierw dodać specjalny wpis do rejestru systemowego, który konfiguruje ścieżkę jego otwierania z dysku i określi ją dla RunOnce. Jako przykład uruchamianej aplikacji posłuży nam notatnik. Dodajemy zatem do rejestru informację o uruchomieniu notatnika w ścieżce RunOnce.
Polecenie reg.exe pozwoli nam dodać taki wpis. Parametr „/d” na końcu polecenia umożliwi określenie, do jakiego pliku odnosić się będzie wywołanie RunOnce.
Następnie uruchamiamy program RunOnce.exe z parametrem „/r”, co pozwoli na wystartowanie wskazanego w powyższej ścieżce rejestru programu (notatnika).
Runonce.exe /R