Industrielle Steuerungssysteme Sicherheit fängt beim Booten an

Bild 3. Mit diesen Vorkehrungen kann der Bootvorgang abgesichert werden.

Bis ein industrielles Steuerungssystem Befehle ausführt, spielt sich eine Reihe von Ladevorgängen ab: ROM-Code, Boot-Code, Betriebssystem und Anwendungsprogramm werden peu à peu geladen und ausgeführt. Der Boot-Prozess ist ein sicherheitsrelevanter Vorgang, der sorgfältig abgesichert werden muss.

Die Sicherheit industrieller Embedded-Systeme entwickelt sich durch die zunehmende Komplexität und die weitreichenden Vernetzungsmöglichkeiten zu einer immer wichtigeren Herausforderung. Teile eines solchen Systems sind beispielsweise Knoten für speicherprogrammierbare Steuerungen, HMI und Steuerungssysteme, industrielle Zugangskontrollsysteme und Controller für eine unterbrechungsfreie Stromversorgung. Diese Systeme sind unverzichtbar bei Steuerungsvorgängen, bei der Handhabung sensibler Daten und für einen reibungslosen Ablauf industrieller Computersysteme. Fehlerhafte Programme, Anti-Cloning von IP-Adressen und Cyber-Attacken sind Themen, die bei der Sicherheit eine wichtige Rolle spielen. Dabei gibt es verschiedene Möglichkeiten, diesen Bedrohungen mit Hilfe von Embedded Security entgegenzuwirken. Einer der wichtigsten Aspekte bei sicheren Embedded-Systemen: das sichere Booten.

Sicherheit als Voraussetzung

In einem industriellen Embedded-System müssen viele Subsysteme verwalten werden. Oft ist es auch über Ethernet verbunden. So zum Beispiel ein HMI, das den Zugang und die Überwachung einer bestimmten Anlage in einer Fabrik steuert. Solche Access Controller sind durch ein lokales Ethernet-Netzwerk miteinander vernetzt und oft zusätzlich an einen zentralen Webserver angeschlossen. Ein einfaches Beispiel eines solchen Systems ist ein SPS-Knoten (Bild 1).

Ein anderes Beispiel ist ein ICS (Industrial Control System), bestehend aus einer Reihe verschiedener Embedded-Systeme (HMI, SPS-Knoten, Fernwartungszugang etc.). Diese können über das Internet sowohl untereinander als auch mit der IT verbunden sein. Sind sie nicht über das Internet verbunden, werden sie auch SCADA (Supervisor Control And Data Acquisition) genannt. ICS finden sich üblicherweise in Branchen wie der Energie-, Wasserversorgungs-, Öl- und Gasindustrie, im Verkehrssektor, der Chemie und Pharmazie, in der Zellstoff- und Papierverarbeitung, in der Lebensmittelindustrie sowie in der Fertigung (Automotive, Luft- und Raumfahrt, Gebrauchsgüter). SCADA-Systeme werden im Allgemeinen eingesetzt, um weit voneinander getrennte Anlagen zu verwalten und Daten zentral zu erfassen, zu überwachen und zu steuern. Mögliche Herausforderungen für ein ICS sind zum Beispiel:

  • ein blockierter oder verzögerter Informationsfluss innerhalb des ICS, der die Funktionen des Netzwerks unterbricht;
  • nicht autorisierte Änderungen von Befehlen oder Alarmschwellen, die die Anlage beschädigen, beeinträchtigen oder zum Stillstand bringen. Dies kann sich auf das Umfeld auswirken oder sogar die Sicherheit gefährden;
  • veränderte, mit Malware infizierte oder geklonte Konfigurationseinstellungen oder ICS-Software;
  • Interferenzen mit laufenden Sicherheitssystemen, die lebensgefährlich sein können.

Ursprünglich waren ICS geschlossene Systeme, die mit Hilfe von spezieller Soft- und Hardware proprietäre Protokolle ausführten. Mittlerweile werden diese proprietären Lösungen von weit verbreiteten, günstigen und internetfähigen Geräten ersetzt. Dadurch steigt die Gefahr für die Cybersicherheit immer weiter. ICS eignen sich Funktionen von IT-Lösungen und vernetzten Systeme an und nutzen als Hardware industriegenormte Computer sowie übliche Betriebssysteme wie Linux. Dadurch vernetzen sich ICS immer stärker mit der Außenwelt und müssen besser geschützt werden. Solche Betriebssysteme booten zunächst und führen dann Anwendungen aus. Bereits hier muss sichergestellt werden, dass die richtige Software in einem nichtflüchtigen Speicher ausgeführt wird, z.B. NAND-Flash. Damit wird die Fehlerfreiheit der Software garantiert. Die meisten Schwachstellen von Embedded-Prozessoren finden sich während des ersten Bootens eines Geräts. Gerätehersteller bestätigten, dass ihre Produkte genau an diesem Punkt häufig verändert oder kopiert werden.

Erfolgt ein Angriff während der Programmierung des nichtflüchtigen Speichers oder während eines Firmware Upgrade, lassen sich Inhalte so verändern, dass auch ein nicht autorisierter Nutzer das System steuern kann. Die Sicherheit des weiteren Betriebs wäre nicht länger gewährleistet. Ein sicherer Boot-Mechanismus schützt gegen diese Art von Attacke, verhindert Klonen und schützt damit das geistige Eigentum.

Ursprünglich waren ICS geschlossene Systeme, die mit Hilfe von spezieller Soft- und Hardware proprietäre Protokolle ausführten. Mittlerweile werden diese proprietären Lösungen von weit verbreiteten, günstigen und internetfähigen Geräten ersetzt. Dadurch steigt die Gefahr für die Cybersicherheit immer weiter. ICS eignen sich Funktionen von IT-Lösungen und vernetzten Systeme an und nutzen als Hardware industriegenormte Computer sowie übliche Betriebssysteme wie Linux. Dadurch vernetzen sich ICS immer stärker mit der Außenwelt und müssen besser geschützt werden. Solche Betriebssysteme booten zunächst und führen dann Anwendungen aus. Bereits hier muss sichergestellt werden, dass die richtige Software in einem nichtflüchtigen Speicher ausgeführt wird, z.B. NAND-Flash. Damit wird die Fehlerfreiheit der Software garantiert. Die meisten Schwachstellen von Embedded-Prozessoren finden sich während des ersten Bootens eines Geräts. Gerätehersteller bestätigten, dass ihre Produkte genau an diesem Punkt häufig verändert oder kopiert werden.

Erfolgt ein Angriff während der Programmierung des nichtflüchtigen Speichers oder während eines Firmware Upgrade, lassen sich Inhalte so verändern, dass auch ein nicht autorisierter Nutzer das System steuern kann. Die Sicherheit des weiteren Betriebs wäre nicht länger gewährleistet. Ein sicherer Boot-Mechanismus schützt gegen diese Art von Attacke, verhindert Klonen und schützt damit das geistige Eigentum.