Jak bezpiecznie usunąć dysk SSD?

36

Jestem całkiem nowy w technologii SSD, więc nie wiem, jak wypada w porównaniu z dyskami twardymi, jeśli chodzi o bezpieczne kasowanie dysku. Czy wystarczy uruchomić Narzędzie dyskowe i skasować dysk z opcją „zastępuj zerami”, czy jest to przeznaczone dla dysków twardych? Czy należy podjąć inne działania?

Nie szukam jednak zabezpieczeń klasy NSA, tylko rodzaj czyszczenia, który można zrobić, jeśli zwrócisz lub sprzedasz komputer Mac.

Rinzwind
źródło
Czy chcesz usunąć dane, czy też musisz przekonać inne osoby, że dane zostały usunięte? Jeśli chcesz się tylko przekonać, że dane zniknęły, powinieneś spróbować polecenia ATA Bezpieczne usuwanie. Jeśli musisz przekonać inne osoby, może być konieczne skorzystanie z usługi niszczenia dysków.
DanBeale,
W IT Security: Czy wystarczy wyczyścić dysk flash tylko raz? (26 lipca 11)
Graham Perrin

Odpowiedzi:

45

To zależy od twojego poziomu paranoi. Ze względu na sposób, w jaki dyski SSD radzą sobie z zapisywaniem danych, zerowanie na dysku SSD nie jest tak dobre, jak na dysku twardym.

Kiedy zapisujesz określoną stronę danych na HD, nowe dane są po prostu zapisywane na starych danych, zastępując je. Zapis zer na całym dysku, a wszystkie stare dane znikną. Z drugiej strony dyski SSD nie mogą po prostu nadpisywać poszczególnych stron. Aby zastąpić dane na stronie, stare dane muszą zostać najpierw usunięte, a dyski SSD nie mogą usunąć pojedynczych stron; muszą usunąć całe bloki składające się z wielu stron.

