Autor: Toni Koluch
Mnozí to znáte. Ve státní správě chybějí peníze (a nejen tam) a tak, pokud to lze, úřad si rád zapůjčí počítače ke své práci, pochopitelně se základním softwarem (Windows či jen MS-DOS, nějaký manažer a k tomu několik disket). Smlouva na dobu určitou je sepsána a následuje klidný nerušený život. Avšak najednou se přiblíží datum odevzdání a všechna data musejí být odstraněna. Řeknete si: "O co go?" Všechno označím a smažu (80 % odpovědí), zformátuji disky (19,9 % odpovědí). Jen opravdu málokdo se zabývá otázkou, zda vše bylo uděláno tak, aby již nikdo žádná data nemohl obnovit. A tak se nyní podívejme, co s tím. Odborníci nechť přeskočí k "Mažu, mažeš, mažeme..."
Trocha opakování
HD i FD jsou rozděleny na dvě základních oblasti: systémovou oblast a datovou oblast. Datová oblast je tvořena 3 základními složkami: boot sektorem, tabulkou FAT a kořenovým adresářem Root. U hard disků se setkáme ještě s jednou tabulkou, nazývanou rozdělovací neboli PAT, ale ta nyní nebude středem našeho zájmu.
Boot sektor
neboli zaváděcí sektor je oblast, ke které systém prvně přistupuje a používá ji při startu systému k načtení potřebných systémových programů a základních diskových instrukcí do paměti. U disket je to první sektor na první stopě první strany (nezapomeňme však, že číslování probíhá od 0, tedy zapsáno [0,0,0] sektor je naprosto stejné velikosti jako ostatní, tj. 512 bytů). U hard disků je umístění boot sektoru složitější o to, že pomocí PAT může být hard disk rozdělen na více oblastí, které mohou být spravovány každá jiným operačním systémem, např. DOSem a UNIXem. Obvykle vlastní dosovský boot sektor začíná na adrese [0,1,0] při rozdělení disku na jediný disk spravovaný MS-DOSem. Boot sektor tedy obsahuje důležité informace o "fyzické konstrukci" disku, např.: počet stran, počet stop na jedné straně, počet sektorů na FAT, cluster, stopu i celý disk, souborový systém (FAT12, FAT16 nebo FAT32), max. počet složek v Root adresáři a další. Nechybí zde odkaz, zda je disk systémový.
Tabulka FAT
(File Allocation Table) je základní informační zdroj, podle nějž systém přistupuje k datům jednotlivých souborů. Její důležitost je vyjádřena již tím, že si systém spravuje dvě shodné kopie. Podle tabulky FAT systém při vytváření nových či rozšiřování stávajících souborů vyhledává volná místa v datové oblasti disku a přiděluje je souboru pro jeho data. Při načtení naopak hledá data příslušného souboru. FAT udržuje o každém clusteru dvě základní informace zda je cluster volný, či obsazený souborem, a zda je vadný, nebo ne. Každý datový cluster na disku má tedy v tabulce FAT odpovídající dvoubytový FAT-záznam. Každý záznam uvádí číslo záznamu dalšího (a tedy i clusteru), na kterém daný soubor pokračuje. DOS, resp. i Windows podle této konvence FAT udržují a k souborům přistupují. Protože jednotlivé záznamy ve FAT jsou číselně vázány s odpovídajícími clustery datové oblasti disku, znamená např. posloupnost FAT-záznamu: 2,3,4,5,6,15,16,17,21,<EOF> pro operační systém instrukce na postupné přečtení 5 clusterů s čísly 2 až 6, dále 3 clustery s čísly 15 až 17 a cluster 21. Ve FAT je pak speciálně označen poslední cluster.
Root
= kořenový adresář, tvoří spolu s FAT nezbytnou dvojici tabulek pro přístup k souborům. Obsahuje zbývající informace, které dosud chyběly: jméno souboru (8 bytů), příponu (3), atributy (1), rezervu pro systém (10), čas (2), datum (2), první FAT záznam (2), velikost souboru (4). Celkově tedy představuje každý adresářový záznam pole o délce 32 bytů a to platí i pro dlouhé názvy pod Windows 95.
První znak ve jménu souboru má specifický význam. Zde totiž systém považuje některé znaky za informační pro další zacházení s daným souborem:
lNulu systém dekóduje jako informaci, že dosáhl konce aktivních adresářových záznamů.
lTečka je interpretována jako záznam rezervovaný pro systém a umožňující mu navigaci další adresářovou strukturou.
lMalé řecké sigma (E5hex) je považováno za informaci, že daný soubor je zrušen. Programy, které obnovují smazané soubory, tento znak ve výpisech interpretují zpravidla jako otazník.
Cluster nebo sektor?
Nejmenší "porcí" dat, kterou je diskový kontrolér schopen přečíst, je jeden sektor o velikosti 512 bytů. Na disketě libovolné velikosti (v dnešní době bojuje o přežití už jen FD 1,44 MB) platí: sektor=cluster. Jejich využití vypadá následovně:
0 sektor boot sektor
1-9 1. kopie FAT
10-18 2. kopie FAT
19-32ĘĘ Root kořenový adresář
33-2879datová oblast disku
U hard disků operační systém používá vícesektorové jednotky zvané právě cluster. Jejich velikost je přímo závislá na velikosti HD (viz tabulka).
Největší problém při stále zvětšující se kapacitě HD je tzv. clusterování nevyužitelné zbytky přidělených a neúplně obsazených posledních clusterů. Pokud např. na disku o kapacitě 1,6 GB je soubor byť jen o velikosti 1 bytu, systém mu přidělí 1 cluster=64 sektorů=32 KB, a další soubor začíná až na dalším clusteru. Vrátíme-li se k tématu, pak obsahuje-li těchto nevyužitých 32 767 bytů nějaká předešlá data, jsou zcela k dispozici zlodějům...
Nový systém FAT32 sice zmenší velikost clusteru v závislosti na velikosti disku (v našem případě oproti 32 KB v systému FAT16 na pouhých 4 KB, ale zbytky, sice menší, zůstávají).
Mažu, mažeš, mažeme...
Realizací příkazu ERASE, DEL či "odstranit", "smazat" z menu různých manažerů nebo Windows neodstraníme z disku data fyzicky. Po obdržení příkazu na zrušení určitého souboru se přepíše první znak jména souboru na E5hex a vynulují se hodnoty příslušných záznamů ve FAT. Jiný údaj se však už neodstraní, takže i když soubor přestal opticky existovat, jeho data odstraněna nebyla, a dokud tedy nejsou uvolněné clustery přepsány jinými daty, lze soubor obnovit. Jeho obnova spočívá v následujících krocích:
lzvolíme první počáteční písmeno z naší strany je to vše
loperační systém příkazem UNDELETE (nebo jinými komfortnějšími programy) za nás obnoví jméno (z E5hex na zvolené písmeno), a na základě informací délka souboru a číslo prvního clusteru v ROOT obnoví FAT záznam souboru.
FORMAT to je jistota
Anebo že by ne...?
"Prostě to zformátujte, a hotovo. Pro jistotu 2x.", říká odpovědný pracovník. Jenže chyba lávky! Hard disk u zapůjčených počítačů však většinou z důvodu daných smlouvou zformátovat nelze vždyť jsme jej dostali i se základním softwarovým vybavením, a to by jaksi scházelo. Navíc, kdo by instaloval chybějící systém. A i kdybychom mohli, pak vězte, že 100násobné běžné formátování by bylo účinné stejně jako jediné, a případný zloděj by si přišel na své. Nevěříte? Realizací dosovského příkazu FORMAT (do verze 6.22) opět neodstraníme z disku data fyzicky. Při formátování vytváří operační systém skrytý soubor IMAGE.DAT, pomocí nějž lze vše opět uvést do původního stavu! Příkaz FORMAT sice reinicializuje systémovou oblast disku, tj. přepíše boot sektor a odstraní všechny informace v Rootu i vynuluje všechny FAT-záznamy, datovou oblast však ponechává v původním stavu. Již prostý příkaz UNFORMAT pomůže, natož pak speciální programy.
Jak tedy na to
aneb s jednoduchostí nejdál dojdeš. Jistě, zkušení systémáci sáhnou po speciálních programech, jako např. po WipeInfo z kolekce Norton Utility. Tímto programem lze data z disku odstranit tak, že je již nikdy později nebude možné ani obnovit, ani rekonstruovat. Je však třeba uvážit nutné časové nároky. V USA existuje norma (DOD 5220.22M), která upravuje postup "Wipe" asi takto:
1. Přepsat celou definovanou oblast hodnotou "1" a ihned ještě hodnotou "0".
Tento krok opakovat alespoň třikrát.
2. Přepsat celou definovanou oblast ještě jednou, tentokrát náhodně vybranou hodnotou z intervalu 0 až 255.
3. Verifikovat poslední zápis. Jestliže se při verifikaci vyskytne chyba, považovat provedené odstranění za nedostatečné a znovu je celé opakovat.
Tímto jsem chtěl jen ukázat, jak je důležitost této oblasti vnímána. Co však můžeme udělat my, prostí uživatelé bez speciálních programů? Jestliže jste pozorně četli předcházející řádky, pak vám neušlo, že slovo přepsání zde má tu klíčovou roli. Problém rozdělme na dva dílčí: definitivní odstranění dat na disketě a na pevném disku.
a) jak na disketu
Zde správně předpokládejme, že jsme je již prázdné měli k dispozici a také je prázdné budeme vracet. Postup je pak zcela prostý:
1. Proveďme rychlý formát, nejlépe v prostředí MS-DOSu. Tedy příkaz: format a: /q /u poslední parametr zajistí, že se žádný soubor Image.dat nebo jemu podobný nebude vytvářet. Tímto jsou smazány všechny údaje ze systémové oblasti.
2. Nyní jen v prostředí MS-DOSu zkopírujeme libovolný soubor větší, než je velikost standardní diskety, tedy soubor 1,45 MB a větší na disketu příkazem: copy soubor a: /V. Parametr zajistí, že systém navíc bude ověřovat správnost zápisu. Tímto příkazem jsou přepsány všechny původní údaje v datové oblasti, a pokud by se snažil někdo něco odhalit, získá jen obsah námi zkopírovaného neškodného souboru.
Zdá se být divné, že kopírujeme větší soubor než samotný obsah diskety? V tom se totiž skrývá ten trik. Využili jsme jeden z nedostatků MS-DOSu, tj. že systém předem nekontroluje, zda kopírovaný objekt se vejde na dané médium. Systém tak postupně zaplňuje datovou oblast, zápis ukončí chybovým hlášením, a tedy ani žádný soubor vlastně nevytvoří. Původní data jsou však spolehlivě ztracena, resp. přepsána. Pokud někdo nenajde dostatečně velký soubor nebo chce "poslat" zloději námi zvolenou zprávu, nechť provede s disketou totéž, co v závěru s pevným diskem.
b) jak na pevný disk
Jak jsme již řekli, formátovat nebudeme. Hledat větší soubor než kapacita disku na témže disku je vhodné jen pro Mistra Bohnic. Následný postup je tedy složitější, ale ne moc pracný a oproti proceduře Wipe i o mnoho rychlejší (s téměř stejným efektem).
1.Pomocí Průzkumníka ve Windows či z M602 apod. smažeme všechny naše používané programy, data, soubory atd., prostě všechny naše věci, které jsme po zapůjčení počítače nakopírovali či nainstalovali.
2. Provedeme kontrolu disku (příkaz scandisk c:), a poté jeho defragmentaci (příkaz defrag c:). Pokud máme více logických jednotek, tedy disk rozdělený na více oblastí, provedeme tuto činnost na každé z nich. Zde bych jen poznamenal, že již samotná defragmentace disku s obsahem datové oblasti notně zamává.
3. Na disku v hlavním adresáři vytvoříme libovolným editorem soubor o názvu třeba A a v něm napíšeme např. text: To koukáš, viď?.
4. Na disketě vytvoříme dávkový soubor se jménem např. ochrana.bat a v něm následující instrukce:
:start
copy c:A + c:A c:B /V nul
copy c:B + c:B c:A /V nul
goto start
Poté tento "program", tedy dávkový soubor spustíme. Co se bude dít? Nejdříve se vytvoří soubor B s dvounásobnou délkou než soubor A, tj. náš text bude obsahovat dvakrát. Poté se vytvoří nový soubor A (původní přepíše) opět s dvojnásobnou délkou než soubor B, resp. čtyřnásobnou než původní soubor A. Takto se bude neustále vytvářet a přepisovat vždy dvojnásobně větší soubor, dokud nenaskočí chybové hlášení systému, nejčastěji File not found. Předčasné ukončení našeho dávkového souboru provedeme současným stiskem kláves Ctrl + C. Tímto způsobem jsme hned několikrát přepsali za poměrně krátkou dobu (otázka několika minut) datovou oblast disku, a případný zloděj najde všude jen náš text. Někdy to má i tu pikantní příchuť, že soubory, které byly na začátku celého našeho postupu smazány, jdou i normálně obnovit, obsahují však pouze náš zvolený text a zloděje by to jen rozzuřilo. Na pevném disku většinou nezůstane žádný z vytvářených souborů, tj. A nebo B, pokud však ano, prostě ho smažme. Co obsahuje, již víme.
Závěr
Pokud jsem vás smrtelně vystrašil, omlouvám se, ale případný zloděj ví o vašem oddělení či odboru vše. Pokud jsem vás inspiroval od této doby k lepší činnosti, jsem rád, neboť to byl můj cíl. Bylo-li to pro vás příjemné zopakování, pak vězte, že "opakování je matka moudrosti". Pokud "ochranu" dat u vás provádíte lepším jednodušším způsobem, podělte se o něj s námi.8 0062/DĚD o
Velikost clusteru ve FAT16
Velikost HD (MB)Velikost clusteru (KB)
Ę do 1604
Ę do 5128
do 1 02416
do 2 048 32 atd
|