Als ich mein Handy kurzzeitig verloren hatte und mir Sorgen um die Daten darauf gemacht habe sind mir auch alle USB-Sticks in meiner Tasche eingefallen. Ich hatte zum Teil absolut keine Ahnung was sich darauf alles befindet. Boot-Medium, Sneakernet, Fotos, Dokumente zum ausdrucken, …
Die USB-Sticks und mein Handy habe ich durchgeschaut und bin teilweise etwas blass geworden was man darauf alles finden kann. Vieles davon habe ich direkt gelöscht und den Rest mit encfs verschlüsselt. Die freien Speicherbereiche habe ich danach mit dd if=/dev/urandom of=dummy.file überschrieben.
Unter Linux gibt es noch mehr Möglichkeit zum sicheren löschen, http://askubuntu.com/questions/17640/how-can-i-securely-erase-a-hard-drive. Für OSX kann man ähnliches ebenfalls mit Bordmitteln erreichen und sogar in der grafischen Oberfläche: http://cliftondildy.com/how-to-securely-erase-an-external-hard-drive-or-usb-stick-mountain-lion-os-x/. Nur unter Windows scheint das Ganze nicht so einfach zu sein. Es gibt unendlich viele windige Tools die man sich herunterladen und installieren kann, die dann irgendetwas tun, aber es gibt keinen schönen Knopf Sicher löschen.
Wenn man nur den freien Speicher überschreiben will oder keine Administratorrechte hat gibt es das Kommando cipher welches mit folgenden Parametern ein Verzeichnis anlegt und darin Dateien, die lediglich Nullen enthalten, füllt bis das Laufwerk voll ist. Im Beispiel Laufwerk F:
cipher /w:F:\
Auszuführen in der CMD-Box.
Ein kleines Skript von mir lässt sich als BAT-Datei speichern und dann einfach ausführen. Es fragt dann den Laufwerksbuchstaben beim Benutzer an.
@echo off
echo ACHTUNG: bitte keine Fehler machen
echo Alle Daten gehen UNWIEDERRUFLICH verloren
set /p dev="Laufwerksbuchstabe: " %=%
cipher /w:%dev%:\%
LoseAllDataSoft.bat
[EDIT]
Die Einträge in der File Allocation Table bleiben dabei unberührt. Man kann also trotzdem sehen wie die Dateien hießen die vorher dort waren. Deshalb überschreiben Programme wie Shred nicht nur den Speicherbereich der sicher zu löschenden Datei, sondern benennt diese auch mehrfach um.
[/EDIT]
Will man das komplette Gerät überschreiben, um zum Beispiel Schadsoftware im MBR zu erwischen oder einfach um auf Nummer sicher zu gehen, wirds unter Windows schon schwieriger. Ohne Administratorrechte geht da garnichts.
Eine gute Möglichkeit ist diskpart. Das Windowsinterne Partitionierungswerkzeug.
Mein Skript fordert zunächst Administratorrechte an, vielen Dank an eneerge dafür, und fragt dann ebenfalls nach dem Laufwerksbuchstaben des zu löschenden Gerätes. (Obacht, das ganze Gerät wird gelöscht, nicht nur die einzelne Partition.) Danach wird ein Skript abgelegt welches dann an diskpart übergeben wird. Diskpart löscht alle Partitionen, bereinigt das Gerät, legt eine neue Partition an die den gesamten Speicher einnimmt und formatiert diese (gründlich).
Trotz, dass die Formatierung im Hintergrund weiter geht sollte man die CMD-Boxen solange geöffnet lassen, bis der Vorgang abgeschlossen ist; und den USB-Stick natürlich unbedingt eingesteckt lassen. Er kann zwar nicht zerstört werden, aber schwieriger zugänglich werden
.
Beide Skripte benötigen je nach Kapazität und Schreibgeschwindigkeit häufig lange Zeit, sehr lange Zeit!!
@echo off
:: BatchGotAdmin
::
:: BY eneerge
:: https://sites.google.com/site/eneerge/scripts/batchgotadmin
::
:-------------------------------------
REM --> Check for permissions
>nul 2>&1 "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\system"
REM --> If error flag set, we do not have admin.
if '%errorlevel%' NEQ '0' (
echo Requesting administrative privileges...
goto UACPrompt
) else ( goto gotAdmin )
:UACPrompt
echo Set UAC = CreateObject^("Shell.Application"^) > "%temp%\getadmin.vbs"
set params = %*:"=""
echo UAC.ShellExecute "%~s0", "%params%", "", "runas", 1 >> "%temp%\getadmin.vbs"
"%temp%\getadmin.vbs"
exit /B
:gotAdmin
if exist "%temp%\getadmin.vbs" ( del "%temp%\getadmin.vbs" )
pushd "%CD%"
CD /D "%~dp0"
:--------------------------------------
:
echo ACHTUNG: bitte keine Fehler machen
echo Alle Daten gehen UNWIEDERRUFLICH verloren
set /p dev="Laufwerksbuchstabe: " %=%
@echo REM > skriptDatei.txt
@echo REM Laufwerk %dev% auswählen >> skriptDatei.txt
@echo SELECT VOLUME %dev% >> skriptDatei.txt
@echo REM Details anzeigen >> skriptDatei.txt
@echo DETAIL DISK >> skriptDatei.txt
@echo REM Laufwerk löschen, Fehler ignorieren >> skriptDatei.txt
@echo DELETE VOLUME NOERR OVERRIDE >> skriptDatei.txt
@echo REM Laufwerk bereinigen >> skriptDatei.txt
@echo CLEAN >> skriptDatei.txt
@echo REM Partition Anlegen >> skriptDatei.txt
@echo CREATE PARTITION PRIMARY >> skriptDatei.txt
@echo REM Partition auf empfohlenen Art formatieren >> skriptDatei.txt
@echo FORMAT RECOMMENDED OVERRIDE >> skriptDatei.txt
@echo REM Ende >> skriptDatei.txt
@echo EXIT >> skriptDatei.txt
diskpart /s skriptDatei.txt
del skriptDatei.txt
LoseAllData.bat
Den Download als .bat Datei ablegen und ausführen.
Das Skript löscht alle Partitionen vom Gerät, schreibt den MBR neu, legt eine Partition an die das ganze Gerät füllt und formatiert diese.
Wer sehen will was man wiederherstellen kann, vorher und nachher, kann zum Beispiel PC-Inspector-File-Recovery nutzen.
Nutzung der Skripte auf eigene Gefahr.