Tym razem daleko do tematyki przewodniej bloga – czyli wirusów, trojanów, rootkitów i walki z nimi. Pozostajemy jednak w sferze bezpieczeństwa, lecz tym razem naszych danych.
Zarówno giganci rynku, jak i małe firmy wiedzą jak bardzo istotna jest poufność informacji. Jednak zdecydowana większość użytkowników domowych wciąż nie zdaje sobie z tego sprawy.
Przedstawię więc hipotetyczną sytuację.
Przedsiębiorstwo X zamierza wymienić komputery firmowe, a wraz z nimi dyski twarde. Wiadomo, że sprzedanie obecnie używanych maszyn pozwala odzyskać część pieniędzy przeznaczonych na modernizację. Jak oddać komputer w ręce osoby postronnej, aby być pewnym, że zawartość dysku twardego przepadła bezpowrotnie i próby odzyskania czegokolwiek spełzną na niczym?
Jeśli zapytacie o tę kwestię wszechwiedzące Google, zostaniecie uraczeni gamą aplikacji, która przeprowadza wspaniałe kasowanie danych, oraz poradami na portalach branżowych czy forach, które upierają się, że dane należy nadpisać wielokrotnie losowymi znakami (od 2-3 cykli aż po kilkanaście – dla większej pewności). Nie twierdzę, że te metody nie są skuteczne, jednak po co komplikować sobie życie?
Zerowanie.
Powyższe słowo to klucz do skutecznego unicestwienia zawartości dysku twardego komputera w sposób całkowicie nieodzyskiwalny.
Jak to działa?
Zacznijmy od tego, jak odbywa się zapis na dysku twardym – tu odsyłam do lektury Wiki o CHS oraz LBA.
W skrócie (i wielkim uproszczeniu) powiem tylko, że dysk podzielony jest na sektory zawierające dane np. w sektorach 15000-16000 zapisane są kolejne bajty tworzące pewien plik. Jeśli więc przeprowadzimy zerowanie dysku twardego, w podanych wcześniej sektorach zostaną zapisane same zera. Rezultat wygląda tak:
Jeśli więc dysk zawiera jedynie zera, to jak programy odzyskujące dane mają odtworzyć poprzednią zawartość sektorów?
Zastanówmy się więc, jak działają takie programy, nawet te komercyjne. Odczytują zawartość logicznych sektorów próbując odbudować strukturę plików (metaforycznie!), jednak co będą w stanie odbudować z zer? Odpowiedź już pewnie znacie – NIC.
Idąc dalej tropem odzyskiwania danych, na myśl przychodzą firmy sektora DataRecovery. Firm takich jest w Polsce dostatek, więc zastanówmy się jak mogłyby one przeprowadzić teoretyczny odzysk danych z nośnika.
Pierwszy etap to wykonanie kopii posektorowej nośnika i praca tylko i wyłącznie z plikiem kopii – nigdy z fizycznym nośnikiem klienta. Kopia posektorowa wyzerowanych sektorów będzie się oczywiście składała z samych zer, więc jakiekolwiek próby odzyskania danych dadzą zawsze ten sam rezultat – odzyskamy zera, czyli wciąż nie mamy nic.
Jeśli ta metoda odpada, to sięgamy fizycznie do nośnika i próbujemy sprzętowych prób odczytu wcześniejszych danych. Przypominam, że wciąż rozprawiamy o jednym przebiegu zerowania.
Sięgnijmy w tym momencie po garść informacji.
Zapis na dysku twardym jest zapisem magnetycznym, a więc polega na odpowiednim namagnesowaniu talerza dysku przez głowicę zapisującą. Podstawową i najczęściej głoszoną teorią na szansę odzysku danych po ich nadpisaniu zerami jest tzw. cień pola magnetycznego. Teoria ta jest oczywiście prawdziwa, jednak jej zastosowanie nie ma racji bytu w przypadku dysku twardego.
Nośniki taśmowe i dyskietki wykorzystują analogowy zapis magnetyczny, przy którym umieszczenie głowicy w dokładnie tym samym sektorze może być nie do końca precyzyjne. Zapis się oczywiście powiedzie i w sektorze pojawi się zero, jednak nieznaczne odchylenie głowicy zapisującej od sektora spowoduje, że część danych może nie zostać nadpisana.
Spróbujmy wyjaśnić to obrazowo. Załóżmy, że sektor ma określony rozmiar, a centralnie zapisana jest w nim litera „F”. Jeśli głowica trafia ponownie w ten sektor i nie ułoży się idealnie na środku wpisując „O”, to część symbolu „F” pozostanie w widmie magnetycznym i będzie odczytywalna – to właśnie jest cień zapisu magnetycznego. To jednak tylko skrajnie uproszczenie tego procesu, przedstawione dla ogólnego zrozumienia jego zasad.
Powiedziałem wcześniej, że owszem, teoria ta jest prawdziwa – więc dlaczego nie można jej użyć do odzyskania danych z dysku twardego? Widmo występowało tylko w przypadku nośników o zapisie analogowym, takich jak wspomniane wcześniej napędy taśmowe, dyskietki oraz bardzo stare dyski twarde wykorzystujące do pozycjonowania głowic silnik krokowy.
Współczesne dyski pozycjonują głowicę z użyciem serwomechanizmu, który ustawia się zawsze w tej samej pozycji, a więc nadpisana informacja jest w całości pokrywana nową. Zastosowanie precyzyjnych głowic do odzyskania zawartości cienia magnetycznego spełznie na niczym – zjawisko to po prostu już nie występuje.
Nie wątpię, że wiele osób nie zechce uwierzyć w bezpowrotne kasowanie danych jednym przebiegiem zerowania.
Przytoczę więc historię z ubiegłego roku – jeśli mnie pamięć nie myli – gdzie na pewnej amerykańskiej stronie internetowej został ogłoszony konkurs. Do wygrania oferowana była okrągła kwota amerykańskich dolarów, a zadanie polegało na odczytaniu zawartości pliku JPG, który został jednokrotnie nadpisany zerami. Dostępna była kopia posektorowa dokładnie tych sektorów dysku, w których znajdował się plik graficzny, ale już po jednym przebiegu zerowania.
Konkursu nikt się nie podjął. Nawet największe na świecie firmy sektora DR przyznały, że nikt nie jest w stanie wygrać tych pieniędzy.
Jak zerować?
Skoro wiemy już, że opisana metoda gwarantuje bezpowrotne skasowanie danych z nośnika, to jak taki proces przeprowadzić?
Pierwsza metoda to darmowa aplikacja MHDD uruchamiana z bootowalnej płyty CD. Program oferuje komendę ERASE, która wykonuje całkowite zerowanie nośnika.
Druga wygodna metoda to Linux i polecenie dd.
składnia:
dd if=/dev/zero of=/dev/sdaPolecenie wymaga oczywiście uprawnień roota.
dd to polecenie,
if= źródło /dev/zero to wykorzystanie zer, /dev/random znaki losowe, /home/krolik_doswiadczalny/readme.txt nadpisze cały dysk zawartością pliku readme.txt
of= to lokalizacja docelowa. /dev/sda nadpisze w całości urządzenie sda, /dev/sda5 nadpisze partycję 5 urządzenia sda.
Uczulam na przeprowadzanie eksperymentów z poleceniem dd – jak wiele poleceń konsoli Linuksa, tak i dd wykonuje się bez pytania czy na pewno, a więc jeśli wpiszemy je i wciśniemy enter, automatycznie rozpocznie się proces, który w przypadku pomyłki zakończy się bardzo niemiłym problemem.
Podsumujmy więc:
Nasza firma sprzedaje wspomniane na początku komputery. Zamiast tracić tydzień na wielokrotne nadpisywanie nośników losowymi danymi (choćby z 15-krotnym użyciem polecenia dd), może zdecydowanie szybciej będzie przygotować dyski wykonując tylko jeden przebieg zerowania? Osoba za to odpowiedzialna może spać spokojnie, a nowy nabywca nośników zarwie długie noce próbując wydobyć poprzednią zawartość dysków. Przed jego oczami wciąż będą tylko zera.
Podobał Ci się ten artykuł?
Zapisz się na listę i nie przegap nowych ciekawostek, porad i konkursów!
Metoda logiczna (programowa) ma zastosowanie jeśli chcemy usunąć dane z kilku dysków, gdyż sama procedura trochę trwa. Jeśli mamy do skasowania więcej nośników które niekoniecznie chcemy potem wykorzystać, najlepsze będzie użycie demagnetyzera . Usunięcie (bezpowrotne jeśli urządzenie posiada wystarczająco silne pole magnetyczne) trwa 30 sekund. Oczywiście jest to urządzenie drogie ale można je również wypożyczyć, bo są takie demagnetyzery z funkcja pre-paid.
Ja osobiście usuwałam kilka razy softwarem ale to były pojedyncze prywatne sztuki.
Metoda logiczna (programowa) ma zastosowanie jeśli chcemy usunąć dane z kilku dysków, gdyż sama procedura trochę trwa. Jeśli mamy do skasowania więcej nośników które niekoniecznie chcemy potem wykorzystać, najlepsze będzie użycie demagnetyzera . Usunięcie (bezpowrotne jeśli urządzenie posiada wystarczająco silne pole magnetyczne) trwa 30 sekund. Oczywiście jest to urządzenie drogie ale można je również wypożyczyć, bo są takie demagnetyzery z funkcja pre-paid. Ja osobiście usuwałam kilka razy softwarem ale to były pojedyncze prywatne sztuki.
[…] samym uniemożliwić ich przywrócenie. Właśnie w taki sposób działają programy służące do trwałego usuwania danych. Zerowanie dysku uniemożliwia późniejsze odzyskanie z niego […]