Co by się stało, jeśli użyję
sudo dd if=/dev/zero of=/dev/sda
z instalacji Ubuntu uruchomionej z /dev/sda
?
Próbowałem go na maszynie wirtualnej i wygląda na to, że poprawnie wyczyściłem dysk. Czy tak będzie za każdym razem? Czy to bezpieczny sposób na „wyczyszczenie” instalacji Ubuntu i wszystkich danych?
Moje pytanie jest nieco inspirowane:
partitioning
uninstall
dd
secure-erase
JonasCz - Przywróć Monikę
źródło
źródło
Odpowiedzi:
W rzeczywistości system plików jest nadal zamontowany, a niektóre zapisy są buforowane, co oznacza, że wciąż znajdują się w pamięci RAM i czekają na zapis na dysk. Powiedzmy, że
dd
poprawnie nadpisuje wszystko, a tuż za nim bufory są opróżniane, a niektóre potencjalnie wrażliwe dane są zapisywane z powrotem na dysk. Więc nie, to nie jest bezpieczny sposób czyszczenia dysku.Możesz uniknąć tego problemu, najpierw ponownie instalując w trybie tylko do odczytu główny system plików i wszelkie inne systemy plików znajdujące się na dysku (lub całkowicie odmontowując je, ale nie będzie to możliwe w przypadku głównego systemu plików), a następnie nie więcej zapisów powinno być w ogóle dozwolone w systemach plików (więc nie ma buforów do opróżnienia), więc twoje polecenie powinno być teraz bezpieczne, nawet jeśli nadal jest to zły pomysł w przypadku paniki, ponieważ zajmuje to dużo czasu.
Jeśli chcesz mieć jakąś funkcję usuwania paniki, sugeruję zaszyfrowanie dysku za pomocą LUKS (instalator Ubuntu może to zrobić), a następnie podążając za moją odpowiedzią na Security Stack Exchange . Wymaga to wyczyszczenia cryptheadera, który ma tylko 2 MB i którego zastąpienie zajmuje mniej niż sekundę. Następnie uruchom ponownie system, a klucze szyfrowania dysku znikną z pamięci, bez możliwości ich przywrócenia, ponieważ zniknął również sam moduł szyfrowania.
źródło
Poświęciłem maszynę wirtualną, używając nieco bardziej zaawansowanego użycia
dd
pożyczonych i nieco zmodyfikowanych ze stron Arch Wiki .Najpierw zainstaluj fajny miernik postępu:
A następnie uruchom „wzmocnionej”
dd
poleceniaSpowoduje to, że dysk będzie wypełniony tekstem szyfrowanym AES. Kompletne i bezpieczne czyszczenie dysku? Prawdopodobnie lepszy niż twój
dd
przykład, ale nic nie jest całkowicie bezpieczne ani gwarantowane ...I jesteś mi winien jedną maszynę wirtualną :)
Bibliografia:
źródło
dd
ipv
proszę?pv
(przeglądarkadd if=/dev/zero | pv | dd of=/dev/sdX
Krótka odpowiedź: zrobi mniej więcej tyle, ile chcesz, a potem nic nie zadziała. Używanie
dd
działa na poziomie poniżej systemu plików, co oznacza, że wszelkie obowiązujące ograniczenia nie są już istotne (nie oznacza to, że jądro nie mogło temu zapobiec - ale tak nie jest). Niektóre treści z systemu plików są już w pamięci, na przykład jądro idd
sam program, a niektóre będą w pamięci podręcznej. Istnieje możliwość, że jeśli system działa w trybie wielu użytkowników, niektóre pliki mogą zostać zapisane w trakcie trwaniadd
, przy założeniu, że faktycznie się zmieniły, a jeśli jesteś pod presją pamięci, niektóre strony mogą również zostać zamienione (powinny być zaszyfrowane i dlatego nie można ich używać po ponownym uruchomieniu).Większość poleceń, które wydasz po tym - w tym
reboot
- nie będzie w pamięci podręcznej, a więc nie będzie działać. Więc jeśli jesteś w trybie pojedynczego użytkownika, zrobi to wyjątkowo dobrze, jeśli jesteś w trybie wielu użytkowników, wyczyści on ogromną większość danych. Idealnie powinieneś to zrobić z jakiegoś innego nośnika (być może nawet zatrzymując się na initrd), aby mieć pewność, skąd pochodzą wszystkie zapisy.Jeśli chcesz mieć bezpieczne czyszczenie, nie wykona tego zadania, ponieważ pozostaną pewne ślady oryginalnych danych, jeśli tylko je wyzerujesz. Zazwyczaj potrzebujesz do trzech losowych zapisów, co oznaczałoby kopiowanie
/dev/urandom
zamiast/dev/zero
- znacznie wolniej, ale bezpieczniej. Niektórzy mogą sugerować, że używasz urządzenia,/dev/random
które służy do „czystych” losowych danych - bez pseudolosowych - ale w tym celu szansa na to, że ktoś zdoła złamać ziarno PRNG i skutecznie zamaskować dane, jest w zasadzie nieistotna.Jeśli jesteś naprawdę paranoikiem, musisz wrzucić urządzenie magazynujące do pieca, aby się rozmagnesował / wyładował.
źródło
Podobnie jak na maszynie wirtualnej wyczyści dysk i sprawi, że system będzie bezużyteczny.
Jednak jeśli masz na myśli coś w rodzaju „usuwania paniki”,
dd
może to nie być wystarczająco szybkie i nie jestem pewien, czy w tym przypadku są dostępne szybsze polecenia lub programy.źródło
Powinien działać, uruchomiony proces odbywa się w pamięci RAM i nie wymaga dysku. I tak użyłbym systemu działającego na żywo z płyty CD lub USB. Istnieje nawet dban, wyspecjalizowany linux na żywo do czyszczenia dysków.
Zastąpienie dysku zerami jest zapisywane, ale jeśli jesteś wystarczająco paranoikiem lub masz przepisy prawne, możesz wielokrotnie zastąpić losowymi danymi.
Zachowaj ostrożność podczas korzystania z nadpisywania ssd nie gwarantuje usunięcia wszystkich danych z powodu wyrównywania zużycia.
Jeśli używasz pełnego szyfrowania dysku (Luks), nie musisz usuwać całego dysku, wystarczy usunąć nagłówek Luks.
źródło