Więc co się dzieje, gdy poprosisz dysk SSD o zastąpienie, powiedzmy, na stronie 5, to to, że SSD pozostawia dane na stronie 5 w spokoju, ale oznacza je jako nieprawidłowe, przydziela kolejną obecnie pustą stronę (powiedzmy, # 2305), pisze nowe dane na stronie # 2305 i odnotowuje, że następnym razem, gdy system operacyjny poprosi o stronę # 5, zamiast tego powinien otrzymać # 2305. Oryginalne dane strony nr 5 pozostają tam do pewnego czasu, kiedy napęd potrzebuje więcej miejsca, odsuwa wszystkie pozostałe ważne strony od bloku i usuwa je. Dyski SSD mają większą pojemność pamięci fizycznej niż są udostępniane komputerowi, więc mogą żonglować takimi blokami przez pewien czas, zanim faktycznie coś wymażą (a kiedy faktycznie coś wymażą, nie ma dobrego sposobu, aby przewidzieć, które bloki danych pozostaną zostać wybranym do usunięcia). Zobacz tę recenzję AnandTech o wiele więcej szczegółów (ostrzeżenie: jest dość długi, a odpowiednie rzeczy są rozrzucone).

Wynik netto: jeśli zapisujesz zera na „całym” dysku, tak naprawdę nie zastąpiłeś wszystkich starych danych. Jesteś już aktualizowany tablicę translacji sterownika więc nigdy nie zwraca żadnych starych danych do systemu operacyjnego (strony te są nieważne). Ale jeśli ktoś jest wystarczająco hardkorowy, aby ominąć kontrolera, może odzyskać część twoich danych.

Dwukrotne nadpisanie prawdopodobnie będzie działać, ale zależy to od strategii alokacji kontrolera. Dwukrotne zastąpienie przypadkowymi danymi ( diskutil randomDisk 2 /dev/diskN) jest nieco bardziej prawdopodobne, ale nadal nie jest gwarantowane. Oba z nich mają również złe skutki uboczne: wykorzystują część życia dysku, a także zwiększają logiczną fragmentację dysku SSD, zmniejszając jego wydajność zapisu.

Zauważ, że najnowsze wersje graficznego Narzędzia dyskowego OS X wyłączają opcje bezpiecznego wymazywania na dyskach SSD (z powodów omówionych powyżej), ale wersja z wiersza poleceń wciąż na to pozwala. BTW, widziałem również kilka zaleceń, aby bezpiecznie wymazywać dyski SSD, konwertując je na format zaszyfrowany, ale jest to (jeśli w ogóle) nieco mniej bezpieczne niż nadpisywanie losowymi danymi.

Najlepszym sposobem na bezpieczne wymazanie dysku SSD jest wywołanie wbudowanej funkcji bezpiecznego wymazywania kontrolera. To powinno (jeśli projektanci kontrolera wykonali swoje zadania) naprawdę usunąć wszystkie bloki, a także mieć efekt uboczny resetowania logicznej mapy strony, w zasadzie defragmentacji i przywrócenia pierwotnej wydajności. Niestety większość narzędzi, które widziałem do tego celu (np . HDDErase CMRR ), działa pod DOSem, który nie uruchamia się na komputerze Mac. Znalazłem post na Macrumors z (raczej złożonymi) instrukcjami dotyczącymi bezpiecznego usuwania z rozruchowej płyty CD z GPart . Możliwe jest również użycie Parted Magic z rozruchowego dysku flash , ale nie próbowałem tego.

Badacze z Non-Volatile Systems Lab na UCSD przetestowali różne sposoby odkażania dysków SSD poprzez „wymazanie” dysku, a następnie rozmontowanie go w celu ominięcia kontrolera i sprawdzenie resztkowych danych ( streszczenie , pełny papier ). Ich wyniki w większości zgadzają się z tym, co powiedziałem powyżej (a także pokazują, że wbudowane polecenie bezpiecznego wymazywania nie zawsze jest odpowiednio implementowane):

Nasze wyniki prowadzą do trzech wniosków: Po pierwsze, wbudowane polecenia są skuteczne, ale producenci czasami wdrażają je nieprawidłowo. Po drugie, dwukrotne zastąpienie całej widocznej przestrzeni adresowej dysku SSD jest zwykle, ale nie zawsze, wystarczające do dezynfekcji dysku. Po trzecie, żadna z istniejących technik dezynfekcji pojedynczych plików na dyskach twardych nie działa na dyskach SSD.

Gordon Davisson
źródło
1
Dzięki za obszerną odpowiedź. Nie jest dla mnie problemem uruchomienie polecenia Terminal, jak sugerujesz. Ale na przyszłość: co mogą zrobić zwykli użytkownicy, którzy nie czują się tak dobrze z terminalem? Po prostu użyć opcji 7-przebiegowej Narzędzia dyskowego?
Rinzwind
4
Nie wiem, czy naprawdę mogę w tej chwili „polecić” którąś z opcji - wszystkie są do kitu. Każda z opcji nadpisywania zużyje limit czasu zapisu na dysku i będzie miała tendencję do zwiększania fragmentacji i obniżania wydajności. Najlepiej byłoby, gdyby Apple dodało opcję bezpiecznego usuwania ATA (tj. Opcję opartą na kontrolerze) jako opcję w Narzędziu dyskowym, ale kto wie, kiedy / jeśli tak się stanie.
Gordon Davisson
2
@Gordon - To była świetna i pouczająca odpowiedź! +1
Dolan Antenucci
Cześć @ GordonDavisson. Ciekawe, czy coś się zmieniło od czasu napisania tej odpowiedzi (od tego czasu wprowadzono kilka aktualizacji systemu operacyjnego).
samthebrand
@SamtheBrand: Niewiele się zmieniło. Dodałem notatkę, że Narzędzie dyskowe (wersja GUI) obecnie nie zezwala na bezpieczne wymazywanie na dyskach SSD (ponieważ tak naprawdę nie działa), naprawiłem link do HDDErase i dodałem notatkę, że Parted Magic może działać (chociaż nie próbowałem ).
Gordon Davisson
8

Otwórz terminal i wpisz następujące polecenie:

df -k

Zwróć uwagę na pierwszą kolumnę odpowiadającą partycji dysku SSD, którą chcesz nieodwracalnie usunąć. Powiedzmy, że tak /dev/disk1s2.

Wpisz następujące polecenie:

dd if=/dev/zero of=/dev/rdisk1s2 bs=100k

gdzie /dev/rdisk1s2jest surowe urządzenie powiązane z twoją partycją na SSD. To polecenie całkowicie zapisze tę partycję z 1. bloku dostępnego do ostatniego. To polecenie potrwa długo (~ 1/2 h na 100 Gb) bez ładnego paska postępu przewijania.

Gdy polecenie to zwróci monit powłoki, dysk został całkowicie i nieodwracalnie usunięty. Uruchom Disk Utilityi sprawdź tę partycję. Poinformuje cię, że jest uszkodzony, bez żadnej formy naprawy. I to prawda.

Po prostu sformatuj tę partycję, jak chcesz.

Oto, co dzieje się na poziomie fizycznych bloków:film z DD i DU usuwający dysk SSD

dan
źródło
1
Jest to odpowiednik opcji nadpisywania zerami przez Narzędzie dyskowe i nie będzie w pełni bezpieczny na dyskach SSD z tego samego powodu. Zobacz moją odpowiedź, aby uzyskać szczegółowe wyjaśnienie.
Gordon Davisson,
→ Gordon: Przeczytałem twoją odpowiedź i myślę, że ją zrozumiałem i głosowałem za jej jakością. Moja odpowiedź polega na użyciu surowego urządzenia dyskowego, a nie blokowego (jako Narzędzia dyskowego). Należy to zweryfikować na SSD (z zaufanymi narzędziami), ale o ile wiem na starym standardowym HD przy użyciu pamięci podręcznej, interfejs dysku surowego był łatwym sposobem na uniknięcie tej pamięci podręcznej. Urządzenie SSD jest po prostu dyskiem HD, na którym pamięć podręczna ma pełną pojemność, a dysk fizyczny jest usuwany.
dan
Korzystanie z surowego urządzenia (/ dev / rdisk *) omija pamięć podręczną systemu operacyjnego, ale nie omija warstwy translacji flash (która jest źródłem opisanego przeze mnie problemu). W rzeczywistości nie ma sposobu na ominięcie go od systemu operacyjnego - kontroler urządzenia po prostu nigdy nie wystawia prawdziwego surowego magazynu flash na magistralę (SATA lub cokolwiek innego), a ponieważ system operacyjny może oddziaływać tylko z napędem przez magistralę, nie ma sposób, aby uzyskać wystarczający dostęp do bezpiecznego zastąpienia.
Gordon Davisson
Pierwsze ddprzejście ma na celu nie tylko ominięcie poziomu pamięci podręcznej (nie mamy sposobu, aby poznać ich pojemność), ale także częściowe wyczerpanie (jest to stan z rysunku 3). Drugie przejście naprawdę będzie musiało znaleźć nowe bloki i bezpiecznie je usunąć.
dan
To wciąż za mało, z dwóch powodów: po pierwsze, gdy Narzędzie dyskowe formatuje dysk, zastępuje go tylko trochę (tablica partycji, nagłówki woluminów itp.) I nie ma gwarancji wystarczającej do wyczerpania dodatkowej pojemności. Po drugie, nie ma żadnej gwarancji, że dodatkowy zapis DU będzie uderzał w inne fizyczne bloki niż to, co wcześniej usunięto - w zależności od strategii alokacji kontrolera, możliwe jest, że po prostu kasujesz te same fizyczne bloki w kółko. Dlatego powiedziałem, że nawet dwukrotne nadpisanie całej przestrzeni może nie wystarczyć.
Gordon Davisson,
7

Przycisk „Opcje bezpieczeństwa ...” w Narzędziu dyskowym jest obecnie wyszarzony dla dysków SSD. Zgodnie z http://support.apple.com/kb/HT3680 wymazanie dysku SSD może być wystarczająco bezpieczne:

Uwaga: W systemie OS X Lion i napędzie SSD Bezpieczne usuwanie i usuwanie wolnego miejsca nie są dostępne w Narzędziu dyskowym. Te opcje nie są potrzebne w przypadku dysku SSD, ponieważ standardowe kasowanie utrudnia odzyskanie danych z dysku SSD. Aby zwiększyć bezpieczeństwo, rozważ włączenie szyfrowania FileVault 2, gdy zaczniesz używać dysku SSD.

Nadal można uruchomić coś takiego jak diskutil secureErase freespace 4 disk0s2z terminala na partycji odzyskiwania.

Po prostu włączenie FileVault 2 przed skasowaniem dysku jest prawdopodobnie lepszą opcją. Zgodnie z tą odpowiedzią , wykonanie zdalnego czyszczenia usuwa również klucz szyfrowania, jeśli włączona jest FileVault 2:

Tak, zdalne czyszczenie komputera powoduje bezpieczne czyszczenie. Apple ostrzega cię nawet, że może to potrwać nawet jeden dzień. Jeśli jednak dysk został zaszyfrowany za pomocą FileVault 2, wymazanie dysku nie jest konieczne. Wystarczy bezpiecznie skasować klucze szyfrujące zapisane na dysku, więc to właśnie robią. Jest bardzo szybki i tak bezpieczny, jak podstawowy system szyfrowania, który na razie jest bardzo bezpieczny.

http://training.apple.com/pdf/wp_osx_security.pdf :

FileVault 2 zapewnia działom IT możliwość usunięcia klucza szyfrowania z danego komputera Mac w dowolnym momencie, aby uniemożliwić dostęp do zaszyfrowanych danych za pomocą logowania użytkownika lub narzędzi do odzyskiwania danych. Ten proces jest nazywany czyszczeniem zdalnym.

Lri
źródło
5
Włączenie szyfrowania (tj. FileVault) przed przechowywaniem poufnych danych jest doskonałą opcją, ale przychodzi mi do głowy, że proces użyty do „skasowania” klucza szyfrowania może nie być w pełni bezpieczny z tego samego powodu, dla którego standardowe bezpieczne usuwanie nie jest - - stary klucz szyfrujący nadal będzie przechowywany we flashu, tylko na stronie, która jest zmapowana. Więc ktoś, kto może ominąć kontroler, wciąż może dostać się do „skasowanego” klucza ...
Gordon Davisson
@ GordonDavisson, ale jeśli ponownie włączysz szyfrowanie podczas formatowania dysku, stary klucz szyfrowania powinien zostać nadpisany, dlatego stare dane są bezpiecznie niedostępne?
supersize
@ supersize Stary klucz szyfrowania może zostać nadpisany, ale zależy to dokładnie od tego, które fizyczne strony zostaną usunięte podczas formatowania, a to zależy od oprogramowania układowego napędu, a nie od systemu operacyjnego.
Gordon Davisson