Ganzheitliche End-to-End-Sicherheit für Embedded-Systeme

Von Cliff Ortmeyer * |

Anbieter zum Thema

Embedded-Systeme müssen dringend unter Beweis stellen, dass sie keineswegs leichte Beute für Angreifer sind. Wie dies gelingen kann, erfahren Sie in diesem Beitrag.

Root-of-Trust: Nur autorisierte Personen können wichtige Änderungen an Firmware oder Daten eines Embedded-Systems vornehmen.
Root-of-Trust: Nur autorisierte Personen können wichtige Änderungen an Firmware oder Daten eines Embedded-Systems vornehmen.
(Bild: Farnell)

Embedded-Systeme haben den Ruf, wenig Schutz vor Hackern zu bieten. Dieser beruht unter anderem darauf, dass viele dieser Systeme sich auf nur einen einzigen, schwachen Schutzmechanismus verlassen, um den Zugriff auf ihre Inhalte und Funktionen zu verhindern. Mit der routinemäßigen Integration von Geräten und Komponenten in Embedded-Systeme und der Verbindung mit dem Internet ist die Schwäche dieser Ansätze schnell deutlich geworden. Wenn ein Hacker den Code für ein Gerät herausfindet, kann er diesen für alle Geräte desselben Typs verwenden. Hacker haben das Ausmaß dieser Art von Sicherheitslücke aufgezeigt, indem sie etwa die Firmware auf den Zielgeräten ersetzt und diese in Botnets eingebunden haben.

Ein komplexer End-to-End-Schutz ist erforderlich

Obwohl es eine große Anzahl von Anbietern gibt, die Embedded-Security-Lösungen bereitstellen, konzentrieren sich diese Lösungen tendenziell auf einen bestimmten Aspekt des Systems. Eine echte Sicherheit kann aber nur dann erreicht werden, wenn die Lösung das gesamte System lückenlos abdeckt. Diese End-to-End-Sicherheit liegt in der Verantwortung des Entwicklers, der einen ganzheitlichen Ansatz verfolgen muss, um alle Elemente zu berücksichtigen.

Eine zentrale Anforderung an alle eingebetteten Geräte besteht darin, dass der Zugriff auf Wartungsfunktionen mindestens durch einen für jedes einzelne Gerät einzigartigen Code geschützt ist. Dies ist jedoch die absolute Mindestvoraussetzung. In der Praxis muss das Sicherheitskonzept weitaus detaillierter und vielschichtiger sein, um verschiedene Arten von potenziellen Hackerangriffen abzuwehren.

Manipulationsschutz und Gerätesicherheit

Entwickler von Embedded-Systemen müssen die zahlreichen möglichen Angriffspunkte bedenken. Auf Grundlage dieser Analyse sollten sie dann den besten Kompromiss zwischen Schutz, Kosten und Energieverbrauch finden. Angriffe können darauf abzielen, Daten für die spätere Verwendung zu erhalten oder die Funktionalität eines Systems zu beeinträchtigen, um den Betreiber unter Druck zu setzen oder direkt Schaden zu verursachen.

Verschiedene Arten von Angriffen zielen auf verschiedene Elemente des Gesamtsystems oder das System von Systemen ab. Hacker setzen auch zunehmend auf hybride Strategien. Zum Beispiel nutzen Hacker den physischen Zugriff auf ein oder zwei Geräte aus, um Informationen über den Betrieb eines Systems zu erhalten, bevor sie einen Remote-Angriff auf die Cloud-Server starten, der ihnen dann zu ihrem eigentlichen Ziel verhilft. Der Schutz vor diesen immer komplexer werdenden Bedrohungen umfasst häufig mehrere verschiedene Komponenten von verschiedenen Anbietern.

Jede Ver- und Entschlüsselung steigert den Stromverbrauch

Alle Schutzmaßnahmen haben ihren Preis. Denken wir zum Beispiel an Datenverschlüsselung. Im Idealfall werden die Daten, die ein Gerät verarbeitet, durch Verschlüsselung in drei Phasen geschützt: wenn sie sich im Flash-Speicher oder im Cloud-Speicher befinden; wenn sie sich durch ein Netzwerk oder sogar über einen internen Systembus bewegen; und wenn sie von einem Prozessor verwendet werden.

Durch jeden Verschlüsselungs- und Entschlüsselungszyklus steigen der Stromverbrauch und die Kosten. Bei gespeicherten Daten kann es verlockend sein, sehr lange Schlüssel zu verwenden, um den Inhalt zu sichern, da der Zeitaufwand zum Knacken eines Schlüssels per Brute-Force-Angriff mit der Schlüssellänge exponentiell ansteigt. Der Wert der Daten selbst kann jedoch im Laufe der Zeit durchaus sinken.

Für Messdaten kann ein einfacher Schutz reichen

Vergängliche Temperaturmessdaten von einem Industriesensor sind für einen Angreifer nur eingeschränkt von Nutzen, es sei denn, er hat Zugriff auf die gesamte Historie, aus der er einen Produktionsprozess nachkonstruieren kann. Es wäre effizienter, den Schutz gespeicherter Daten an einem Ort wie der Cloud oder in einem Gateway, das zum Sammeln von Daten von mehreren lokalen Geräten dient, weitaus stärker in den Vordergrund zu stellen als den Schutz von Daten auf einem einzelnen Gerät.

Kosten: Jede Ver- und Entschlüsselung erhöht den Energieverbrauch.
Kosten: Jede Ver- und Entschlüsselung erhöht den Energieverbrauch.
(Bild: Clipdealer / sparta4/123RF)

Auf dem Gerät und für die Bereitstellung über das Internet ist eine leichte Verschlüsselungstechnologie möglicherweise besser geeignet und ermöglicht es, das Gerät mit einem kostengünstigeren Prozessor mit niedrigerem Stromverbrauch zu betreiben. Ein Gateway wie das FactoryCast von Schneider Electric, das ein größeres Energiebudget aufweist und einen höheren Wert für Angreifer hat, kann Daten auf einer höheren Ebene verschlüsseln, bevor sie auf andere Server übertragen werden, und bietet einen Firewall-Schutz, der von entfernten Standorten ausgehende Angriffsversuche blockiert.

Jetzt Newsletter abonnieren

Verpassen Sie nicht unsere besten Inhalte

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung

Bei hochwertigen Daten steht mehr auf dem Spiel

Einige Daten auf dem Gerät, die einen höheren Wert besitzen, etwa personenbezogene Daten eines Benutzers oder kommerziell oder finanziell sensible Daten, müssen hingegen auf umfassendere Weise geschützt werden. Eine Möglichkeit, einen detaillierten Datenschutz bereitzustellen, ist die Verwendung einer Hardware-Root-of-Trust. Denn Software allein reicht nicht aus, um die Sicherheit eines eingebetteten Geräts zu gewährleisten, da es ohne einen Hardwareschutz für einen Hacker zu einfach ist, seine eigene Software anstelle des ursprünglichen Codes zu laden und sich mehr Kontrolle zu verschaffen.

Eine Root-of-Trust bildet als Vertrauensanker die Grundlage für alle Schutzmaßnahmen innerhalb des Geräts, indem sichergestellt wird, dass nur autorisierte Benutzer wichtige Änderungen an Firmware oder Daten vornehmen können. Darüber hinaus sollte sie die wichtigen Schlüssel enthalten, die zum Verschlüsseln aller Daten verwendet werden, die das Gerät speichert oder überträgt und die im Rahmen der Risikobewertung als sensibel eingestuft werden.

Unter keinen Umständen darf die Root-of-Trust in ihrem Speicher gespeicherte private Schlüssel offenlegen. Das Nutzungsmodell sollte ein Modell sein, bei dem temporäre Sitzungsschlüssel generiert und bei Bedarf anderen Subsystemen auf der Grundlage zur Verfügung gestellt werden, dass die von ihnen geschützten Daten im Fall eines erfolgten Hacks für Dritte nicht mehr gültig oder nützlich sind.

Einige Systeme können sich auf eine Root-of-Trust mit fester Funktion stützen, also ein Element, das bestimmte Funktionen ausführt. Ein Beispiel ist die sichere Engine, die von STMicroelectronics in einer Reihe von Mikrocontrollern der Baureihe ST32 implementiert wurde. Diese stellt Dienste wie Secure Boot und sichere Firmware-Updates sowie Laufzeit-Sicherheitsüberprüfungen und Schlüsselspeicherung bereit.

On-Chip-Verschlüsselung bietet etwa Secure Boot

Secure Boot setzt sich immer mehr als wichtiger Bestandteil der Sicherheit von Embedded-Systemen durch. Es ermöglicht die Verwendung eines Standard-Flash-Speichers für die Programmspeicherung, sodass der gesamte Code nicht in einem großen, teuren sicheren Speicher gespeichert werden muss, und unterstützt so die Kostenkontrolle.

Mithilfe von Hashes überprüft ein sicherer Bootloader die Gültigkeit des im Speicher gespeicherten Codes anhand privater Schlüssel in der Sicherheitskomponente. Nur wenn der Hash des Codes gültig ist, kann dieser ausgeführt werden. Bei einem Fehler greift das Gerät auf eine bekannte, im ROM gespeicherte sichere Kopie zurück oder es kann nicht gebootet werden, bis im Flash-Speicher ein gültiges Firmware-Image wiederhergestellt ist. Nach dem Booten kann das Betriebssystem dieselben Funktionen heranziehen, um jede Anwendung zu authentifizieren, bevor diese ausgeführt werden kann.

Viele ARM-basierende MCU-Bausteine, einschließlich der Bausteine der Baureihe ST32, bieten eine programmierbare Security Engine in Form von TrustZone, mit der eine Reihe von Schutzmechanismen integriert werden können, etwa die Ver- und Entschlüsselung von Daten, die über den internen Systembus oder über eine Netzwerkverbindung übertragen werden.

Unsicherheit auch bei Root-of-Trust

Eine weitere Voraussetzung für Geräte, die vor Ort installiert werden, ist die Fähigkeit, aggressive physische Angriffe abzuwehren, die die Root-of-Trust gefährden könnten. Im Prinzip ist es möglich, eine Root-of-Trust in unerwartete Fehlerzustände zu zwingen und auf diese Weise den Zugriff auf geschützte Software zu ermöglichen oder private Schlüssel freizugeben. Angriffe können eine Unterbrechung der Stromversorgung und Taktsignale umfassen, die diese Fehler dann hervorrufen.

Ausgespäht: Embedded-Systeme sind für Hacker vielfach leichte Beute.
Ausgespäht: Embedded-Systeme sind für Hacker vielfach leichte Beute.
(Bild: Clipdealer)

Root-of-Trust-Implementierungen können durch eine Reihe von Gegenmaßnahmen verhindern, dass bei derartigen Angriffen vertrauliche Daten übertragen werden oder die Funktionalität beeinträchtigt wird. Selbst eine gut geschützte Root-of-Trust auf jedem Gerät garantiert noch keine Sicherheit im Kontext eines IoT-Systems. Ein Hacker könnte sich im Prinzip Geräte beschaffen, die den Betrieb authentischer Systeme nachahmen, sie in das Netzwerk einfügen und damit den Betrieb der gesamten IoT-Anwendung untergraben.

Diesen Beitrag lesen Sie auch in der Fachzeitschrift ELEKTRONIKPRAXIS Ausgabe 15/2020 (Download PDF)

Für die gesamte Lieferkette ist ein Schutz erforderlich

Aus diesem Grund ist die Sicherheit der gesamten IoT-Lieferkette von entscheidender Bedeutung. Dies erfordert einen Produktions- und Installationsablauf, der sicherstellt, dass nur gültige Geräte mit einem System verbunden und Teil davon werden können, wenn sie über die richtigen Berechtigungsdaten verfügen. Es kann komplex sein, Lieferketten einzurichten, die die Möglichkeit bieten, Zertifikate für Geräte auszustellen und deren ergänzende Berechtigungsinformationen in die Cloud übertragen zu lassen, damit sie bei der Inbetriebnahme eines Geräts überprüft werden können. Die Trust Platform von Microchip und die IoT-Hub-Unterstützungsmechanismen von Microsoft Azure ermöglichen die einfache Einrichtung und Kontrolle solcher Lieferketten.

Obwohl die Bedrohungen für Embedded-Systeme weiter zunehmen, haben Entwicklungsingenieure Zugriff auf die Tools, die Systeme vor diesen Bedrohungen schützen. Um jedoch die erforderliche Sicherheitsebene bereitzustellen, müssen sie mit Bedacht aus dem großen Angebot von Techniken, Protokollen und Produkten auswählen, anstatt sich auf nur eine einzige Komponente zu verlassen.

* Cliff Ortmeyer ist Global Head of Technical Marketing bei Farnell

Artikelfiles und Artikellinks

(ID:46498726)