Zephyrnet-Logo

Sicherheitslösungen in einer Welt voller IoT-Geräte

Datum:

Internet of Things (IoT)-Geräte sind heutzutage überall und bieten einen enormen Mehrwert, stellen aber leider auch ein beispielloses Risiko für die Ausbeutung dar. Alles, was mit dem Internet verbunden ist, ist potenziell hackbar. Die Sicherung vernetzter Geräte ist eine Herausforderung und steht bei Elektronikherstellern an erster Stelle, die die Peinlichkeit vermeiden möchten, dass ihre Geräte gehackt werden. Das Thema IoT-Sicherheit ist komplex, und dieser Blog bietet eine allgemeine Zusammenfassung einiger bewährter Sicherheitslösungen, die zum Bau sichererer IoT-Geräte verwendet werden können.

Unsere vernetzten Geräte enthalten eine Fülle von Informationen, die für Angreifer von großem Interesse sind. Natürlich kennen wir alle den Wert unserer persönlichen Informationen auf Geräten wie E-Mails und Passwörter, aber es gibt eine ganze Reihe anderer Informationen, an denen Angreifer ebenfalls interessiert sind. Angreifer möchten möglicherweise den Zugriff auf die Funktionalität eines Geräts deaktivieren oder Zugriff auf die Daten auf dem Gerät selbst erhalten, um einen Ransomware-Angriff zu inszenieren. Sie können ein Gerät als Staging-Punkt verwenden, um Zugriff auf das Netzwerk zu erhalten, mit dem das Gerät verbunden ist. Dieser Stützpunkt kann dann genutzt werden, um weitere sicherheitsrelevante Geräte anzugreifen. Angreifer können auch an den Prozessorressourcen oder der Netzwerkbandbreite interessiert sein, die ein bestimmtes Gerät darstellt. Wenn es ihnen gelingt, viele Geräte zu kontrollieren, können diese Ressourcen für einen Denial-of-Service-Angriff verwendet werden. Und schließlich können Geräte, die Aktoren oder Sensoren verwenden, um beispielsweise Türen zu öffnen oder den Strom abzuschalten, angegriffen werden und Schlüsselfunktionen in der Wohnung oder am Arbeitsplatz angreifbar machen.

Was genau sind einige der Möglichkeiten, wie wir ein Gerät durch Design schützen können?

Eine Möglichkeit besteht darin, einen praxiserprobten sicheren Boot-Mechanismus zu implementieren, um sicherzustellen, dass nur vertrauenswürdige Software auf dem Gerät ausgeführt werden kann. Dies kann mithilfe eines ROM-basierten Codemechanismus zur Authentifizierung der Software erreicht werden, wobei Schlüsselmaterial verwendet wird, das von einem Angreifer nicht geändert werden kann. Die Verwendung eines Root-of-Trust-Moduls zum Booten des Geräts stärkt jedoch den Boot-Prozess noch weiter und unterstützt die sichere Implementierung anderer sicherheitsrelevanter Funktionen wie Firmware-/Software-Updates, sichere Debug-Zugriffskontrolle und Vertraulichkeit des Boot-Images. Die Verwendung von Verschlüsselung zum Schutz der Vertraulichkeit der Software erschwert es einem Angreifer, potenzielle Schwachstellen zu finden, erfordert jedoch, dass das zum Entschlüsseln der Software verwendete Schlüsselmaterial vertraulich bleibt. In Geräten, die (auch) viel komplexe Software ausführen (anfällig für logische Angriffe), könnte ein Angreifer nach dem Booten eine Codeausführung auf dem Gerät erlangen, was bedeutet, dass der Firmware-Entschlüsselungsschlüssel niemals vom Gerät lesbar sein darf und seine Verwendung sein muss nur auf Geräteinitialisierung beschränkt.

