Přidat článek mezi oblíbenéZasílat nové komentáře e-mailem Bezpečnost na internetu: pracujeme s neprivilegovaným účtem (III).

Jsou programy, které buď z principu nebo kvůli chybě programátora nedovedou pracovat pod účtem, který nemá administrátorská práva (naštěstí jich stále ubývá). Windows jsou však systém víceuživatelský, a tak můžeme spustit více programů pod více uživateli, ať už pomocí funkce RUNAS (Spustit jako), přepínáním uživatelů (Fast User Switching) nebo příkazem SU. Dnes se podíváme, co můžeme dělat s funkcí "Spustit jako".

Nejdříve trochu technické historie. Windows NT 3.1, první předchůdce dnešních Windows XP/Vista, byly navrženy jako pseudo-víceuživatelský systém, kdy může být každý běžící proces spuštěn jiným uživatelem, a práva izolují jednotlivé uživatele navzájem (s výjimkou administrátora, který může kontrolovat procesy ostatních uživatelů). Procesy vytváří i systém, za pomocí uživatele NT Authority\System (viz první díl seriálu), a proces uživatele SYSTEM může být uzamčen i před administrátorem. Každý proces (=spuštěný program, tj. například Notepad, Příkazový řádek, Firefox...) dědí práva od uživatele, který jej spustil (opět viz první díl seriálu).

Interakce uživatele probíhá přes fyzickou session, takzvanou Console, kde je viditelný jeden z mnoha možných Desktopů (Plocha, neplést s "plochou", kterou vytváří Průzkumník, to je něco úplně jiného). Desktopů může být větší množství a každá session uživatele také jeden desktop vytváří (neplést s virtuálními session Terminal Services, toto jsou všechno desktopy uživatelů přihlášených místně). Uživatel u konzoly však vidí jen jeden jediný desktop, ten svůj. Mezi desktopy se dá přepínat, ale systém žádnou takovou funkci neobsahuje. První šance, jak umožnit uživateli spustit program s alternativním oprávněním byl SU.EXE pro Windows NT, který umožnil i přepnout mezi desktopy (jednorázově); po ukončení všech procesů druhého uživatele se automaticky obnovil původní desktop. (Na podobném principu pracuje i "přepínání uživatelů" ve Windows XP; to však umožňuje i přepnutí zpět na původní desktop podle vůle uživatele).

S Windows 2000 přišel uživatelsky daleko přívětivější program než SU, a to RUNAS. Nabídka "spustit jako" byla přidána k položkám v Průzkumníku a uživatel dostal možnost spustit jeden program s jiným oprávněním, aniž by musel uvádět, v jakém desktopu jej chce pustit. Chování kontextového menu se napříč verzemi měnilo; u Windows 2000 bylo potřeba držet Shift, aby se nabídka objevila, Windows 2003 Server již nabízí tuto nabídku ve výchozím stavu na každém zástupci. Ukažme si, jak se s kontextovým menu pracuje a jak použít příkaz rovnou z příkazového řádku.

http://pc.poradna.net/files/article/836/runas1bd0.p ng

Za tím účelem jsem si vytvořil zástupce na ploše - jeden ukazující na devmgmt.msc, tedy "Správce zařízení", a Internet Explorer. Správce je vyloženě typ programu, který vyžaduje administrátorská práva - neadministrátor nemůže odebírat hardwarová zařízení, zatímco prohlížeč je program, který je naopak nebezpečné pod administrátorským účtem spouštět. Přihlášen jsem jako uživatel s právy Users, "_vladimir".

http://pc.poradna.net/files/article/836/runas2fm7.p ng

Po stisknutí nabídky Runas ("Spustit jako") se nám nabízí, zda si to nechceme rozmyslet a přeci jen spustit program s aktuálním uživatelem, nebo nám to nabízí seznam posledních uživatelů, které si to pamatuje + uživatele Administrator a Guest, kteří jsou přítomni vždy. Můžeme tam přirozeně vepsat jakéhokoliv uživatele. Následně musíme zadat heslo uživatele.

http://pc.poradna.net/files/article/836/runas3dn9.p ng

Tento obrázek by měl přehledně ukazovat, co se vlastně děje, když si spustím Device Manager přes Spustit jako a Internet Explorer způsobem klasickým. Obě okna mám teď na své ploše (= ploše Průzkumníku, neplést s NT Desktopem), a jen Správce úloh mi může prozradit, jaký uživatel spustil který program. Vidíme, že Device Manager spustil uživatel Administrator (to je správně, pouštěli jsme ho přeci přes Runas, zelená barva), Internet Explorer spustil původní uživatel _vladimir (červená barva) a tudíž má jen práva User, stejně jako celý Průzkumník s tlačítkem Start a vše, co vytváří uživatelské prostředí (modrá barva).

http://pc.poradna.net/files/article/836/runas4mc6.p ng

Celé si to můžeme vyzkoušet přímo z příkazového řádku. Nástroj RUNAS má velmi dobrou nápovědu s příklady, kterou vyvoláme parametrem /?.

http://pc.poradna.net/files/article/836/runas5eh1.p ng

Nebudeme řešit žádné složité parametry a zadáme syntaxi nejjednodušší. (Nechcete-li si zjednodušit práci proměnnou %COMPUTERNAME% nebo je váš účet členem domény, samozřejmě vepište jméno domény nebo název počítače.)

http://pc.poradna.net/files/article/836/runas6qi5.p ng

Nyní můžeme i vidět, jak funguje dědičnost. Z takto spuštěného programu cmd (příkazové řádky, vidíme v titulku, že je spuštěn s alternativním oprávněním, zelená barva) zadáme příkaz Notepad, tím se nám spustí Notepad se stejným oprávněním (růžová barva). Vše máme hezky na jedné naší ploše (ploše průzkumníku, modrá barva).

Související:

http://pc.poradna.net/article/view/600-bezpecnost-n a-internetu-pracujeme-s-neprivilegovanym-uctem-i
http://pc.poradna.net/article/view/714-bezpecnost-n a-internetu-pracujeme-s-neprivilegovanym-uctem-ii

Komentář k článku

1 Zadajte svou přezdívku:
2 Napište svůj komentář:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět na články