Bundesamt für Sicherheit in der Informationstechnik

G 5.203 Physikalischer Eingriff in ein eingebettetes System

Wenn Angreifer in den Besitz eines eingebetteten Systems gelangen, können sie mittels physikalischer Verfahren Daten lesen und manipulieren. Dieser Angriff erfordert das Chipgehäuse zu öffnen, um an das Substrat zu gelangen. Er kann nur durch Experten mit entsprechender Laborausstattung durchgeführt werden. Eine typische Vorgehensweise, mittels derer in der Vergangenheit bereits diverse Sicherheits-Chips geknackt worden sind, setzt an der Chipvorderseite an. Die Kontakte und Schaltkreise werden dazu schichtweise freigelegt. Danach dann wird der Schaltkreis mit Laserstrahlen oder feinen Drähten analysiert und manipuliert. Diese Vorgehensweise ist bei Sicherheitschips so nicht mehr möglich, da Hersteller inzwischen Metallisierungsebenen, sogenannte Meshes oder Shields einfügen um sicherzustellen, dass niemand von der Vorderseite auf den Schaltkreis zugreift.

Bei Chips, die noch unzureichend geschützt sind, kann ein Reverse-Engineering beginnend mit dem physischen Zugang erfolgen. Im ersten Schritt wird dazu der Halbleiter aus dem Gehäuse freigelegt, beispielsweise chemisch mittels Salpeter- oder Schwefelsäure (HNO3 oder H2SO4). Eine anschließende Reinigung kann mittels Aceton und Ultraschall erfolgen. Professionelle Angreifer könnten auch über eine Maschine verfügen, die den Halbleiter mittels eines HNO3-Dampfstrahls herauslöst. Dadurch würden die Abdeckschichten und gleichzeitig die Lösungsreste besser entfernt werden. Als nächstes werden die verschiedenen Ebenen des Chips freigelegt. Dazu können mechanische Verfahren wie Abschleifen und Polieren und chemische Verfahren wie Flourwasserstoffgas bzw. Flusssäure kombiniert werden. Die Chipebenen können dann Schicht für Schicht mit einem Mikroskop aufgenommen und begutachtet werden. Es gibt zahlreiche weitere Einstiegspunkte zum Reverse Engineering und viele Forschungsarbeiten sind noch im Gange. Ein Beispiel dafür ist der Einsatz eines Infrarotlasers, bei dem die Wellenlänge so gewählt wird, dass das Silizium dafür durchscheinend wird. Dadurch ist es möglich den individuellen Zustand eines Transistors festzustellen. Bei einem anderen Verfahren wird ein dünner Film aus Palladium oder Gold aufgebracht. Dieser Film bildet mit dem Siliziummaterial, aufgrund des Schottkyeffekts, je nach Dotierung des Untergrunds, eine Diode. Diese Dioden können mit einem weiterentwickelten Elektronenmikroskop erkannt und mit spezieller Software ausgewertet werden.

Von der Rückseite her einzudringen galt lange als nicht praktikabel. 2013 haben Forscher allerdings gezeigt, dass auch dies möglich ist indem die relativ dicke Schicht Silizium über den Transistoren kontrolliert abgetragen wird. Mit einer Ionenfeinstrahl-Anlage wird weiter ausgedünnt, soweit dass auf den Strukturen die einzelnen Transistoren erkennbar sind. Es können auch neue Verbindungen geschaffen oder vorhandene getrennt werden. Beispielsweise könnte ein im Chip vorhandener Einbruchssensor abgetrennt werden. Mit weiteren Messgeräten ist es möglich, Informationen die auf dem Schaltkreis übertragen werden mitzulesen, also grundsätzlich auch einen geheimen Schlüssel. Grundsätzlich ist auch das Einschleusen von Signalen möglich sowie ein Zugriff auf nicht sicher gelöschte Daten.

Ein weiteres Beispiel für einen Angriff, der einen Sicherheitsmechanismus aushebelt, richtet sich gegen das Sicherheitsbit, welches in einigen Mikrocontrollern verwendet wird. Wenn dieses gesetzt ist, verhindert es den externen elektrischen Zugriff zum Programmspeicher und soll erst durch die vollständige Löschung des Programmspeichers zurückgesetzt werden können. Bei Mikrocontrollern mit EPROM und genügend großem Abstand der Sicherheitsbitzelle vom Rest des Speichers kann es aber mittels UV -Licht zurückgesetzt werden, das auf die Sicherheitsbitzelle gerichtet wird.

Angreifer können versuchen mittels Extremwerten bei Eingabedaten abnorme Effekte zu produzieren. Durch Extremwerte an den Ober- und Untergrenzen des Wertebereichs von Variablen kann ein nicht sorgfältig programmiertes eingebettetes System zum Absturz gebracht oder es können Fehlfunktionen hervorgerufen werden. Werte in der Nähe von Null können zu einer Division durch Null und somit einem Fehlverhalten oder gar zum Absturz des Systems führen. Die Ursachen können z. B. in Rundungsfehlern, besonderen Prozessoreigenschaften oder der verwendeten Arithmetik liegen.

Stand: 15. EL Stand 2016

Hinweis zur Verwendung von Cookies

Um unsere Webseite für Sie optimal zu gestalten und fortlaufend verbessern zu können, verwenden wir Cookies. Durch die weitere Nutzung der Webseite stimmen Sie der Verwendung von Cookies zu. Weitere Informationen hierzu erhalten Sie in unserer Datenschutzerklärung.

OK