Zweitens erfordert eine gute Sicherheit gute Zufallszahlen. Vorhersehbare Zufallsdaten führen sofort zu Sicherheitslücken. Das Generieren einer Zufallszahl erfordert den Zugriff auf eine oder mehrere Quellen „unvorhersehbarer Daten“, die in einem sogenannten Entropiepool gesammelt werden können. Wenn ein Angreifer den Zustand des Entropiepools nicht erraten kann, sind die unter Verwendung der Daten in diesem Pool generierten Zufallszahlen unvorhersehbar. Große Geräte, wie z. B. ein Linux-basierter Computer, haben Zugriff auf viele verschiedene Quellen unvorhersehbarer Daten, wie z. B. das Zeitintervall zwischen Eingaben auf der Tastatur und viele andere Quellen. Der Zugriff auf mehrere Quellen unvorhersehbarer Daten ermöglicht es einem Gerät, seinen Entropiepool schnell zu füllen und die Generierung von Zufallsdaten guter Qualität zu ermöglichen.

IoT-Geräte hingegen sind klein und haben nicht so viele Quellen, aus denen sie ihren Entropiepool füllen können, um Zufallszahlen zu erzeugen. Einen „leeren“ Pool zu haben, der Ihnen eine vorhersehbare Zufallszahl gibt, ist offensichtlich schlecht für die Sicherheit. Das Warten darauf, dass das Gerät ohne viele unvorhersehbare Eingaben ausreichend Entropie erzeugt, kann für die Anwendungsfälle eines IoT-Geräts zu lange dauern. Um dies zu beheben, können Sie einen dedizierten Zufallszahlengenerator in das Silizium des Geräts einbauen, der Ihnen die Möglichkeit gibt, diesen Pool schnell zu füllen. FIPS-, SESIP- oder Common Criteria-zertifizierte Lösungen sind in dieser Situation die beste Wahl, da Sie Ihren Zufallszahlengenerator aus einer erprobten, getesteten und zertifizierten Quelle beziehen.

Drittens können Daten, die in das Gerät ein- und ausgehen, verschlüsselt und authentifiziert werden, um bestimmte Angriffe zu verhindern. Die Kommunikation zwischen der Cloud, dem Backend und dem Gerät muss gesichert sein. Die Software-Stacks, die diese Kommunikationssicherheitsprotokolle implementieren, sind die erste Verteidigungslinie gegen entfernte/logische Angriffe. Software muss aus einer vertrauenswürdigen Quelle stammen, um sicherzustellen, dass sie keine Fehler oder Hintertüren enthält. Idealerweise sollte es, wie bei Zufallszahlengeneratoren, aus einer geprüften und zertifizierten Quelle stammen.

In vielen Fällen erfordern die funktionalen Anforderungen eines Geräts eine beträchtliche Menge an Software, die auf dem Host-Prozessor des Systems ausgeführt werden muss. Diese Software konzentriert sich darauf, das Gerät dazu zu bringen, das zu tun, was es tun soll; Der unmittelbare Fokus liegt nicht darauf, das Gerät vor logischen und physischen Angriffen zu schützen, die es anfällig machen können. Wenn ein Angriff stattfindet, ist die Fähigkeit, die Möglichkeiten eines Angreifers einzuschränken, und die Fähigkeit, sicherzustellen, dass das Gerät sicher wiederhergestellt werden kann, von größter Bedeutung. Auch hier kann ein Root-of-Trust-Kern ins Spiel kommen, der sicherheitskritische Software und Daten physisch von nicht vertrauenswürdigen Softwarekomponenten trennt. Es kann auch Schlüsselmaterial davor schützen, die Sicherheitsgrenze des Geräts zu verlassen, und verhindert, dass ein Angreifer dauerhafte Änderungen an der Sicherheitsarchitektur vornimmt.

Rambus verfügt über ein breites Portfolio an Hardwaresicherheits-IP-Lösungen, die entwickelt wurden, um die Sicherheitsanforderungen für IoT-Geräte von einfach bis modern zu unterstützen. Viele dieser Lösungen sind FIPS- und Common Criteria-zertifiziert, sodass Kunden das Gesamtprojektrisiko und die Entwicklungszeit mit einer getesteten und zertifizierten Sicherheits-IP-Lösung reduzieren können.

Zusätzliche Ressourcen:

Marcel van Loon

  (alle Artikel)

Marcel van Loon ist Senior Principal Engineer für Systemarchitektur bei Rambus.

spot_img

Neueste Intelligenz

spot_img