Alternativen zu TMP Chips

Gast #5975197
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
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
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.
Gast
... 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
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
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ß ...)
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

Eine eigene Frage? Dieser Thread ist über 7 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.