Kann man mit einer Software Daten manipulationssicher speichern?
Hallo,
mal ein Gedankenspiel.
Kann man mit einer Software Daten manipulationssicher speichern?
Oder zumindest so, dass eine Manipulation auffällt.
Ich wüsste zumindest nicht wie.
Beispiel Mailstore.
"Schutz vor Manipulationen
MailStore Server nutzt moderne Hash- und Verschlüsselungsverfahren (SHA-Hashes und eine AES256-Verschlüsselung). Dies hilft dabei, archivierte Daten vor nachträglichen Manipulationen zu schützen."
Quelle: https://www.mailstore.com/de/produkte/mailstore-server/technologie/integ ...
Ich habe also eine Datei.
Aus dem Inhalt ermittele ich einen Hashwert, verschlüssele die Datei und speichere Metainformationen sowie Hashwert in einer Datenbank.
Zusätzlich erstelle ich eine Art Blockchain. Ich erstelle also einen Hash über den Datensatz und verknüpfe diesen Eintrag mit dem Hash des Eintrages davor.
Mailstore verfügt über ein proprietär Archivformat und eine proprietär Datenbank.
Das fällt aber für mich eigentlich nur unter obscurity und hält quasi nur auf.
Wenn man den Code von Mailstore auseinander nimmt kommt man auch an die Datenformate von beiden.
Auch könnte ein Mitarbeiter den Code stehlen.
Also ignoriere ich das.
Nehmen wir als Beispiel mal 7zip als Archivformat, SHA512+Dateilänge als Hashformat sowie MySQL als Datenbank.
Das wäre das gleiche ohne obscurity durch eigenen Dateiformate.
Ein Kennwort oder der private Schlüssel müssen ja irgendwo gespeichert sein wo das Programm Zugriff drauf hat.
Also kommt man auch, mit Aufwand, an diese Daten ran.
Ich nehme also die Datei aus dem 7zip-Archiv.
-Entpacke diese
-Ändere den Inhalt
-Berechne die neuen Hashs
-Ändere die Systemzeit
-Füge es zum Archiv hinzu (mit ursprünglichen Datum)
-Ändere die Hashes in der Datenbank
-Berechne alle nachfolgenden Blockchains neu
Eine Änderung ist nicht erkennbar
Die Zertifikate für solche Softwaren sind vermutlich eher ein Hinweis darauf, dass es keine augenscheinlichen Manipulationsmöglichkeiten gibt und dass der Aufwand so hoch ist, dass er unrealistisch ist.
Dies sind Dinge die mir eingefallen sind:
- Es gibt einen externen Signing-Server welcher die Signierung mit Zeitstempel vornimmt und ein Protokoll führt.
- Windows könnte eine Funktion haben, dass nur ein Programm mit einer bestimmten Signatur (durch den Hersteller) auf einen Schlüsselspeicher zugreifen kann.
- Oder simpel, man druckt täglich die letzte Blockchain Prüfsumme aus. Jemand könnte aber auch diese Zettel austauschen.
Habe ich etwas übersehen?
Mein Fazit bezüglich Mailstore wäre also.
Ja, es ist technisch möglich Daten zu manipulieren ohne dass Mailstore das mitbekommt.
Der Aufwand ist aber vermutlich so hoch, dass es nicht realistisch ist.
Aber wie sieht das aus wenn die NSA mit neuen Quantencomputern eine Mail in Mailstore ändern möchten?
Oder wenn die Firma Mailstore selber so ein Archiv manipulieren wollten?
btw: Heute ist Freitag, da darf ich so etwas fragen
mal ein Gedankenspiel.
Kann man mit einer Software Daten manipulationssicher speichern?
Oder zumindest so, dass eine Manipulation auffällt.
Ich wüsste zumindest nicht wie.
Beispiel Mailstore.
"Schutz vor Manipulationen
MailStore Server nutzt moderne Hash- und Verschlüsselungsverfahren (SHA-Hashes und eine AES256-Verschlüsselung). Dies hilft dabei, archivierte Daten vor nachträglichen Manipulationen zu schützen."
Quelle: https://www.mailstore.com/de/produkte/mailstore-server/technologie/integ ...
Ich habe also eine Datei.
Aus dem Inhalt ermittele ich einen Hashwert, verschlüssele die Datei und speichere Metainformationen sowie Hashwert in einer Datenbank.
Zusätzlich erstelle ich eine Art Blockchain. Ich erstelle also einen Hash über den Datensatz und verknüpfe diesen Eintrag mit dem Hash des Eintrages davor.
Mailstore verfügt über ein proprietär Archivformat und eine proprietär Datenbank.
Das fällt aber für mich eigentlich nur unter obscurity und hält quasi nur auf.
Wenn man den Code von Mailstore auseinander nimmt kommt man auch an die Datenformate von beiden.
Auch könnte ein Mitarbeiter den Code stehlen.
Also ignoriere ich das.
Nehmen wir als Beispiel mal 7zip als Archivformat, SHA512+Dateilänge als Hashformat sowie MySQL als Datenbank.
Das wäre das gleiche ohne obscurity durch eigenen Dateiformate.
Ein Kennwort oder der private Schlüssel müssen ja irgendwo gespeichert sein wo das Programm Zugriff drauf hat.
Also kommt man auch, mit Aufwand, an diese Daten ran.
Ich nehme also die Datei aus dem 7zip-Archiv.
-Entpacke diese
-Ändere den Inhalt
-Berechne die neuen Hashs
-Ändere die Systemzeit
-Füge es zum Archiv hinzu (mit ursprünglichen Datum)
-Ändere die Hashes in der Datenbank
-Berechne alle nachfolgenden Blockchains neu
Eine Änderung ist nicht erkennbar
Die Zertifikate für solche Softwaren sind vermutlich eher ein Hinweis darauf, dass es keine augenscheinlichen Manipulationsmöglichkeiten gibt und dass der Aufwand so hoch ist, dass er unrealistisch ist.
Dies sind Dinge die mir eingefallen sind:
- Es gibt einen externen Signing-Server welcher die Signierung mit Zeitstempel vornimmt und ein Protokoll führt.
- Windows könnte eine Funktion haben, dass nur ein Programm mit einer bestimmten Signatur (durch den Hersteller) auf einen Schlüsselspeicher zugreifen kann.
- Oder simpel, man druckt täglich die letzte Blockchain Prüfsumme aus. Jemand könnte aber auch diese Zettel austauschen.
Habe ich etwas übersehen?
Mein Fazit bezüglich Mailstore wäre also.
Ja, es ist technisch möglich Daten zu manipulieren ohne dass Mailstore das mitbekommt.
Der Aufwand ist aber vermutlich so hoch, dass es nicht realistisch ist.
Aber wie sieht das aus wenn die NSA mit neuen Quantencomputern eine Mail in Mailstore ändern möchten?
Oder wenn die Firma Mailstore selber so ein Archiv manipulieren wollten?
btw: Heute ist Freitag, da darf ich so etwas fragen
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 564371
Url: https://administrator.de/contentid/564371
Ausgedruckt am: 24.11.2024 um 20:11 Uhr
3 Kommentare
Neuester Kommentar
Moin,
Die philosophische Antwort ist: Nein, Noitfalls tausche man einfach das Universum aus.
Prinzipiell läßt sich alles manipulieren, allerdings ist das immer einer Frage des Aufwands im Verhältnis zum "Ertrag".
Prinzipiell ist es aber möglich, Logs weitgehend manipulationssicher zu gestallten, indem man "WORM" (Write Once, Read Many) einsetzt, sei es indem man entprechende optischen Medien verwendet (CD, DVD, Blue-Ray, WORM) oder einen Server für die Logs einsetzt, der außerhalb des Einflußbereiches des "Manipulators" steht und dem man Logmeldungen schickt und der diese nur anfügt aber das beliebige Lesen erlaubt. Alternativ könnte man die Logs natürlich auch in Stein meißeln (3D-Drucker , CNC-Maschine), was auch einem WORM entsprechen würde.
Mit Hilfe solcher WORM-Technik sollte es möglich sein, Vorgänge manipulationssicher aufzuzeichnen und zu dokumentieren.
lks
PS: Mailstore halte ich zumindest weitgehend für GoBD-konform, wenn man regelmäßig Archive auf WORM auslagert. Auch wenn es Angriffsflächen bietet, so ist es doch weitgehend brauchbar.
Die philosophische Antwort ist: Nein, Noitfalls tausche man einfach das Universum aus.
Prinzipiell läßt sich alles manipulieren, allerdings ist das immer einer Frage des Aufwands im Verhältnis zum "Ertrag".
Prinzipiell ist es aber möglich, Logs weitgehend manipulationssicher zu gestallten, indem man "WORM" (Write Once, Read Many) einsetzt, sei es indem man entprechende optischen Medien verwendet (CD, DVD, Blue-Ray, WORM) oder einen Server für die Logs einsetzt, der außerhalb des Einflußbereiches des "Manipulators" steht und dem man Logmeldungen schickt und der diese nur anfügt aber das beliebige Lesen erlaubt. Alternativ könnte man die Logs natürlich auch in Stein meißeln (3D-Drucker , CNC-Maschine), was auch einem WORM entsprechen würde.
Mit Hilfe solcher WORM-Technik sollte es möglich sein, Vorgänge manipulationssicher aufzuzeichnen und zu dokumentieren.
lks
PS: Mailstore halte ich zumindest weitgehend für GoBD-konform, wenn man regelmäßig Archive auf WORM auslagert. Auch wenn es Angriffsflächen bietet, so ist es doch weitgehend brauchbar.