Webové stránky K5
Články zobrazeny celkem: 1258097x  
Nabídka
Úvod
Přehled
K5
Masakr
Tipy
Odkazy
Vyhledávání

Reklama

Jak potlačit upozornění zabezpečení Tisk E-mail
Hodnocení čtenářů: / 4
SlabéVynikající 
Napsal K5   
Thursday, 15. April 2010
Když se dostaly ajťákům poprvé do rukou Windows Vista, všichni unisono nadávali, jak jsou otravné tím svým UAC, takže když ajťák konfiguruje nový počítač, aby ho pak nemusel konfigurovat obyčejný uživatel, tak z těch věčných dotazů, jestli "opravdu chce to či ono", pomalu zešedivěl. Jenže tahle bezpečnostní paranoia nebyla výsadou až operačního systému Windows Vista, byla tu mnohem dříve, akorát že nebyla tolik "otravná" a do funkcionality UAC měla ještě dost daleko. My se nyní podíváme na to, jak docílit toho, aby se dal počítač nakonfigurovat bez zásahu lidské ruky, pro což je nezbytné, aby se žádné upozornění zabezpečení nikdy neobjevilo a tudíž ho ani nebylo nutné "odkliknout" (čili opravdu bez zásahu lidské ruky).

Upozornění zabezpečení při spouštění souboru
Upozornění zabezpečení při spouštění souboru

Podobné upozornění zabezpečení uživatelé zažívali už v dobách před Windows Vista, ale ve většině případů se týž "podezřelý" program spuštěný z příkazového řádku s tímto hlášením vůbec nezdržoval a rovnou se spustil. Ve Windows Vista a Windows 7 se ale toto hlášení objevovalo i z příkazového řádku vždy, zatím co z příkazového řádku Windows XP jen sporadicky. Tento způsob ochrany před spuštěním potencionálně nebezpečného softwaru je účinný jen velmi málo, vlastně vůbec, protože soubor nijak neověřuje/nekontroluje a ani uživateli nic nezabrání soubor spustit. Takže se nic nestane, pokud tuto "ochranu" v instalačních skriptech obejdeme úplně a soubory označíme jako "čisté" tedy je amnestujeme.

Zablokovaný soubor: upozornění zabezpečení je aktivní
Zablokovaný soubor: upozornění zabezpečení je aktivní

Odblokovaný soubor: bez upozornění zabezpečení
Odblokovaný soubor: bez upozornění zabezpečení

Výše uvedené obrázky ukazují, jak lze kliknutím zbavit soubor jha, že je z jiného počítače a i tedy potencionálně nebezpečný. Pochopitelně, toto činíme jen u souborů, u kterých víme z jakého zdroje pocházejí a jsme si jisti, že nebezpečné nejsou. Nicméně toto neřeší problém, že tentýž "amnestovaný" soubor zkopírovaný na jiný počítač je při spuštění opět blokován oknem upozornění zabezpečení.

В чём дело: za všechno může filesystém NTFS, který v sobě nese spoustu informací navíc oproti např. FAT32 (filesystém používaný ve Windows 95/98 nebo také na flash discích) nebo CDFS (filesystém používaný na CD-ROM nebo DVD-ROM). Informace o tom, že je soubor z jiného počítače, je uložena v tzv. NTFS Data Streams a odtud je potřeba jí vymazat.

Řešení prosté: pokud soubor uložíme na disk, který není naformátován jako NTFS (např. flash disk nebo vypálíme na CD nebo nakopírujeme na Sambu), tak se informace o jeho "původu" ztratí, protože zmíněná média používají filesystémy, které si tuto informaci uložit neumí.

Příklad použití utility STREAM.EXE
Příklad použití utility STREAM.EXE

Řešení pro ajťáky: stáhneme si ze stránky Sysinternals utilitu STREAMS.EXE a s její pomocí všechny soubory "amnestujeme" - tato očista se pak přenáší při kopírování i na další počítače a tedy lze kopírovat bezobslužné instalační skripty spolu s instalovanými programy a na cílovém počítači nic*) nebude bránit jejich spuštění. A pochopitelně, na soubory stažené z Internetu později, tedy až po této amnestii, se amnestie nevztahuje a bude je třeba omilostnit dodatečně.

*) poznámka: pokud tomu pochopitelně nebude bránit politika GPO (Group Policy).

Řešení pro geeky: instalační skripty vybavíme jedním příkazem navíc, který nastaví Environment proměnou tak, aby operační systém Windows upozornění zabezpečení ignoroval. Proměnná se jmenuje SEE_MASK_NOZONECHECKS. Příklady použití:

dávkový soubor:
set SEE_MASK_NOZONECHECKS=1
neamnestovane.exe
set SEE_MASK_NOZONECHECKS=
VB Script:
set WshShell= CreateObject("Wscript.Shell")
set oEnv = WshShell.Environment("PROCESS")
oEnv("SEE_MASK_NOZONECHECKS") = 1
WshShell.Run "neamnestovane.exe",0,True
oEnv.Remove("SEE_MASK_NOZONECHECKS")

Lze nějak se streamy lidsky "pracovat?" Lidsky, tedy uživatelsky přívětivě, zrovna moc ne, ale jde to i bez nějakých extra utilit. Windows NTFS Alternate Data Streams může mít libovolné jméno, ale upozornění zabezpečení vypoužívá stream pojmenovaný Zone.Identifier. Následuje pár příkladů, jak s ním manipulovat.

Příklad přidání streamu Zone.Identifier k libovolnému souboru (nahradí stávající stream, pokud u souboru existuje):
echo [ZoneTransfer]> nejakysoubortreba.exe:Zone.Identifier
echo ZoneId=3 >> nejakysoubortreba.exe:Zone.Identifier

Příklad zobrazení obsahu streamu Zone.Identifier:
more < nejakysoubortreba.exe:Zone.Identifier

Příklad editace obsahu streamu Zone.Identifier (obsah lze změnit a uložit):
notepad nejakysoubortreba.exe:Zone.Identifier

A když už přišla řeč na [ZoneTransfer], hodnota ZoneId může nabývat hodnot:
NoZone=-1
MyComputer=0
Intranet=1
Trusted=2
Internet=3
Untrusted=4
viz též MSDN SecurityZone Enumeration, případně další podobné materiály: KB889815, KB883260.

A na úplný závěr si dáme jedno hodně smutné konstatování o tom, že featura, která má zabezpečení systému zvyšovat, je sama o sobě bezpečnostní dírou v systému:
http://www.windowsecurity.com/articles/Alternate_Data_Streams.html
 
< Předch.   Další >

Google

Reklama

Nahlédněte
Futurama
BSG
MAME
SORD M5
VMware
Total Commander
ALIX a m0n0wall
Cisco PIX
Nejnovější
Nejčtenější
Viz též
   Úvod arrow K5 arrow Taxem zase jednou něco dělal arrow Jak potlačit upozornění zabezpečení
Powered by Joomla!