[Bezpieczeństwo] Usuwanie poufnych danych
Witam.
Znów coś o bezpieczeństwu, tym razem o usuwaniu danych z dysku twardego. No więc czasami trzymamy jakieś poufne dane na dyskach twardych których chcemy się pozbyć. Zwykłe skasowanie pliku jednak może nie dać pożądanego rezultatu.
Źródło obrazka: http://www.youtube.com/watch?v=FVbf9tOGwno[font]
Gdy usuwamy normalnie dane nie zostają one zniszczone, usunięty zostaje jedynie ich indeks wskazujący. To jest jak dopiero oznaczanie pliku "do usunięcia", plik ten zostanie usunięty dopiero w przyszłości przez nadpisanie go innymi danymi.
Na systemach plików wypełnionych danymi istnieje wysokie prawdopodobieństwo, że plik zostanie w krótkim czasie zamazany przez nadpisanie jego obszaru innym plikiem, lecz co do tego także nie ma pewności.
I oto tutaj pojawia się shred
Shred z angielskiego oznacza "niszczarka" i jest to trafne określenie dla tego programu.
Jego działanie opiera się o stopniowym zamazywaniu danych poprzez wielokrotne zamazywanie obszaru starego pliku. Najpierw nadpisuje go losowymi ciągami znaków a następnie samymi zerami.
Przykład nadpisywanie 20 razy i usuwania pliku:
shred -v -f -u -z -n 20
Przykładowy wynik działania programu:
shred: ./przykladowy-plik: przebieg 1/21 (random)... shred: ./przykladowy-plik: przebieg 2/21 (2aaaaa)... shred: ./przykladowy-plik: przebieg 3/21 (aaaaaa)... shred: ./przykladowy-plik: przebieg 4/21 (b6db6d)... shred: ./przykladowy-plik: przebieg 5/21 (333333)... shred: ./przykladowy-plik: przebieg 6/21 (5ddddd)... shred: ./przykladowy-plik: przebieg 7/21 (6db6db)... shred: ./przykladowy-plik: przebieg 8/21 (924924)... shred: ./przykladowy-plik: przebieg 9/21 (555555)... shred: ./przykladowy-plik: przebieg 10/21 (db6db6)... shred: ./przykladowy-plik: przebieg 11/21 (random)... shred: ./przykladowy-plik: przebieg 12/21 (777777)... shred: ./przykladowy-plik: przebieg 13/21 (249249)... shred: ./przykladowy-plik: przebieg 14/21 (ffffff)... shred: ./przykladowy-plik: przebieg 15/21 (cccccc)... shred: ./przykladowy-plik: przebieg 16/21 (000000)... shred: ./przykladowy-plik: przebieg 17/21 (492492)... shred: ./przykladowy-plik: przebieg 18/21 (444444)... shred: ./przykladowy-plik: przebieg 19/21 (bbbbbb)... shred: ./przykladowy-plik: przebieg 20/21 (random)... shred: ./przykladowy-plik: przebieg 21/21 (000000)... shred: ./przykladowy-plik: usuwanie shred: ./przykladowy-plik: przemianowany na ./0000000000000000000000000000
Wipe - kolejne narzędzie do kasacji danych
Oprócz shreda istnieje także jeszcze kilka dobrych narzędzi do kasowania danych, jednym z nich jest Wipe który według mnie jest nieco łatwiejszy i przyjaźniejszy w obsłudze.
WIPE bez problemu obsługuje rekursywne usuwanie plików i katalogów, interaktywnie zadaje pytania jeśli nie zastosowany został przełącznik -f a także potrafi pokazać procentowy postęp przy większych plikach (przełącznik -V).
Przykładowe użycie do usunięcia całego katalogu z danymi:
wipe -i -r -V -p 20 KATALOG/ -l 2
Przykładowy wynik programu:
moja_dziewczyna_na_golasa.tar.xz: 100% zdjecia_z_wakacji.tar.bz2: 100% scisle_tajne_dokumenty_rzadowe.tar.gz: 100% powazne_dowody_na_wine_USA_w_sprawie_WTC.tar.gz: 100% prawdziwy_akt_urodzenia_barracka_obamy.pdf: 100% afera_pedofilia_wsrod_ksiezy_dowody.tar.xz: 20%
Srm - bezpieczna implementacja rm
Srm posiada zbliżone opcje sterowania do rm ze standardowego pakietu narzędzi jednak różni się tym od rm, że potrafi bezpiecznie usunąć dane przed wypisaniem ich z indeksu :‑)
Usage: srm [OPTION]... [FILE]... Overwrite and remove (unlink) the files. -d, --directory ignored (for compatability with rm(1)) -f, --force ignore nonexistant files, never prompt -i, --interactive prompt before any removal -s, --simple overwrite with single pass using 0x00 -P, --openbsd overwrite with three passes like OpenBSD rm -D, --dod overwrite with 7 US DoD compliant passes -E, --doe overwrite with 3 US DoE compliant passes -r, -R, --recursive remove the contents of directories -v, --verbose explain what is being done -h, --help display this help and exit -V, --version display version information and exit
Przykładowe użycie do usunięcia katalogu:
srm -r -f -D -v /tmp/wazne-pliki-do-usuniecia
Ciekawostka: Z tego co podpowiada opcja -‑openbsd można się dowiedzieć, że OpenBSD domyślnie potrafi bezpiecznie usuwać pliki z dysku twardego wcześniej je zamazując.