Auswahl eines Tools zur unwiderruflichen Zerstörung von Dokumenten im elektronischen Archiv

Zerstörung von Dokumenten, deren Archivierungszeit abgelaufen ist und deren weitere Speicherung nicht erforderlich ist - eines der Elemente des Archivs einer Organisation. Für die Zerstörung von Papierdokumenten werden Methoden der physischen Zerstörung angewendet - Verbrennung, chemische Verarbeitung, Zerkleinerung, die die Unmöglichkeit der Wiederherstellung von Informationen garantieren. Für Dokumente, die in elektronischer Form gespeichert sind, werden andere Methoden verwendet: Zerstörung von Daten auf dem Träger oder Zerstörung des Datenträgers selbst. Es gibt viele Tools zur Datenvernichtung, aber nicht alle haben sich als anwendbar erwiesen, um die Zerstörung von Dokumenten in einem Archiv zu automatisieren.



Aufgabe



Bei der Einführung eines elektronischen Archivs in einer Organisation mussten wir die Zerstörung elektronischer Archivdokumente automatisieren. Das Archiv selbst ist ein Directum-System, in dem mithilfe des integrierten IS-Builder-Entwicklungstools eine große Menge an Logik geschrieben wird, um Dokumente aus Quellsystemen in das Archiv zu empfangen, elektronische Signaturformate zu konvertieren, Zugriffsrechte für ganze Fälle oder einzelne Dokumente zu gewähren und zu widerrufen. Die Texte von Archivdokumenten werden auf einem magnetischen Träger gespeichert, und wenn der routinemäßige Löschvorgang vom Träger ausgeführt wird, müssen die Dateien nur der Dokumente, deren Speicherdauer abgelaufen ist, unwiderruflich gelöscht werden. Das heißt, die Zerstörung eines gesamten Mediums kam nicht in Frage, und die Aufgabe bestand darin, ein geeignetes Werkzeug zum Zerstören von Dokumentdaten auf dem Medium zu finden.



Da das Löschen von Dokumenten auch in IS-Builder implementiert ist, suchten wir nach einem Tool zur Dateizerstörung, das über den Code in der integrierten Programmiersprache des Directum-Systems gesteuert werden kann. Unter Leistungsgesichtspunkten wurde eine Anforderung an das Tool gestellt: Das Tool sollte nicht länger als eine Sekunde damit verbringen, eine 1-Megabyte-Datei zu zerstören. Für den vom Tool zur Datenvernichtung verwendeten Algorithmus muss die GOST R 50739-95 eingehalten werden, und die Unterstützung mehrerer Algorithmen wird zur Auswahl empfohlen. Außerdem sollte das Tool kostenlos und für den kommerziellen Gebrauch kostenlos sein.



Die meisten Tools, Informationen, die wir durch Suchen im Internet finden konnten, erfüllten die Anforderungen nicht, da es sich nur um Dienstprogramme mit grafischer Oberfläche ohne die Möglichkeit einer programmatischen Interaktion handelte. Für eine detailliertere Studie nur:



  • Sysinternals SDelete-Dienstprogramm;
  • Radiergummi ist ein Dienstprogramm mit einem interessanten Ansatz zur Zerstörung;
  • Nun, wir setzen auch unsere Hoffnungen auf die Implementierung des Tools direkt auf IS-Builder.


Wie wir getestet haben



Zum Testen haben wir eine kleine Partition auf der Festplatte vorbereitet, um Ihnen einen Blick auf unser Operationsfeld zu erleichtern. Auf dieser Festplatte haben wir Dateien erstellt, sie auf verschiedene Weise zerstört und dann untersucht, was von ihnen übrig geblieben ist. Die Zerstörung gilt als erfolgreich, wenn sie mit einer Geschwindigkeit ausgeführt wird, die nicht niedriger als die erforderliche ist, und keine Fragmente der Originaldatei gefunden werden können. Um den Vergleich zwischen den Tools ehrlich zu machen, wurde in allen Tools derselbe Algorithmus zum Zerstören von Dateien verwendet, der von allen unterstützt wird - DOD 5220.22-M, der formal die Anforderungen von GOST erfüllt.



