Festplatte mit Random überschreiben

Morfio

Well-Known Member
Hallo,

wir haben hier etliche Festplatten liegen (Firma), die via Random überschrieben werden müssen. Das dauert natürlich lange. Ist die Überschreibesicherheit noch gegeben, wenn man die Blocksize höher wählt, damit es schneller geht? Wir dachten so an 8M.

Viele Grüße, Morfio
 
Die spannende frage ist eher ob kryptographisch starke Pseudozufallsdaten reichen. Solltest du wirklich dd bs=$BS if=/dev/random of=$OUT ausführen ist bs=$BS überflüssig, denn die Limiterung wird /dev/random sein. Schneller wäre es mit geli onetime ein geli device auf der gesammten Platte anzulegen und dann die entschlüsselte platte $OUT.eli mit Nullen zu überschreiben. Nach einem geli detach ist die Platte unter einem nicht mehr bekannten Schlüssel verschlüsselten Nullen überschrieben. Ziel erreicht.
 
spontan wuerde ich sagen, fuer das was du vorhast reichen auch pseudozufallszahlen.
sprich /dev/urandom oder /dev/prandom, oder wie das bei freebsd heisst.

wenn es ein pattern ist, welches immer wiederholt geschrieben werden soll, schlage ich eine blockgroesse vor die einer primzahl entspricht. (z.b.: dd bs=2018249)

aber eigentlich reichen bei modernen festplatten sogar nullen, um ein auslesen auch FUER GANZ VIEL GELD MIT ELEKTRONENMIKROSKOP etc. zu verhindern. also /dev/zero. ist auch am schnellsten.


wichtigere frage: schreibst du auf das device oder das raw-device? also /dev/ad*** oder /dev/rad***?
weil, /dev/ad*** ist langsamer.




wollt ihr die platten wegschmeissen empfehle ich dir auf den schrottplatz zu gehen und die unter den magneten zu legen mit denen die autos hochheben. oder ein paarmal kraeftig mit dem hammer draufkloppen, das macht sogar spass ;)
 
Zuletzt bearbeitet:
Zufallszahlen, Pseudozufallszahlen, NSA, CIA... Wie Dettus sagt, bei modernen Platten macht das alles keinen Unterschied, da die Daten eh nicht mehr mit menschenmöglichem Aufwand rekonstruierbar sind. Was ja nun nicht unbedingt weiterhilft, da hier sicher irgendeine firmeninterne Regelung greift.

Daher: Empirisch ermittelt erreicht man den besten Durchsatz, wenn die Blockgröße der Hälfte des Caches des Laufwerks entspricht. Heute also meist bs=8M oder bs=16M. Aber wie Crest sagt, hier dürfte eher /dev/random (ein Yarrow-Algorithmus) die Bremse sein.

Zu den Devicenamen: FreeBSD hat nur /dev/random, sonst nichts. /dev/urandom ist ein aus Kompatiblitätsgründen angelegter Hardlink auf /dev/random. Yarrow liefert zwar keine endlose Folge von Zufallszahlen, aber sie ist so lang, dass es irrelevant ist dort eine Sperre einzusetzen. Außerdem kann man das Ding auch noch regelmäßig reseeden.
 
Mir stellt sich neben der technischen Betrachtung die Frage nach der rechtlichen Seite.

Was für Daten sind auf den Platten?
Verwendet Ihr die Platten weiter oder wollt Ihr sie verkaufen bzw zum Recyclinghof geben?

Je nach Inhalt gibt es rechtliche Vorschriften zu beachten, ggf. ist einfaches Löschen ohne Protokollierung alleine gar nicht ausreichend wenn die Platten anschließend außer Haus gehen, sondern müssen durch eine Spezialfirma tatsächlich körperlich vernichtet werden.

Je nach Gesamtkonstellation in Eurer Firma ist vielleicht auch die Anschaffung eines Löschprogramms mit umfangreichen Protokollierungsfunktionen ratsam.

Wir hatten vor nicht allzu langer Zeit mal ein Audit in der Firma wo genau diese Sachen Entsorgung von IT Equipment, Löschprotokolle und Nachweise zur Sprache kamen, und wir tatsächlich die Belege zeigen mussten dass z.B. alte Festplatten und Bänder vom Dienstleister Datex vernichtet wurden.

Andererseits kann man auch vom Hundertsten ins Tausenste kommen und wo kein Kläger da auch kein Angeklagter. Zu Hause behandle ich alle Platten in einem nächtlichen Lauf mit DBAN Löschmethode DoD short und gut ist :-)
 
