Erschienen am: 06.10.2017, Ausgabe SPS-MAGAZIN 10 2017

Den Entwicklungsprozess von IoT-Applikationen vereinfachen

Vor unberechtigter Nutzung schützen

Das IoT mit Milliarden an vernetzten Geräten stellt enorme inhärente Sicherheitsrisiken dar. Allein die schier endlose Anzahl, sowie die unterschiedlichen Typen potenzieller Angriffsziele, verbunden mit der fehlenden Betreuung durch Menschen, verhindern den Einsatz gängiger Sicherheitsmethoden. Die Anforderungen an eine sinnvolle IoT-Plattform sind daher vielfältig.


IoT-Sicherheitsarchitektur
Bild: PTC

Einen Vorgeschmack auf die drohenden Gefahren für vernetzte Geräte bot der Angriff auf das Energieversorgungsnetz in der Ukraine, bei dem Ende 2015 30 Teilbereiche offline waren und über 230.000 Haushalte und Büros für bis zu sechs Stunden im Dunkeln standen. Die Angreifer hatten sogar die Firmware kritischer Geräte modifiziert, so dass diese nicht mehr aus der Ferne bedient werden konnten und Trennschalter und andere Geräte selbst Monate danach noch manuell gesteuert werden mussten. Im Vergleich zu Clouds, für die es inzwischen wohldefinierte Sicherheitsmodelle und beschränkte Einstiegspunkte gibt, stellt das IoT allein aufgrund der unterschiedlichen Gerätetypen, Betriebssysteme und Protokolle eine viel breitere Angriffsfläche dar. Während beim Anwendermanagement in der Cloud üblicherweise einer konkreten Person für ein konkretes Programm Zugriff erteilt wird, machen IoT-Geräte ein deutlich komplexeres Rechtemodell erforderlich. IoT-Geräte können sich selbstständig als Person oder im Auftrag einer Person authentifizieren. Einige Unternehmen sind sich zwar dieser Gefahren bewusst, sehen aber noch keine Dringlichkeit, entsprechend zu agieren, da sie bis jetzt keine IoT-Applikationen im großen Stil einsetzen. Aber wissen sie wirklich, wie viele ihrer Geräte bereits mit dem Internet vernetzt und damit möglichen Attacken ausgesetzt sind? Die Suchmaschine Shodan, die das Internet nach vernetzten Geräten durchkämmt, hat bereits 500 Millionen vernetzte Geräte kategorisiert, darunter Steuerungssysteme für Fabriken, Eishockey-Bahnen, Autowaschanlagen, Verkehrsampeln, Sicherheitskameras und sogar ein Atomkraftwerk. Die meisten dieser Geräte sind mit dem Internet durch eine interne Applikation des Herstellers bzw. von Drittanbietern verknüpft. Ein großer Teil dieser Geräte besitzt dabei nur sehr eingeschränkte Sicherheitsfunktionen. Vielfach erfordert es nicht einmal ein Passwort, um sich mit dem Gerät zu verbinden, häufig werden 'Admin' als Benutzername und '1234' als Passwort verwendet. 70 Prozent der Geräte kommunizieren darüber hinaus auch im Textformat - was Angriffe einfach macht, selbst wenn die verwendeten Passwörter etwas sicherer sind. Millionen Geräte nutzen außerdem noch sehr veraltete Software-Versionen - mit bekannten, gravierenden Schwächen.

Sicherheitsarchitektur definiert Elemente

Die Frage an viele Unternehmen ist es daher nicht, ob sie ein IoT-Projekt starten wollen. Die Frage ist, wie sie die bestehenden - teilweise unbekannten - IoT-Geräte administrieren und sichern wollen. Es gibt derzeit noch kein umfassendes Sicherheitsmodell für das IoT. Man kann jedoch die Sicherheitsarchitektur aus Abbildung 1 zugrunde legen, in der die verschiedenen Elemente und ihre Interaktionen im IoT hervorgehoben werden:

1) das Gerät ist ein Objekt der realen Welt, das mit dem Netz verbunden ist

