Wie kann man Live-Systemen einen Kopierschutz verpassen?

FragenWie kann man Live-Systemen einen Kopierschutz verpassen?
GoaSkin - Freitag, 13. August 2010 12:32 Uhr

Nein, ich möchte keinen Kopierschutz implementieren, um sicherzustellen, dass mir Lizenzgebühren bezahlt werden.

Ich habe ein Kiosk-System aufgebaut, an dem verschiedene Nutzer arbeiten sollen, die auf einem persönlichen USB-Stick ein komplettes Betriebssystem samt Anwendungen und persönlicher Daten mit sich herumtragen. Konkret handelt es sich dabei um Dozenten. Um nun zu vermeiden, dass ein Schüler mit einem geklauten Stick etwas anfangen könnte soll neben einem verschlüsselten Dateisystem der Stick mit der Hardware verheiratet sein und das System – auf andere USB-Sticks kopiert – nicht funktioniert, um nicht zu Hause in Ruhe die sensiblen Daten des Lehrers auswerten zu können. Am Kiosk-System selbst können Schüler nicht unbeaufsichtigt arbeiten.

Jemand eine Idee, wie man ein Live-System mit Hardware verheiraten kann?

6 Antworten
Michael (Majestyx) Kappes - Freitag, 13. August 2010 14:07 Uhr

dem usb stick ne Systempartition geben und das System non persistent drauf packen. dann kann der User „nur“ in seiner crypto-Partition Daten speichern.

nur so ´ne idee…

Helmut - Sonntag, 15. August 2010 19:35 Uhr

Das OS getrennt verschlüsseln. Die /home/doz erst beim einloggen entschlüsseln. Es gibt da viele Anleitungen im Netz wie das mit pam etc. zu lösen ist.

Rico Rommel - Dienstag, 17. August 2010 21:33 Uhr

Das dürfte auch nichts bringen. Wenn der Übeltäter eine 1:1 Kopie des USB-Sticks zieht, hat er alle Zeit der Welt, die Daten zu entschlüsseln.

Soweit ich weiß, unterstützen SD-Karten DRM, welches man sicherlich zur Hardwareverdongelung „missbrauchen“ könnte.
Laut Wikipedia sind die Spezifikationen aber nicht offen.

GoaSkin - Mittwoch, 18. August 2010 11:52 Uhr

Letztendlich ist es Aufgabe des Lehrers, die Schüler zu beaufsichtigen und auch darauf zu achten, dass sie keinen Mist am System bauen.
Wie das aber so ist – niemand hat vorne und hinten sechs Augen.
Es muss kein bombensicherer Schutz her, bei dem jeder professionelle Hacker lange herumrätseln muss. Es geht mehr darum, dass der Schüler mit seinem Alltagswissen dem Lehrer die Daten nicht klauen kann, weil es sich gerade mal so anbietet und eigentlich ganz lustig ist.
Mit einem geklauten Stick würden die meisten Schüler eh eher Ball spielen oder ihn mit Kaugummi an den Tisch kleben oder so etwas in der Art. Mit einer geringeren Wahrscheinlichkeit würde er mit nach Hause genommen werden oder schnell an den eigenen Laptop angeschlossen werden, um zu schauen, was da so drauf ist. Ein verschlüsseltes Dateisystem ist langweilig und für alles Weitere sind die meisten zu faul.
Wer es darauf anlegt, das System zu knacken, der muss eine solche Aktion geplant durchführen, was im Schulalltag auch zu größeren Konsequenzen führen kann und nicht mehr als pubertäre Kinderrei abgetan wird.

Es geht darum, die wesentlichen Dinge, die Schüler so bringen, zu vermeiden und einen Datenklau nicht gerade einladend zu gestalten.

Philipp Klaus - Montag, 23. August 2010 10:58 Uhr

Ich glaube, Du suchst zu weit: Wenn das System (ausser der Boot-Partition) verschlüsselt ist, braucht es keinen weiteren Schutz. Voraussetzung ist allerdings, dass der Schlüssel NICHT auf der Boot-Partition gespeichert ist, sondern vom Dozenten beim Booten jedesmal eingegeben wird. In einem solchen Fall kann kein auch noch so gewitzter Schüler ohne social Engineering auf die Daten zugreifen.

Muss die Convenience vorgehen (sprich: der Schlüssel auf dem Stick gespeichert sein, damit das Booten ohne Passwort-Eingabe funktioniert), dann nützt die Verschlüsselung gelinde gesagt nicht sehr viel. Es macht auch nicht viel Sinn, das Auto abzuschliessen, aber den Schlüssel aussen stecken zu lassen.

