Angenommen ich möchte ein secures System auf einer MCU implementieren.
Es gibt dann für verschiedene Schnittstellen verschiedene
Schlüsselmaterialien (symmetrisch, unsymmetrisch, Zertifikate, ...) um
mit entfernten Partnern geheime Daten auszutauschen. Die Schlüssel muss
ich ja irgendwo hinterlegen, z.B. im internen Flash - und alle mit einem
Master Key verschlüsselt, der einmalig bei der Produktion individuell
generiert wird. Würde es nun als "sicher" gelten, einen solchen geheimen
Master-Key im internen Flash zu hinterlegen? Das interne Flash ist über
JTAG auslesbar. Wenn ich die JTAG Schnittstelle deaktiviere, wäre eine
derartige Ablage dann "sicher" oder sollte man besser Krypto-Chips
verwenden?
Es geht mir weniger um einen konkret zu erwartenden Hackversuch,
sondern, ob man bei einem streng angsetzten Security-Audit mit so einer
Lösung durchkommt.
Was wäre hier die "state of the art" Methode?
Vielen Dank !
die Frage ist, wie sicher?
A. wie viel sind die infos wert? Wie viel würde der gegner in angriffe
investieren?
Sicher gibts nicht.
B. wie gut wird das implememtiert? Nicht dass die keys mit nem billigen
exploit rausgesendet werden?
C. Selbst das recht sicherste vorgehen mit anti tamper kontakten und
security mikrocontroller mit self destruct pin hat jemand mit etwas
bastelerfahrung in wenigen tagen beim zweiten versuch überbrückt.
D. niemals globale private schlüssel in irgend einem syatem aus der hand
geben
E. Schlüssel gehören nie in die Hand von mitarbeitern oder auf pcs mit
netzwerkverbindung, egal wie gut die firewall ist.
Wenn man individuelle schlüssel aufbewahren will ab damit ungesehen in
eine verschlüsselte datenbank. Den Schlüssel darfst du dir meinetwegen
in die Arschritze tatoovieren lassen :)
Marian . schrieb:> Bei einer so ungenau gestellten Frage, ist eine Antwort unmöglich.
Da es um ein Konzept geht, ist die Fragestellung noch sehr allgemein.
Die Erfahrung der Vergangenheit hat gezeigt, dass man von
Sicherheits-Audits nach Strich und Faden zerlegt wird. Ich persönlich
glaube ohnehin nicht, dass es einem Hacker Wert sein könnte, mehr als
100€-1000€ zu investieren, um in den Besitz von Daten einer
Hardware-Plattform zu gelangen. Es geht hier auch nicht darum, wie die
privaten Schlüssel in einer Infrastruktur hinterlegt werden, sondern wie
man die Daten schützt, die man z.B. im Flash des Gerätes speichert.
Jemand könnte ein Gerät stehlen, den Chip auffeilen und den Flash
auslesen, um persönliche Daten herauszufinden. Deshalb wird man die
Daten im RAM/Flash wohl verschlüsseln müssen. Wie sichere ich aber den
Schlüssel, mit dem das geschieht?
Michael W. schrieb:> den Chip auffeilen und den Flash> auslesen, um persönliche Daten herauszufinden.
sag das doch gleich.
Du willst z.B. einen Atsha204a
Batteriegestütztes SRAM ist auch ganz praktisch.
Michael W. schrieb:> Das interne Flash ist über JTAG auslesbar.
Bei gesetzten Lock- oder Security-Bits normalerweise nicht mehr.
Aber das ist natürlich eher eine Grundsicherung, gegen aufwändigere
Hacks hilft das nur begrenzt.
Flip B. schrieb:> Du willst z.B. einen Atsha204a
Oder einen seiner Geschwister (ATECC508A, ATAES132).
Infineon baut wohl auch eine Reihe von Controllern, die so geheim
sind, dass man gerade noch so erfährt, dass es sie gibt … (Vielleicht
sollte denen mal jemand sagen, dass Security by Obscurity noch nie
ein sinnvolles Konzept war?)
Jörg W. schrieb:> Infineon baut wohl auch eine Reihe von Controllern, die so geheim> sind, dass man gerade noch so erfährt, dass es sie gibt … (Vielleicht> sollte denen mal jemand sagen, dass Security by Obscurity noch nie> ein sinnvolles Konzept war?)
Nunja, Security by Obscurity würde ich zumindest Infineon (und NXP)
nicht vorwerfen, beide Hersteller haben meiner Erfahrung nach ihre
Hausaufgaben mittlerweile gemacht. Das Problem ist eher, dass diese
Controller teilweise bzgl. Security zertifiziert werden und es, je nach
Zertifizierung, gefordert sein kann, dass jegliche Doku nur gegen NDA
herausgegeben wird.
Daniel H. schrieb:> Das Problem ist eher, dass diese Controller teilweise bzgl. Security> zertifiziert werden und es, je nach Zertifizierung, gefordert sein kann,> dass jegliche Doku nur gegen NDA herausgegeben wird.
Wie auch immer, ist es albern. Wenn der Algorithmus nicht sicher wäre,
dann hilft auch der NDA-Mist nicht.
Man verringert dadurch halt die Angriffsfläche. Wenn ein Angreifer gar
nicht erst Schnittstellen, Pinbelegung usw. kennt dann hat er einen
deutlich erhöhten Aufwand für einen Angriff, insbesondere wenn die
Hardware dann noch Gegenmaßnahmen wie Tamper-Detection usw. hat welche
bei Erkennung eines Angriffs sofort jegliches Schlüsselmaterial löschen.
Daniel H. schrieb:> Man verringert dadurch halt die Angriffsfläche.
Mit Verlaub, das ist Quatsch, so einen Humbug können sich bestenfalls
ein paar Sesselpupser einreden. Wenn man mit ein paar Tausendern
irgendwo in Fernost sogar Chips freiätzen und analysieren lassen kann,
dann bekommt man das stolze „NDA-only“-Datenblatt vermutlich schon für
ein paar Hunderter auf dem Schwarzmarkt. Wenn also jemand hinreichend
kriminelles Interesse hat, dann wird er das bekommen – und die, die
da nur mal reingucken wollen (ohne kriminellen Hintergrund), die sind
sowieso irrelevant.
Man verringert also bestenfalls die „Marge“ der Kriminellen damit.
Du musst Dir die Frage anders stellen:
1. wie wichtig sind die Informationen, die ich schützen will?
2. muss ich vielleicht nur die Zugänge schützen (sprich: nur
"gesicherte" IOT-Devices dürfen mit einer zentralen Anlage
kommunizieren)?
3. kann ich mit wirtschaftlich vertretbarem Aufwand einen Schutz
implementieren?
Für Frage 2 kämen z.B. Kryptodevices in Betracht; die kosten nicht mehr
viel; für den Rest muss man auf die Bordmittel wie die eben
angesprochenen Lockbits zurückgreifen
Und für die "scharfen" Auditoren: leg ihnen ein Konzept vor, nach dem Du
die Punkte auflistest und bewertest und letztendlich vom Chef die
Risikobewertung und Restrisikoübernahme unterschreiben läßt. Und lass es
Dir nicht zerreden
Aus Erfahrung:
Wenn jemand genügend know-how und Geld mitbringt, um die Devices
abzuschleifen und über Leistungsmessungen Schlüssel auslesen kann, hat
er auch noch ganz andere und auch billigere Mittel, um an Informationen
heranzukommen oder Sabotage zu betreiben. Fängt mit Trojanermails an und
hört mit Becircen der Sekretärin auf. Die Kriminellen müssen schließlich
auf betriebswirtschaftlich denken....
In diesem Sinne
Joachim
Flip B. schrieb:> D. niemals globale private schlüssel in irgend einem syatem aus der hand> geben>> E. Schlüssel gehören nie in die Hand von mitarbeitern oder auf pcs mit> netzwerkverbindung, egal wie gut die firewall ist.
so ein Unsinn. Auf jeden Personalausweis, EC-Karte, Signaturkarten und
jedem TPM-chip haben Private Schlüssel. Das ist ja auch sinn des ganzen.
Wie sollen sonst die Daten verschlüsselt werden?
"[...]mit ein paar Tausendern irgendwo in Fernost sogar Chips freiätzen
und analysieren lassen kann[...].
Also meinem Wissen nach kostet so eine Leistung in der Regel unter 1000
EUR für die gängigen Mikrocontroller. Schaut z. B. hier:
russiansemiresearch.com
Michael W. schrieb:> Es geht mir weniger um einen konkret zu erwartenden Hackversuch,> sondern, ob man bei einem streng angsetzten Security-Audit mit so einer> Lösung durchkommt.
wenn du bei der Software keine Fehler machst, dann sind die Chips immer
noch Physikalisch angreifbar. Security-Chips haben dagegen spezielle
Schutzmaßnamen. (Metallgitter über den Speicher, Sensoren die auf Licht
reagieren usw.).
Dann kannst du noch Fehler bei der Software machen, die dazu führt das
man anhand der Stromaufnahme oder der Zeit Rückschlüsse auf den
Schlüssel zulassen.
Man könnte es etwas sicher hinbekommen, wenn der Schlüssel nur im Ram
ist. Sobald jemand den Chips vom Strom trennt wird er gelöscht.
Aber Security-Chips sind mittlerweile auch nicht mehr so teuer, die sind
dann auf jeden Fall sicherer.
Michael W. schrieb:> Was wäre hier die "state of the art" Methode?
Man kann jeden Chip komplett zerlegen und herausfinden wie er arbeitet,
alles eine Frage des Aufwandes.
http://www.break-ic.com/https://events.ccc.de/congress/2008/Fahrplan/events/2896.en.htmlhttp://zeptobars.com/en/read/FTDI-FT232RL-real-vs-fake-supereal%20this%20deep-down
Die Leute nehmen Chips aus dem Plastikgehäuse, schleifen ihn
schichtenweise ab um die Chipschaltung abzulesen, beobachten einen
laufenden Chip unter einer Art Elektronenmikroskop um zu sehen, welche
Leiterbahnen wann unter Spannung stehen und schlussfolgern daraus das
Programm das abläuft.
Kreditkartenchips sind state of the art.
Das Flash alleine reicht nicht.
Das kann ausgelesen werden, oder gezielt gelöscht werden.
Man deckt den Flash metallisch ab und erkennt wenn die Metallisierung
zerstört wird.
Michael B. schrieb:> Man deckt den Flash metallisch ab und erkennt wenn die Metallisierung> zerstört wird.
Wir haben doch weiter oben schon erfahren, dass sowas gar nichts bringen
kann, denn:
Jörg W. schrieb:> Mit Verlaub, das ist Quatsch, so einen Humbug können sich bestenfalls> ein paar Sesselpupser einreden. Wenn man mit ein paar Tausendern> irgendwo in Fernost sogar Chips freiätzen und analysieren lassen kann,> dann bekommt man das stolze „NDA-only“-Datenblatt vermutlich schon für> ein paar Hunderter auf dem Schwarzmarkt. Wenn also jemand hinreichend> kriminelles Interesse hat, dann wird er das bekommen – und die, die> da nur mal reingucken wollen (ohne kriminellen Hintergrund), die sind> sowieso irrelevant.
Das ist wahrscheinlich auch der Grund, warum der Markt seit Jahren mit
gefälschten/kopierten Smartcard-Chips usw. geflutet wird. Das ist alles
so einfach und so billig, das kriegt sogar Lieschen Müller aus dem
Tante-Emma-Markt um die Ecke hin ;)
Es ist nicht so (und das habe ich auch nicht behauptet), dass die
kontrollierte Verteilung der Doku unter NDA ausreicht um die Sicherheit
eines Controllers sicherzustellen. Dass die Doku auf dem Schwarzmarkt
gehandelt wird kann man dadurch sicher nicht vollständig ausschließen.
Man kann aber die Hemmschwelle für die unkontrollierte Weiterverbreitung
durch NDAs und personalisierte Dokumente erhöhen. Man muss sich vor
Augen führen, dass jede Erhöhung des Angriffsaufwandes dazu führt, dass
man die Gruppe der Angreifer reduziert. Der Hobbybastler wird wohl eher
nicht versuchen seine Kreditkarte zu knacken wenn er keinerlei Doku hat
und es riskieren müsste, die Karte dauerhaft zu schädigen.
Wenn ein Hersteller einen 0815-Controller nimmt und diesen als
Securitycontroller deklariert nur weil die Doku unter Verschluss
gehalten wird, dann ist das aber natürlich naiv und dumm.
Daniel H. schrieb:> Man kann aber die Hemmschwelle für die unkontrollierte Weiterverbreitung> durch NDAs und personalisierte Dokumente erhöhen.
Genau das stelle ich als Prinzip in Frage.
Man schränkt den Kreis derer ein, die das zu Gesicht bekommen, aber
nicht um diejenigen, die es wirklich ernst damit meinen, die also
kriminell genug sind. Diejenigen sind aber die tatsächliche Gefahr.
> Das ist wahrscheinlich auch der Grund, warum der Markt seit Jahren mit> gefälschten/kopierten Smartcard-Chips usw. geflutet wird.
Warum musst du mir deshalb Worte in den Mund legen, die ich so nicht
geschrieben habe?
Wenn es ebendiese gefälschten Chips nicht gibt, dann ist das ein
Zeichen für die hinreichend gute Implementierung der entsprechenden
Chips, nicht jedoch dafür, dass die blöde Geheimninskrämerei was
bringen würde.
Gute Kryptographie hat sich schon immer dadurch ausgezeichnet, dass
man trotz exakter Kenntnis des Algorithmus keine nennenswerte Chance
hat, das zu knacken.
Und wie gewährleistet man während des Auslesens eines Crypto-Chips, dass
niemand an der Schnittstelle mithört? Letztendlich muss ein darin
gespeicherter Key ja über irgendeine Schnittstelle (SPI, I²C) übertragen
werden, damit er in der Software verwendet wird.
Oder habe ich hier etwas falsch verstanden?
Michael W. schrieb:> Oder habe ich hier etwas falsch verstanden?
ja hast du, die KEY wird nie nach extern übertragen. Die Karte übernimmt
die Verschlüsselung.
Michael W. schrieb:> Oder habe ich hier etwas falsch verstanden?
Ja. Eine HTTP/S- oder SSH-Sitzung kannst du auch mitschneiden,
trotzdem kannst du mit dem Inhalt nichts anfangen.
Jörg W. schrieb:> Michael W. schrieb:>> Oder habe ich hier etwas falsch verstanden?>> Ja. Eine HTTP/S- oder SSH-Sitzung kannst du auch mitschneiden,> trotzdem kannst du mit dem Inhalt nichts anfangen.
dann ist es schon wieder unsicher. Dann der Chip der den anderen
ausließt braucht nur manipuliert zu werden schon man den Privaten
Schlüssel.
Er darf den Kryptochip NIE verlassen!
Jörg W. schrieb:> Daniel H. schrieb:>> Man kann aber die Hemmschwelle für die unkontrollierte Weiterverbreitung>> durch NDAs und personalisierte Dokumente erhöhen.>> Genau das stelle ich als Prinzip in Frage.
NDAs dienen doch eher einer rechtlichen Absicherung bzw. einem
Drohszenario.
Wenn jemand das Design nach Datenblatt kopiert, hat er entweder selbst
gegen das NDA verstoßen oder er hat sich Unterlagen beschafft die er
ganz eindeutig nicht haben durfte.
Schön sind auch Formulierungen das Informationen aus den Unterlagen
nicht gegen den Herausgeber verwendet werden dürfen.
So läßt sich ein wenig Gegendruck aufbauen wenn man durch die Unterlagen
quasi eine Patentverletzung eingestehen muß.
Es gibt auch viele Möglichkeiten NDAs so zu personalisieren das ich eine
Kopie immer noch dem ursprünglichen Empfänger zuordnen kann, ohne das
das einem nicht Eingeweihten auffallen würde.
Natürlich sind NDAs arbeitsbehindernder Zirkus den ich wenn irgend
möglich vermeide. Ich habe bisher noch nichts gesehen was so
schützenswert gewesen wäre das diese Geheimnisskrämerei gerechtfertigt
gewesen wäre.
Ein Securityaudit übersteht man ganz leicht, wenn man keine
personenbezogene Daten speichert :-)
Um welche Daten geht es hier? Firmengeheimnisse oder Daten von externen
Kunden?
VS-NfD sagt zum Beispiel aus, dass jemand nur die Daten bekommt, die er
auch für seine Tätigkeit benötigt (sinngemäß).
Oder geht es hier um technische Sicherheit, wie z.B. sichere Übertragung
von WLAN Passwörtern?
Gib uns bitte mehr Informationen.
P.S.: Macht euch um die Chips hier nicht so viele Gedanken. Wenn die
Daten über eine ungesichterte Schnittstelle kommen, brauch man nicht
einmal das Gehäuse zu öffnen.
Pete K. schrieb:> Gib uns bitte mehr Informationen.
Dies.
Nichts gegen den Themenersteller, aber als Anfänger auf dem Gebiet (der
er wohl ist) ist die Wahrscheinlichkeit nicht gering, dass das Ganze in
die Hose geht. Da kann man nur hoffen dass in dem entsprechenden Projekt
auch erfahrene Leute mit drin sind.
Jörg W. schrieb:> Ja. Eine HTTP/S- oder SSH-Sitzung kannst du auch mitschneiden,> trotzdem kannst du mit dem Inhalt nichts anfangen.
Ich glaube, das sieht die NSA anders...
Michael B. schrieb:> Jörg W. schrieb:>> Ja. Eine HTTP/S- oder SSH-Sitzung kannst du auch mitschneiden,>> trotzdem kannst du mit dem Inhalt nichts anfangen.>> Ich glaube, das sieht die NSA anders...
Es gibt keine Anhaltspunkte, dass SSH irgendwie geknackt wäre.
Wo ich dir recht gebe ist, dass die Internet-PKI so stümperhaft verkackt
wurde, dass man da von Absicht ausgehen muss.
Und auch SSL/TLS erweckt oft eher den Eindruck von Laien und Stümpern in
Protokolldesign u.v.a. -Implementierung. Gute TLS-Bibliotheken, die man
auf den Endgeräten entsprechend verrammelt, um all die
Downgrading-Angriffe etc. zu umgehen, und mit einer eigenen, privaten
PKI genutzt wird, dürfte sicher sein.
Peter II schrieb:> so ein Unsinn. Auf jeden Personalausweis, EC-Karte, Signaturkarten und> jedem TPM-chip haben Private Schlüssel.
Aber keine globalen Schlüssel.
Andernfalls würdest Du mit dem erfolgreichen Crack eines einzigen
Personalausweises die ganze Bundesdruckerei samt aller je ausgegebener
Ausweise kompromittieren
Ein großer Angriffsvektor sind auch Firmwareupdates. Was hilft der beste
verschlüsselte Flash, wenn man sich die Firmware zum Updaten runterladen
und die im Hex-Editor anschauen kann.
123 schrieb:> Ein großer Angriffsvektor sind auch Firmwareupdates. Was hilft der beste> verschlüsselte Flash, wenn man sich die Firmware zum Updaten runterladen> und die im Hex-Editor anschauen kann.
Die Firmware wird wahrscheinlich auch in irgend einer Weise
verschlüsselt sein wenn schon so ein Aufwand getrieben wird.