Vzhledem k období publikačního sucha, nedostatku času a inspirace, jsem se rozhodl sepsat v rychlosti alespoň těchto pár řádků, které se budou věnovat skrytému běhu programů a jejich spouštění jako systémových služeb pod operačním systémem MS Windows.
Samozřejmě není nic lepšího než si požadovanou aplikaci naprogramovat sám a rovnou jí vytvořit tak, aby běžela skrytě nebo mohla běžet jako systémová služba. Proč však znovu tvořit něco, co již existuje, spolehlivě funguje a vyhovuje nám to? Navíc, ne každý má dostatek času a zkušeností k tvorbě vlastních programů. Tito uživatelé mohou ke skrytému spuštění svých oblíbených aplikací nebo pro jejich spuštění jako systémové služby využít rad uvedených níže.
Důvodů, proč spouštět programy skrytě nebo jako systémové služby, může být mnoho. Někdo potřebuje mít spuštěny různé analytické nástroje a když jsou minimalizovány na liště, tak překáží a může dojít k jejich nechtěnému ukončení. Jiný by rád skryl různé programy, které mu slouží pro monitoring práce na počítači. Důvodem proč spustit program jako systémovou službu, může být také například využití systémových práv, pod kterými taková služba běží a využití skutečnosti, že je služba spuštěna ještě před zalogováním kohokoliv z uživatelů. Spuštění keyloggeru jako systémové služby tak může vést i k zachycení přístupového hesla do systému. Využití je rozhodně široké spektrum a každý si tak může najít ten svůj důvod, proč program jako systémovou službu spustit.
Pokud nemáme možnost upravit přímo kód daného programu, je jednou z možností, využít ke spuštění programu jakéhosi zavaděče, který se o skryté spuštění programu postará. Tento zavaděč může být vytvořen v jakémkoliv vhodném programovacím jazyce. My si zde ukážeme příklad vytvořený ve VBS, protože se mi tato možnost jeví jako nejjednodužší.
Uvedený výpis kódu, který je potřeba vložit do souboru s příponou vbs, spustí program C:\Program files\aplikace.exe. Změnou této hodnoty můžete spouštět jakýkoliv jiný program.
Tato metoda má bohužel tu nevýhodu, že funguje jen v případě, kdy spouštěný program umožňuje změnu stylu a proto tímto způsobem nespustíte skrytě všechny programy.
Více o metodě Run ve VBS se můžete dočíst na stránkách Microsoftu: http://msdn2.microsoft.com/en-us/library/d5fk67ky.aspx.
Řešení je celkem jednoduché a spočívá v použití některého z nástrojů, který je k tomu určen. My se v tomto článku zaměříme na utility instsrv.exe a srvany.exe z balíku Microsoft Resource Kit, který je volně dostupný ke stažení na webu Microsoftu. Pomocí těchto utilit budeme moci spustit jako systémovou službu téměř jakýkoliv program a budeme tak moci využívat všech výhod, které nám systémové služby nabízí. Vzhledem k tomu, že podrobné informace se nacházejí přímo na stránkách Microsoftu, nebudu se zde nějak podrobněji rozepisovat, ale odkážu Vás raději na patřičný dokument: http://support.microsoft.com/kb/137890.
Co však považuji za nutné zmínit, je nutnost mít při takto zaváděných službách administrátorská práva, což může být v některých případech překážkou. Na druhou stranu, pokud se nám dostane možnost využít administrátorských práv alespoň v určité chvíli, může se tato varianta jevit jako poměrně jednoduchá a účinná.
Vzhledem k tomu, že je tento článek je jen jakýmsi plácnutím do vody a že po chvíli hledání by si každý mohl zde uvedené informace vyhledat na Googlu, vkládám jej do UserTextu a věřím, že se přesto najde někdo, komu by tento článek mohl alespoň částečně pomoci :)