kampfwurst
Goto Top

Raspberry SD Karte schützen vor Auslesen

Hallo zusammen,

Ich habe ein Programm auf einem Raspberry und würde gerne verhindern das jemand das kopiert.

Kann ich eine SD Karte so schützen das ich z.B. ein EEPROM auf eine Platine löte und dann per I2C den Key auslese und dann on the fly die Karte entschlüssle.
So als TPM Ersatz auf dem Raspberry wie der Zymkey von Zymbit.
Funktioniert mein Ansatz?

Gibt es Beispiele?

Content-ID: 650814

Url: https://administrator.de/contentid/650814

Ausgedruckt am: 04.11.2024 um 18:11 Uhr

BirdyB
BirdyB 11.02.2021 um 21:49:49 Uhr
Goto Top
147448
147448 12.02.2021 um 00:25:44 Uhr
Goto Top
@BirdyB

Entschuldigen Sie wenn ich jetzt Frage wie Sie das auf einer Standard Installation , wo Teile des BS auf einer FAT32 Partition liegen umsetzen wollen ?

Wo oder Wie können Sie auf Teilen des FAT32 Systems Zugriffsrechte anwenden ?
BirdyB
BirdyB 12.02.2021 um 06:43:49 Uhr
Goto Top
Zitat von @147448:

@BirdyB

Entschuldigen Sie wenn ich jetzt Frage wie Sie das auf einer Standard Installation , wo Teile des BS auf einer FAT32 Partition liegen umsetzen wollen ?

Wo oder Wie können Sie auf Teilen des FAT32 Systems Zugriffsrechte anwenden ?
Was hat das jetzt mit der Fragestellung zu tun? Es geht doch darum, den ext4-Part zu schützen, wenn ich den TO richtig verstanden habe.
147448
147448 12.02.2021 um 22:19:07 Uhr
Goto Top
Dann schauen sie mal auf Ihre Micro SD Card ! Und schauen was wo liegt !

Und wenn ich den Eingangs-Post lese will er die gesamte SD Card schützen !

"Kann ich eine SD Karte so schützen das ich z.B. ein EEPROM auf eine Platine löte und .. "

Ich lese hier die SD Card als ganzes, und nicht eine einzelne Datei auf einer EXT4 Partition ;)

Dann muss er CHOWN benutzen.

Aber selbst mit nur Root Leserechten, lässt sich dann immer noch der Dateiinhalt via Zwischenablage des Terminals kopieren !

Und dann weiter ? Das Modul ab, und weg , und die Karte als Image Copy selbst mit dem Verschlüsselungsteil in einem KVM ! Und dann ?

Jetzt müsste man erst einmal wissen wie weit der Schutz reichen soll ! Solange man physikalisch an die Karte ran kommt, ist es wie bei jeder Datenspeicherung ! Man hat Zeit !

Geht es nur um den punktuellen Schutz einzelner Dateien in einem laufenden System, die auch auf der EXT4 Partition liegen bringt der Linux Kernel alles mit !
Kampfwurst
Kampfwurst 14.02.2021 um 10:30:27 Uhr
Goto Top
Hallo zusammen,

Es geht vorrangig um bestimmte Files. Am liebsten wäre mir sowas wie eine eigene Partition die verschlüsselt ist und wo z.B. der Schlüssel in einem
EEPROM gespeichert ist. Das Zymkey ist einfach zu teuer und zu umständlich.

Es reicht wenn nicht jeder sofort die File lesen kann.
Ich dachte mir das ich z.B. das EEPROM mit dem Key bespielen und dann beim ersten Starten die Partition mit dem zufälligen KEY aus dem EEPROM automatisch verschlüssle.

Somit kann auch die SD Karte nicht in einem anderen Raspi verbaut werden.
Vielleicht kann man statt des EEPROMs auch die CPU Serial Nummer verwenden.
147448
147448 15.02.2021 um 15:25:55 Uhr
Goto Top
Ja das geht theoretisch !

Ich habe es selber auf einem PI noch nicht versucht. Aber unter Linux auf einer PC Maschine ist dieses möglich.