Um die Ergebnisse der Zerstörung zu überwachen, haben wir die folgenden Tools verwendet:



  • WinHex ist ein Shareware-Dienstprogramm, mit dem Sie auf niedriger Ebene auf Medieninhalte zugreifen können. So können Sie anhand eines Inhalts nach Daten suchen und diese wiederherstellen.
  • DiskView – Sysinternals. , – «» .


IS-Builder



Das Wesentliche des DOD 5220.22-M-Algorithmus ist recht einfach und wir haben ihn in der integrierten Programmiersprache des Directum-Systems implementiert. Der Algorithmus empfängt den Dateinamen als Eingabe und fragt das Dateisystem nach seiner Größe in Bytes. Dann wird dreimal ein Puffer der berechneten Größe generiert und in die angegebene Datei geschrieben. Das Schöne an diesem Ansatz ist, dass der Zerstörungsalgorithmus absolut beliebig implementiert werden kann, mit einer beliebigen Anzahl von Durchgängen und den unvorstellbarsten Umschreibemustern. Da das Tool in IS-Builder ohne Abhängigkeit von externer Software implementiert ist, gibt es außerdem absolut keine Schwierigkeiten bei der Integration in die Anwendungsentwicklung des Directum-Systems. Und es funktioniert schnell. Es zerstört einfach keine Daten! WinHex hat nicht nur Fragmente der Originaldatei auf der Festplatte gefunden, sondern die gesamte Datei und erfolgreich wiederhergestellt. Es enthüllte,Zum Zeitpunkt des Schreibens des ersten Puffers auf die Festplatte ändert sich der Speicherort der Datei auf der Festplatte: Die Originaldatei befand sich am Anfang des Abschnitts, landete jedoch in der Mitte oder am Ende. Wir haben dies mit DiskView herausgefunden. Die ursprünglichen Cluster enthalten zwar Daten als frei, enthalten jedoch weiterhin Daten. Das ist natürlich nicht gut. Wir haben verschiedene Methoden zum Schreiben in die Datei verwendet. Das Ergebnis ist überall gleich. Die Daten können gefunden und wiederhergestellt werden. Es stellt sich heraus, dass wir einen Puffer zum Umschreiben generieren können, aber wir können ihn nicht korrekt auf die Festplatte schreiben. Und da es nicht möglich war, Arbeitspläne zu finden, musste ich mich von der Idee verabschieden, mit den in Directum integrierten Tools auszukommen.Die ursprünglichen Cluster sind zwar als frei markiert, enthalten jedoch weiterhin Daten. Das ist natürlich nicht gut. Wir haben verschiedene Methoden zum Schreiben in die Datei verwendet. Das Ergebnis ist überall gleich. Die Daten können gefunden und wiederhergestellt werden. Es stellt sich heraus, dass wir einen Puffer zum Umschreiben generieren können, aber wir können ihn nicht korrekt auf die Festplatte schreiben. Und da es nicht möglich war, Arbeitspläne zu finden, musste ich mich von der Idee verabschieden, mit den in Directum integrierten Tools auszukommen.Die ursprünglichen Cluster sind zwar als frei markiert, enthalten jedoch weiterhin Daten. Das ist natürlich nicht gut. Wir haben verschiedene Methoden zum Schreiben in die Datei verwendet. Das Ergebnis ist überall gleich. Die Daten können gefunden und wiederhergestellt werden. Es stellt sich heraus, dass wir einen Puffer zum Umschreiben generieren können, aber wir können ihn nicht korrekt auf die Festplatte schreiben. Und da es nicht möglich war, Arbeitspläne zu finden, musste ich mich von der Idee verabschieden, mit den in Directum integrierten Tools auszukommen.



SDelete



docs.microsoft.com/en-us/sysinternals/downloads/sdelete



Sysinternals SDelete implementiert nur einen Löschalgorithmus (DOD 5220.22-M). Sie können jedoch die Anzahl der Umschreibungsdurchläufe angeben, den Verzeichnisbaum mit seinem gesamten Inhalt zerstören und sogar eine "Bereinigung" durchführen "Nicht zugewiesener Speicherplatz. SDelete ist ein Befehlszeilenprogramm mit nur wenigen Schaltern, sodass es einfach aus IS-Builder-Berechnungen aufgerufen werden kann:



SDelete = "C:\Sysinternals\SDelete\sdelete.exe"
Command = Format('"%s" -p 1 "%s"'; ArrayOf(SDelete; Filename))
ExecuteProcess(Command; smNormal; wmYes)


Durch die Verwendung des Dienstprogramms verschwanden die Dateien fast spurlos von der Festplatte: Mit WinHex konnten nur Spuren des Umschreibens des Dateinamens erkannt werden, der Inhalt konnte jedoch nicht gefunden und wiederhergestellt werden. Gleichzeitig arbeitete das Dienstprogramm ziemlich schnell (Löschen einer 1-Megabyte-Datei = 0,2 Sekunden) und übernahm zu Recht die Führung.



Radiergummi



eraser.heidi.ie



Kostenloses GUI-Dienstprogramm. Was Eraser von den anderen unterscheidet, ist die Arbeit mit einer Kill-Warteschlange. Wenn Sie etwas löschen möchten, müssen Sie die entsprechende Aufgabe erstellen und zur Warteschlange hinzufügen. Jede Aufgabe in der Radiergummi-Warteschlange ist eine Sammlung von Informationen:



  • über das Objekt der Zerstörung - es kann sich um eine bestimmte Datei oder ein bestimmtes Verzeichnis handeln, den Inhalt des "Papierkorbs" des Benutzers, nicht zugewiesenen Speicherplatz. Dies kann auch eine sichere Verschiebung von Dateien oder Ordnern oder eine vollständige Bereinigung einer Festplattenpartition sein.
  • Informationen zum Zerstörungsalgorithmus - Eraser kennt mehrere vorgefertigte Umschreibealgorithmen und bietet außerdem die Möglichkeit, eigene Algorithmen zu erstellen, indem die erforderliche Anzahl von Durchläufen festgelegt und für jede von ihnen eine eigene Datenvorlage für das Umschreiben angegeben wird.
  • Informationen zur Startzeit - Die Aufgabe kann unmittelbar nach dem Einfügen in die Warteschlange nach einem Zeitplan, beim Starten des Betriebssystems oder manuell ausgeführt werden.


Der im Hintergrund ausgeführte Radiergummiprozess verarbeitet die Warteschlange und führt Aufgaben aus. Daher ist die Datenvernichtung in Eraser immer ein asynchroner Prozess, ähnlich wie bei Serverereignissen in Directum.



Die Steuerung des Dienstprogramms mithilfe von Befehlszeilenschaltern funktioniert ebenfalls und seit langem, obwohl die Arbeit an der Befehlszeile noch nicht offiziell angekündigt wurde und sich im Status einer entwickelten Funktionalität befindet:



Eraser = "C:\Program Files\Eraser\Eraser.exe"
Command = Format('"%s" erase /method="ecbf4998-0b4f-445c-9a06-23627659e419" /quiet file="%s"'; ArrayOf(Eraser; Filename))
ExecuteProcess(Command; smNormal; wmYes)


Die Dateizerstörung mit Eraser wurde erfolgreich abgeschlossen. Die Arbeitsgeschwindigkeit konnte aufgrund der asynchronen Zerstörung nicht abgeschätzt werden. Unter dem Gesichtspunkt der Verwendung in der angewandten Entwicklung ist der angehaltene Status der Arbeit in der Befehlszeile verwirrend, aber die Möglichkeit, willkürliche Zerstörungsmethoden zu erstellen, sieht interessant aus.



Ergebnisse



Ohne die nervige Datei mit dem Schreiben des Puffers auf die Festplatte würde die Implementierung in IS-Builder wie eine Million aussehen, aber leider nicht die Ziellinie erreicht. Die beiden anderen Tools zeigten eine viel bessere Leistung, wobei das SDelete-Dienstprogramm am vorteilhaftesten aussah. Es erfordert keine Installation, obwohl es nur minimale, aber ausreichende Funktionalität und gute Leistung hat.



All Articles