Alternativen zu TMP Chips

Gast #5975197
Lesenswert?

Hallo Microcontroller.net Community,

angenommen ich hätte eine Embedded System Anwendung umgesetzt, welches 
an einem öffentlich zugänglichen Ort arbeitet. Nun möchte ich 
sicherstellen, dass die Hardware und die Software nicht manipuliert 
wurden. Welche Möglichkeiten habe ich dann?

Mir sind bisher nur TMP Chips bekannt. Gibt es Alternativen?


Ich erhoffe mir eine Art von Übersicht an Hardwaremodulen oder 
Softwaretechniken, mit denen ich die 'Unverändertheit' des Embedded 
Systems verifizieren kann.


Ein Beispielszenario wäre ein Microprozessorsystem mit einem 
Kameramodule zur Überwachung eines öffentlichen Gebäudes.
Gast #5975242
Lesenswert?

bouldrini schrieb:
> Nun möchte ich
> sicherstellen, dass die Hardware und die Software nicht manipuliert
> wurden. Welche Möglichkeiten habe ich dann?
>
> Mir sind bisher nur TMP Chips bekannt. Gibt es Alternativen?

Ein TMP-Chip wird diese Aufgabe, so allgemein wie du sie formuliert 
hast, überhaupt nicht gewährleisten können.

Woher soll das System wissen, dass du z.B. einfach irgendwo einen 
Serienwiderstand entfernst oder eine Leitung aufkratzt und dich an den 
I2C hängst?

Um diese Frage beantworten zu können, musst du ganz konkrete (sehr sehr 
konkret) Fragen stellen. Du musst genau wissen, welchen Use-Case / 
Manipulationsversuch du mit einer Lösung verhindern willst. Das geht 
auch nur wenn du das Gerät natürlich konkret kennst.

Das fängt mit so grundsätzlichen Fragen an:
Wo ist es verbaut?
Wer hat Zugang?
Kann man das Gehäuse öffnen? Wie? Mit Schlagbohrer oder reicht 
Schraubenzieher? Kann man eine Öffnung des Gehäuses immer zweifelsfrei 
erkennen?
....
Gast #5975327
Lesenswert?

... schrieb:
> TMP, hier wird mal wieder etwas diskutiert was es gar nicht gibt.
> Das Ding heisst TPM.
>
> Mit solcher Ahnungslosigkeit muss man sich um den allerdings
> ueberhaupt keine Gedanken machen.

Ein belangloser Tippfehler.

Hast übrigens die ü-Taste nicht gefunden?
Moderator (Firma: Titel) Persönliche Seite #5975348
Lesenswert?

bouldrini schrieb:
> Nun möchte ich sicherstellen, dass die Hardware und die Software nicht
> manipuliert wurden. Welche Möglichkeiten habe ich dann?
Das kommt auf die Hardware an. Und welche Art der Manipulation du 
erkennen willst.
Zum Schutz gegen Nachbauten kann man z.B. was mit OneWire SHA-Bausteinen 
was machen. Dann läuft die entsprechend programmierte Software nicht, 
wenn sie nicht auf der richtigen Hardware sitzt:
https://www.maximintegrated.com/en/products/embedded-security/secure-authenticators/DS28E10.html

> Ein Beispielszenario wäre ein Microprozessorsystem mit einem
> Kameramodule zur Überwachung eines öffentlichen Gebäudes.
Mir fällt gerade schwer, mir vorzustellen, was man da manipulieren 
können wollte und sollte.
Der Witz ist doch, dass die Schnittstelle nach aussen durch ein 
schlaues, verschlüsseltes Protokoll geschützt werden muss, damit nicht 
einer wie in billigen Hollywoodfilmen mit dem Videorecorder die 
Aufnahmen vom Vortag einspielen kann.
Und vor Allem: wenn die Kameras schlau installiert sind, dann beobachten 
sich die Kameras gegenseitig, sodass eine Manipulation daran erkannt 
werden könnte, dass einer sich an einer der Kameras zu schaffen macht.
Gast #5975406
Lesenswert?

bouldrini schrieb:
> Nun möchte ich
> sicherstellen, dass die Hardware und die Software nicht manipuliert
> wurden. Welche Möglichkeiten habe ich dann?

Hardware: Vergussmasse. Beim Gehäuse alles was man als vandalismussicher 
oder einbruchshemmend bezeichnet, bis hin zu mit Schutzgas füllen und 
Druckverlust messen.

100% Manipulationssicherheit gibt es nicht. Zum Beispiel werden 
Geldautomaten durch Sprengungen "manipuliert".

Software: Keine schreibbaren oder veränderbaren Speichermedien für die 
Software und Konfigurationsdaten. Keine Firmwareupdates erlauben (ein 
Softwareupdate bedeutet die Hardware wird ersetzt und die alte 
weggeworfen). Kein Netzwerk-Anschluss wenn es sich irgendwie vermeiden 
lässt. Einen ganzen Zoo von Verschlüsselungstechniken, in dem 
Zusammenhang kann man dann über ein TPM nachdenken. Benutzereingabe und 
externe Daten 1001mal prüfen. Alle Regeln zum Schreiben fehlerfreier 
Software befolgen (viel Spaß ...)
#5975470
Lesenswert?

Willst du einen Einbruch nur erkennen oder auch verhindern?

Dann kann man natürlich einen sicheren Safe bauen, aber der hat dann 
keine Tür oder sonstigen Zugänge. Leute sollen aber deine Software 
benutzen also muss die Tür doch ein wenig offen sein. Man könnte die 
Hardware ausser Reichweite anderer Menschen aufstellen. Voyager 1 ist 
derzeit ziemlich tamperproof.

Einbruchsversuche erkennen ist einfacher, da ist es üblich die Hardware 
zu vergießen und in die Vergussmasse z. B. ein Metallnetz zu legen oder 
einen langen dünnen Draht oft um die Hardware zu wickeln der 
ununterbrochen bleiben muss.

Buchempfehlung:
Security Engeneering von Ross Anderson
Die wichtigste Lektion daraus ist eigentlich, dass du dich festlegen 
musst gegen was und wen und vor allem gegen welches Angriffsbudget du 
schützen willst. Gegen Amateure ohne Budget kann man sehr einfach 
schützen und hat so vermutlich >90% der Angriffe abgedeckt. Aber gegen 
Profis mit großem Budget ist es dann auch fast beliebig schwer. Diese 
sind aber eher selten.
Eine weitere Lektion ist, dass man keine groben Lücken vergessen sollte. 
Es bringt nichts die Haustür aus dickem Stahl zu bauen wenn die anderen 
Familienmitglieder nur selten abschließen oder man jedem die Tür öffnet 
der klingelt.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren