Jak skutečně odstranit data

1. 1. 1999

Sdílet

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č...





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.



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í tabulkou 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 samozřejmě 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řípona (3), atributy

(1), rezerva 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:

˙Nulu systém dekóduje jako informaci, že dosáhl konce aktivních

adresářových záznamů.

˙Tečka je interpretována jako záznam rezervovaný pro systém a

umožňující mu navigaci další adresářovou strukturou.

˙Malé ř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ší „porci“ 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ě bojujíce 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–2879 datová 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 byte, 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… (***velký nadpis)



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:

˙zvolíme první počáteční písmeno – z naší strany je to vše

˙operač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 2×.“, ří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í

řá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ší pak 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ž 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:

@echo off

: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 tom nejen se

mnou.







nadpis: „Velikost clusteru ve FAT16“



Velikost HD Velikost clusteru

(MB) (KB)

do 160 4

do 512 8

do 1 024 16

do 2048 32 atd…