2) die Netzwerk-Infrastruktur verbindet Geräte mit der IoT-Plattform

3) die Betriebsplattform stellt die Infrastruktur für die Applikation zur Verfügung

4) die IoT-Plattform ist eine Suite von Komponenten, die mit den Geräten kommuniziert, deren Verwaltung ermöglicht und Anwendungsprogramme ausführt

5) Entwicklung bezieht sich auf den Prozess, der für die Realisierung der IoT-Anwendung genutzt wird und

6) Applikationen schaffen durch die Überwachung, die Administration und die Steuerung der vernetzten Geräte geschäftlichen Mehrwert.

Anzeige

Wer trägt welche Verantwortung?

Die Darstellung des gemeinsamen Sicherheitsmodells in Abbildung 2 erläutert, wie die Verantwortung für Sicherheit im IoT zwischen den verschiedenen Beteiligten verteilt werden sollte. Von oben ausgehend ist der Kunde für den Schutz der verschiedenen Geräte vor unberechtigtem Zugriff sowie die Verwaltung der Benutzerkonten verantwortlich. Die IoT-Plattform kann diese Aufgabe durch integrierte Anzeigen und Rechte, die ohne Kodierung verwendet werden können, erleichtern. So lassen sich beispielsweise Regionen, Abteilungen oder Standorte definieren und die Nutzer erhalten den Zugriff auf Objekte in ihrer eigenen Region, nicht aber auf Objekte aus anderen Regionen. Ebenso lassen sich funktionale Rollen innerhalb einer Organisation, wie z.B. 'Service-Manager', anlegen. Dann kann die Rolle 'Service-Manager' neuen Anwendern zugeordnet werden und er oder sie erhält automatisch alle Rechte, die diese Rolle besitzt. Idealerweise bietet die IoT-Plattform die Option, mithilfe eines Verbindungsservers in einer 'entmilitarisierten Zone' (DMZ) zu arbeiten, während sich die Plattform selbst innerhalb der Firewall befindet. Liegt die IoT-Plattform innerhalb des internen Netzes, werden selbst die resolutesten Attacken schwieriger. Mit einem guten Netzwerk-Konzept können die Organisationen ihre IoT-Infrastruktur besser schützen. Die führenden Plattformen bieten entsprechende Werkzeuge, mit denen die Anwendungsentwickler Best Practices wie das Open Web Application Security Project (OWASP) Top 10 einhalten können. Dieses wurde entwickelt, um leicht nutzbare Schwächen in Web-Anwendungen zu vermeiden. So gehört 'SQL Injection' zu den Top-10-Problemen. Die IoT-Plattform kann diese Angriffsmöglichkeit durch Parametrisierung von Eingaben und das Unterbinden direkter SQL-Abfragen verhindern. Ein Teil der Verantwortung für die IoT-Sicherheit liegt aber in den Händen der Entwickler. Die meisten IoT-Plattformen bieten mit dem Transport Layer Security Protocol (TLS) die Möglichkeit, die Kommunikation mit den Geräten zu verschlüsseln. Dieses muss von der Entwicklung auch aktiviert werden.

Jede Schicht braucht ihren Schutz

Es wird immer wieder Angriffsmöglichkeiten geben und daher ist es entscheidend, einen Prozess umzusetzen, in dem jede Schicht immer wieder auf den neuesten Stand der Schutzmechanismen gebracht werden kann. Eine IoT-Plattform sollte daher integrierte Software- und Inhaltsmanagement-Funktionen bieten, die die automatische Verteilung von Aktualisierungen unterstützen. Die ausgereifteren Plattformen beinhalten hier auch Optionen, wie Updates verteilt werden sollen. So kann man diese beispielsweise zunächst bei einer kleinen Anzahl an Geräten einspielen und testen, bevor ein allgemeines Update über alle Objekte gefahren wird. So kann man die Leistung der weit verstreuten Geräteflotte optimieren und gleichzeitig für Schutz gegen unberechtigte oder übelwollende Nutzung sorgen.

Anzeige