Wenn es dir gelingt die Installationsroutine so umzuschreiben, dass während der Installationsroutine ein LVM genutzt wird, ist das möglich dass du auf einer Partition, die vollständig verschlüsselt ist, und an die Geräte ID gebunden ist und beim Systemstart an ein Anmeldepasswort gebunden ist.

Erst mit der Eingabe des LVM Passwortes und der über einen Script auszulesende Geräte ID wäre das dann so möglich. Damit wird diese Karte ohne einen Kyptografischen Hack für andere PI Geräte unbrauchbar, oder zumindest wichtigen Daten bleiben geschützt.
Lochkartenstanzer
Lochkartenstanzer 16.02.2021 um 09:43:57 Uhr
Goto Top
Moin,

prinzipiell wäre erstmal zu klären, gegen welche Art Angreifer man sich schützen will:

Der "Käufer" dervielleicht mal weiß, wie man eine SD-Karte kopiert oder der Linux-Guru, der sich an der Kiste anmeldet und ggf die "automatisch" entschlüsselten Daten ausliste und sich dann einen neue Karte mit einem angepaßten System "backt".

Wird das System schon vorinstalliert geliefert oder schickt man dem Angreifer nur die SD-Karte", damit er sie in "seinen" RasPI einsteckt?

Da wären noch viele weitere Fragen, um sich dann das richtige Verfahren herauszusuchen. Wen Du die Software selbst programmierts, köntnest Du z.B. Lizenzmanagementsystem wie z.B. von WIBU nehmen. Dann kannst Du per Dongle, ggf. über Netzwerk, kontrollieren, "wie oft" udn wo Deine Software laufen darf.

lks
GNULinux
GNULinux 16.02.2021 um 13:03:45 Uhr
Goto Top
Zitat von @Lochkartenstanzer:
prinzipiell wäre erstmal zu klären, gegen welche Art Angreifer man sich schützen will:
Erstens das und dann ist die Frage was er vor hat und ob das in der Form überhaupt sinnvoll ist. Meiner Erfahrung nach ist das Problem meist irgendwo anders, wenn man den Code schützen will wie z.B. PWs im Code die niemand anders extrahieren können soll. Bei guten Anwendungen muss man den Code i.d.R. gar nicht unbedingt schützen. Sieht man an den vielen und stetig wachsenden OS Projekten, die ihren Code sogar freiwillig für jeden ins Internet stellen.

Die Ära der Obfuscatoren ist auch vorbei, heutzutage macht man so was wie z.B. Minifying im Web Bereich eher aus Performance Gründen und nicht weil man Angst hat jemand anders sieht den Code (was sowieso immer möglich ist, das ist nur eine Frage des Aufwandes).
Kampfwurst
Kampfwurst 17.02.2021 um 16:15:54 Uhr
Goto Top
Es geht um ein Produkt welches vorinstalliert mit SD Karte geliefert wird.

Ich will verhindern das man ohne weiteres an den Code kommt. Mir reicht es wenn man nur mit viel Aufwand den Schutz knackt. Ich will auch verhindern das man die SD Karte kopiert.

Wie schon geschrieben wäre super wenn sich die Partition automatisch beim ersten Start verschlüsselt.
147448
147448 17.02.2021 um 16:55:25 Uhr
Goto Top
So jetzt mal paar Fakten um Thema !
Solange ich als potentieller Angreifer körperlich an die SD Karte komme, hast du schon verloren. Mit allen möglichen und gängigen Linux Tools kann man von jedem Datenträger ein Image, und damit eine Kopie erzeugen !

Soviel zu dem Traum Kopierschutz ! face-wink

Also bleibt dir nur der Weg eine LVM mit einer verschlüsselten Partition einzurichten, so das auch der zu schützende Code so gut es nur möglich geschützt ist.
GNULinux
GNULinux 17.02.2021 um 16:56:17 Uhr
Goto Top
Sehr viele Infos... für all zu viel Aufwand halte ich es nicht wenn der Schlüssel auf dem System liegen muss aber gut wenn du meinst, dann verschlüssel halt:
http://www.debian.org/doc/manuals/debian-reference/ch09.en.html#_data_e ...
http://wiki.debian.org/TransparentEncryptionForHomeFolder