Ugglan - Sonntag, 15. August 2010 22:01 Uhr

Hallo,

der Autor des jüngsten .lnk-Wurms soll sowas gemacht haben 🙂
Angeblich fragt der Wurm die Hardwarekennung ab und verweigert den Dienst, wenn er nur auf einen anderen Stick kopiert wird (anstatt diesen selbst infiziert zu haben).

Im einfachsten Fall baust Du also irgendwo im Bootvorgang, vielleicht geht das sogar schon in Grub, eine Abffrage der USB-Stick-ID ein. Wird das System auf ein anderes Medium kopiert, wird der Boottvorgang abgebrochen, oder von internen Festplatte gebootet etc.

Es liegt an Deinen Fähigkeiten, wie tief Du eine solche Abfrage in das Live-System eingraben willst, schließlich muss diese für jeden Stick neu angpasst werden.

Bei einem Opensource-System ist sowas aber naturgemäß nur „Security by Obscurity“ und kann mit genügend Wissen und Aufwand immer geknackt werden. Und der Originalstick ist immer noch ungeschützt.

Hoffe, das hilft Dir weiter.

Gruß

Ugglan

Frank Schmiedel - Mittwoch, 18. August 2010 09:26 Uhr

Sollte ein Schüler einen Stick klauen, ist es dann nicht irrelevant, ob das LifeSystem mit dem Stick verheiratet ist oder nicht? Schützen würde dieser Umstand die Inhalte sicher nicht.

GoaSkin - Mittwoch, 18. August 2010 11:37 Uhr

Hallo,

das Ziel soll es sein, dass man mit dem Stick auf einem anderen System als dem Vorgesehenen nichts anfangen kann, außer uninterpretierbare Daten vorzufinden. Neben dem Verschlüsseln von Partitionen ist es dazu erforderlich, dafür zu sorgen, dass das Booten des Live-Systems an Bedingungen geknüpft ist, die nur ein ganz bestimmtes System erfüllt. Schließlich findet man sobald das System hochgefahren ist trotz verschlüsseltem Dateisystem lesbare Dateien vor. Und wenn der USB-Stick überall starten könnte, dann bringt auch ein verschlüsseltes Dateisystem nichts. Von daher braucht man nach meiner Ansicht sowohl Verschlüsselung als auch Verheiratung (z.B. Prüfung nach bestimmten USB-Geräte-IDs, die vorhanden sein müssen) – oder gibt es ganz andere Ansätze für so etwas?

Klar würde es für einen professionellen Hacker einen Weg geben, auch dann ohne Schul-PC an die Daten heranzukommen. Es geht mehr darum, dass die Schüler nicht „mal schnell“ mit ihrem Alltagswissen die Daten wegkopieren können, bevor der Lehrer es merkt.

Martin Weißhaupt - Donnerstag, 19. August 2010 13:17 Uhr

Das System zu verheiraten stelle ich mir recht schwierig vor, besser wäre es einfach die Daten zu verschlüsseln.

Da gibt es viele Möglichkeiten aber ich persönlich bevorzuge die Methode mit Cryptkeeper
http://www.linux-community.de/Internal/Artikel/Print-Artikel/LinuxUser/2010/07/Dateiverschluesselung-mit-EncFS-und-Cryptkeeper

Ugglan - Donnerstag, 19. August 2010 19:14 Uhr

Wenn das System vom Stick eh nur auf einer begrenzten Zahl von Rechnern lauffähig sein soll, könntest Du den Bootloader statt auf dem Stick gleich auf diesen Rechnern installieren. Damit ist der Stick ebenso wie Kopien davon woanders nicht lauffähig. (Oder kannst/willst Du die Rechner nicht modifizieren?)

Also in der Art:
– Rechner bootet von Festplatte
– Bootmanager des Rechners sucht zuerst nach USB-Stick mit spezieller Kennung
– wenn der gefunden ist, wird das System vom Stick gebootet, wenn nicht, das auf der Platte.

Frage an die Crypto-Experten: könnte der Bootloader des Rechners auch die Systempartition entschlüsseln, oder muss dafür erst das OS hochgefahren werden? Im ersten Fall wären auf dem Stick keinerlei unverschlüsselte Daten nötig.

Gruß

Ugglan

Deine Antwort