Zuletzt bearbeitet:
Ich habe mir zum initialisieren von verschlüsselten Disks vor vielen Jahren ein kleines C Program geschrieben, welches einen Schlüssel aus dem (u)random Device holt und dann eine endlose rc4 Sequenz generiert. Diese wird dann per Pipe an dd geschickt. Das ganze arbeitet auf aktuellen Rechner deutlich besser als /dev/*.

Wer sowas brauchen kann, hier das Program:

Code:
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

typedef struct rc4_key
{
   unsigned char state[256];
   unsigned char x;
   unsigned char y;
} rc4_key;

void create_key(rc4_key *key)
{
    int i;
    int fd;

    fd = open("/dev/urandom", O_RDONLY);
    if (fd == -1)
    {
        fprintf(stderr, "Error opening random device!\n");
        exit (1);
    }
    i = read(fd, key->state, sizeof(key->state));
    if (i != sizeof(key->state))
    {
        fprintf(stderr, "Error reading random init data!\n");
        exit (1);
    }
    close(fd);
    key->x = 0;
    key->y = 0;
    return;
}

void rc4(unsigned char *buffer_ptr, int buffer_len, rc4_key *key)
{
    unsigned char   t;
    unsigned char   x;
    unsigned char   y;
    unsigned char   *state;
    unsigned char   xorIndex;
    int             counter;

    x = key->x;
    y = key->y;
    state = &(key->state[0]);
    for(counter = 0; counter < buffer_len; counter++)
    {
        x = (x + 1) % 256;
        y = (state[x] + y) % 256;
        t = state[x];
        state[x] = state[y];
        state[y] = t;
        xorIndex = (state[x] + state[y]) % 256;
        buffer_ptr[counter] ^= state[xorIndex];
    }
    key->x = x;
    key->y = y;
    return;
}

int main(int argc, char* argv[])
{
    int             i;
    unsigned char   buf[4096];
    rc4_key         key;

    create_key(&key);
    do
    {
        rc4(buf, sizeof(buf), &key);
        i = write(STDOUT_FILENO, buf, sizeof(buf));
    } while (i == sizeof(buf));
    return (0);
}

Einfach kompilieren mit 'gcc -O3 -o rc4rand rc4rand.c' und dann ein 'rc4rand | dd of=/dev/??? bs=4096'.
 
Eine Alternative zu dd waere noch security/wipe. Das benutzt nur als erste Quelle fuer Zufallszahlen /dev/random und dann einen Mersenne Twister Algorithmus, um schnell einen Buffer vollzuschreiben, der anschliessend auf die Platte gedrueckt wird. Das geht meiner Erfahrung nach um einiges schneller als wie mit dd direkt von /dev/random.

Aber ich kann mich sonst nur den anderen anschliessen: Einmal nullen ist eigentlich mehr als ausreichend. Wenn das allerdings nicht deine Vorgaben sind, dann kannst du natuerlich nichts daran aendern.
Problematischer als wie die Diskussionen zwischen Zufallszahlen vs. /dev/zero finde ich eher, das evtl. die Reservesektoren ueberschrieben werden, aber die kaputten Sektoren durchaus noch in Takt sein koennen mit ihren brisanten Daten. Bei Festplatten ist das nicht sonderlich interessant, bzw die Chance das gerade da etwas relevantes zu finden ist, ist ziemlich klein. Aber bei SSDs zB, die einen viel groesseren Vorrat dieser Reservesektoren haben (muessen), hat man da bessere Karten.
Lange rede kurzer Sinn, am sichersten ist es die Festplatte ordentlich mechanisch zusammenzufauchen, oder in fluessiges Metall zu werfen. xD
 
Die Temperaturen muessen nicht besonders hoch sein.
Sein einiger Zeit verbrenne ich mit ein paar Freunden oefter Platten nach gemeinsamem Grillen. Es reicht bereits ein etwas groesseres Grillfeuer und nach ca. 15-30 Minuten ist von der Platte nur noch das Gehauese ueber.

Aus Sicht des Umweltschutzes mag diese Loesung nicht optimal sein, aber wenn ich Computer einige Tage laufen um Zufallszahlen zu erzeugen, ist das auch nicht viel besser.

Fuer den privaten Bereich finde ich diese Loesung optimal. Kann euch nur empfehlen, das mal zu probieren.
 
Sein einiger Zeit verbrenne ich mit ein paar Freunden oefter Platten nach gemeinsamem Grillen
Ich finde es als absoluter Recycler und Wertstoff-trenner absoluten Frevel funktionierende Festplatten zu verbrennen, verschenkt sie lieber an Leute die damit noch irgendwas machen...
 
:belehren:
ich hoffe das macht ihr NACH dem grillen?

und haltet euch auch weit genug von dem rauch fern?
ungiftig sind die dinger naemlich mit sicherheit nicht.

:belehren:
 
Ich finde es als absoluter Recycler und Wertstoff-trenner absoluten Frevel funktionierende Festplatten zu verbrennen, verschenkt sie lieber an Leute die damit noch irgendwas machen...

Ich mustere meine Platten meistens sogar so früh aus, dass man sie beim grossen E zu vernünftigen Preisen loswerden kann. Da ist es ganz gut, wenn die Daten nie unverschlüsselt auf der Platte gelandet sind. Sicher ist sicher.

Festplatten Grillen ist auch mal ne Idee. Fragt sich nur ob es eine gute ist. Ausserdem ist an meinen 2,5" nichts dran, da muss man einige Grillen bis man satt ist. :D
 
Schnell, einfach und betriebssystemunabhängig geht es mit DBAN. Da kannst du auch diverse Einstellungen was den verwendeten Algorithmus angeht treffen und so zwischen Geschwindigkeit und Sicherheit abwägen. Trotzdem sehr leicht zu bedienen.
http://www.dban.org/
 
Die Temperaturen muessen nicht besonders hoch sein.
Sein einiger Zeit verbrenne ich mit ein paar Freunden oefter Platten nach gemeinsamem Grillen. Es reicht bereits ein etwas groesseres Grillfeuer und nach ca. 15-30 Minuten ist von der Platte nur noch das Gehauese ueber.

Aus Sicht des Umweltschutzes mag diese Loesung nicht optimal sein, aber wenn ich Computer einige Tage laufen um Zufallszahlen zu erzeugen, ist das auch nicht viel besser.

Fuer den privaten Bereich finde ich diese Loesung optimal. Kann euch nur empfehlen, das mal zu probieren.

Umweltsünder! Anstiftung zu Umweltverschmutzung!

Gibt sicher auch Gesetze, die da greifen...

Woher willst du wissen, dass die Temperaturen nicht sehr hoch sind? Schon gemessen?
 
Zufallszahlen, Pseudozufallszahlen, NSA, CIA... Wie Dettus sagt, bei modernen Platten macht das alles keinen Unterschied, da die Daten eh nicht mehr mit menschenmöglichem Aufwand rekonstruierbar sind.

Warum macht es bei modernen Festplatten keinen unterschied?
Was ist denn der unterschied diesbezüglich zu Festplatten von vor 10 Jahren?

KO
 
Die Datendichte ist wesentlich höher, außerdem wurde mit "perpendicular recording" eine andere physikalische Anordnung der Datenblöcke eingeführt. Beides hat dazu geführt, dass die magnetisierten Flächen pro Bit wesentlich kleiner geworden sind, was wiederum die Wahrscheinlichkeit, das bei einer Neubeschreibung auslesbare Reste übrig bleiben, senkt. Eine Computerzeitschrift - war es die c't? - hatte vor einiger Zeit einmal Festplatten ausgenullt und an die große Datenrettungslabore (OnTrack, Seagate Recovery, etc) geschickt. Verwertbare Mengen hat keines auch nach nur einmal überschreiben wiederherstellen können.
 
Hier gilt es zu beachten, dass ein einzelnes Bit selten etwas wert ist. Wenn man mit 70% Wahrscheinlichkeit ein Bit rekonstruieren kann (der Wert ist wahrscheinlich sehr hoch angesetzt) ist die Wahrscheinlichkeit ein bstimmtes Byte zu rekonstruieren unter 6%. Damit ist die Rekonstruktion komprimierter Daten meiner Einschätzung nach schon ausgeschlossen.

Bei nicht komprimierten Daten kann man mit Hilfe von Auftrittswahrscheinlichkeiten bestimmter Zeichen mehr erreicht werden. Ich würde schätzen, dass die Wahrscheinlichkeit ein ASCII Zeichen zu rekonstruieren immer noch unter 12% Läge, das beruht auf der Annahme, dass man in der Regel nur 6 Bit rekonstruieren muss. Damit läge dann die Wahrscheinlichkeit ein Wort aus 3 Zeichen zu Rekonstruieren schon bei ~0.16%. Eventuell kann man noch Häufigkeiten von Zeichen in der genutzten Sprache hinzuziehen. Trotzdem bleibt die zu erwartende Rate an rekonstruierten Daten aber deutlich unter 1% und damit weit außerhalb eines nutzbaren Bereichs.
 
Umweltsünder! Anstiftung zu Umweltverschmutzung!
Gibt sicher auch Gesetze, die da greifen

Nur mal um das klar zu stellen: Ich verbrenne nicht tonnenweise Festplatten. Sind selten mehr als 5 pro Jahr. Damit sollte sich die Umweltverschmutzung in Grenzen halten, zumal das Feuer ja nicht extra dafuer angezuendet wird, sondern sowieso brennt. Ich glaube auch nicht, dass Platten so giftig sind. Das meisste daran ist Metall. Und dass wird ja nur kurz fluessig und dann wieder fest. Danach kommts in die Schrottkiste und die nimmt der Schrotthaendler mit.

Fuer mich als paranoiden Datenschutzfanatiker gibt es nicht viele andere Optionen. Mit Nullen ueberschreiben, dauert lange und ist bei defekten Platten ohnehin nicht immer vollstaendig moeglich. Bleibt nur noch die mechanische Vernichtung.

Wenn ich die Platten schreddere habe ich ne Tuete Metall mit Plastikteilen. Wo kann man sowas als Privatmann entsorgen und davon ausgehen, dass es wirklich sinnvoll wiederverwertet wird? Hausmuell ist wahrscheinlich nicht optimal, obwohl ich glaube, im Hausmuell entsorgtes Metall wird aus dem Muell entfernt, bevor der in die Verbrennungsanlage kommt.
Muss mein Haendler die Platte auch zurueck nehmen, nachdem sie aus dem Schredder kommt?

Zum Thema Receycling:
Es kam neulich eine Reportage, wie das Gesetz, dass Haendler Elektrogeraete kostenlos entsorgen muessen, umgesetzt wird. Diverse Abfallbeseitigungsfirmen schaffen das Zeug in die Dritte Welt. Dort werden Kinder beschaeftigt um halbwegs wertvolle Metalle auszusortieren. Die Lebenserwartung der Kinder liegt, aufgrund der Arbeitsbedingungen und der Giftstoffe im Muell, bei unter 20 Jahren. Was man nicht gebrauchen kann, landet im Meer.

Ich lege normalerweise Wert auf Umweltschutz. Ich verbrenne ausschliesslich Festplatten und Papiermuell, in dem vertrauliche Dokumente enthalten sind. Sonstige Abfaelle entsorge ich fachgerecht. Kuehlschraenke kommen zum Wertstoffhof, Altoel nimmt das Oekomobil und diversen Computerschrott lagere ich im Keller, damit ich irgendwann mal etwas vererben kann.
Atommuell verbuddele ich fachgerecht ueberall nur nicht bei mir.

Woher willst du wissen, dass die Temperaturen nicht sehr hoch sind? Schon gemessen?

Ein Holzfeuer brennt mit ca. 800 Grad, wenn man nicht kuenstlich Luft zu fuehrt. Da ich dies nicht tue und die Platte recht schnell fluessig wird, gehe ich davon aus, dass deren Schmelzpunkt nicht hoeher als 700 Grad liegt.
 
Verbrennen ist nicht ok

Also ich finde das mit dem Verbrennen nicht ok.
Gerade wird diskutiert, das uns die Rohstoffe ausgehen und China Seltene Erden zurückhält...
Eine alte/defekte Platte gehört in den normalen Recycling Kreislauf - wobei, wenn man so die Berichte sieht das ein Großteil des Elektronikmülls nach Afrika verschifft und dort irgendwo verbrannt wird wegen dem Kupfer...
Schraub die Platte einfach auf, nimm ein Kombizange und verbieg die Scheiben ein paar mal. Danach ab zum Wertstoffhof.
Ansonsten noch ein Tipp: in meiner alten Wohnung (war ein etwas größeres Haus mit 600 Mietern) haben sich immer wieder mal Leute ausgesperrt. Abends/nachts war natürlich kein Hausmeister da. Eine Festplattenscheibe in den Spalt gerollt (Kombizange benutzen da sehr scharfkantig!) funktioniert hervorragend um die Tür zu öffnen. Kreditkarte wie im Kino hat auch funktioniert nur war die Karte danach meistens nicht mehr zu gebrauchen.
 
Zurück
Oben