Security Best Practices für Industrie- und Medizingeräte Sechs Strategien für Wind River VxWorks und Intel vPro Technologie

Die wachsende Bedrohung Industriesysteme sind verantwortlich für entscheidende Teile unserer Infrastruktur wie etwa die Versorgung mit Wasser, Elektrizität, Öl und Gas. Cyber-Angriffe könnten die Integrität dieser Systeme verletzen und großen wirtschaftlichen Schaden anrichten. Medizinsysteme sind ebenfalls ein verlockendes Ziel, da sie oft wertvolle Daten über die Gesundheit von Patienten enthalten. Best Practices für Security Bei der Verbesserung der Security sind etablierte Industrie Best Practices für Secure Computing ein ausgezeichneter Ausgangspunkt. Die folgende Liste mit Best Practices gilt als umfassende Security-Strategie für vernetzte Geräte. – Prinzip der minimalen Rechte (Principle of Least Privilege) – Zugriffsrechte auf eine Ap- plikation sowie auf Tasks oder Prozesse, die Geräte und das Netzwerk betreffen, sollten so vergeben werden, dass sie die jeweils an- stehende Aufgabe gerade noch erledigen können. – Verteidigungstiefe (Depth in Defense) – Einbeziehung mehrerer Security-Ebenen, um sicherzustellen, dass, falls ein Layer angegriffen wird, andere Layer noch aktiv sind und das betreffende Gerät schützen. – Sichern des schwächsten Kettenglieds – Man sollte annehmen, dass die verletzbarste Kom- ponente, Interface oder Applikation das wahrscheinlchste Ziel eines Angriffs sind. – Ausfallsicherheit (Failsafe Stance) – Man sollte beachten, dass die besten Security-Pläne von denen kommen, die das Schlimmste erwarten. Daher sollte man das Netzwerk und alle mit ihm verbundenen Geräte sorgfältig sichern. – Von Grund auf sicher (Secure by Default) – Abschalten aller Features, Services und Zu- griffe, die nicht erforderlich sind. Falls man \’etwas\’davon nicht braucht, aktiviert man es nicht. – Einfaches Design, einfache Verteidigung – Auswahl der einfachsten Geräte und nutzbaren Designs, welche die gewünschte Aufgabe erledigen. Diese ermöglichen eine einfachere Konfiguration, Auditing und Test. Grundlage für eine Konfiguration mit höherer Security Um drei dieser Best Practices – \’Prinzip der minimalen Rechte\‘, \’Ausfallsicherheit\‘ und \’Von Grund auf sicher\‘ – zu adressieren, beginnt man damit, zu beachten, dass jedes System mit Verbindungen zur Außenwelt Ziel von Angriffen sein kann und eine Konfiguration mit höherer Security verlangt. Um eine Konfiguratioin mit höherer Security zu erzielen sind die Herstellerrichtlinien bezüglich Autorisierung und Security Features zu beachten. Dies sind z.B. – Einrichtung von Autorisierung und Zugangs- berechtigungen, sodass nur berechtigte Nut- zer Zugang erhalten. – Autorisierte Benutzer sollten das geringste Recht für ihre Services erhalten. – Aktivierung der Netzwerk-Firewall. – Abschalten aller nicht-essenziellen Services; nur die Services sollten möglich sein, die eine Organisation zur Nutzung des jeweiligen Geräts braucht. – Aktivierung oder Einbeziehung robuster kryp- tografischer Bibliotheken. – Einrichtung von Autorisierung (z.B. Benutzernamen und Passwörter) wie in einem Secure Desktop oder Server. Vermeiden von \’Root\‘ oder höchster Berechtigung, es sei denn, dies ist absolut erforderlich. – Aktivierung von Memory Protection über die MMU (Memory Management Unit), um den Kernel von User-Mode Applikationen, auf denen Echtzeitprozesse laufen, zu schützen. Beim Einrichten einer Medizin- oder Industriegerätekonfiguration sollte man sich vergewissern, dass wirklich alle Vorteile und Optionen eines Echtzeitbetriebssystems (RTOS) genutzt werden. Ein gutes Beispiel dafür ist Wind River VxWorks. Im Sinne der Best Practice \’Einfaches Design, einfache Verteidigung\‘ lassen sich die meisten Sicherheitsfunktionen über eine einzige Konfigurationsoption aktivieren. Secure Netzwerk-Kommunikation Viele Security-Probleme bei Embedded-Systemen resultieren aus Verbindungen zu Netzwerken, die für viele Benutzer (z.B. ein Unternehmensnetzwerk) oder direkt zum Internet offen sind. Für solche Systeme ist das Netzwerk eindeutig das schwächste Kettenglied. Um die Ausfallsicherheit zu gewährleisten, sollte man nie annehmen, dass Connectivity zu und von einem Gerät sicher oder dass ein Netzwerk geschlossen ist. Kunden können ein Gerät auf eine Art und Weise anschließen, die man sich als Entwickler vielleicht nicht vorstellt. Für die Security eines Geräts an einem Netzwerk aktiviert man zunächst die Sicherheitsfunktionen des RTOS-Kommunikationsstacks. Z.B. den VxWorks Netzwerk-Stack, der zahlreiche Security-Komponenten wie eine Full-featured Firewall enthält, die \’Out of the Box\‘ verwendet werden kann (Bild 2). Für die Security eines Geräts, auf dem VxWorks läuft, würde ein Entwickler die Netzwerk-Firewall aktivieren und dabei nur die erforderlichen TCP/IP- und UDP/IP-Ports öffnen sowie sichere Kommunikationskanäle aktivieren – z.B. IPsec, Security Sockets Layer (SSL) oder Virtual Private Network (VPN). Auch sollte man ein Echtzeitbetriebssystem einsetzen, das durch das Virtual Private Network Consortium hinsichtlich VPN-Kompatibilität getestet und zertifiziert ist. Diese Zertifizierung bietet zusätzliche Sicherheit, dass sich ein mit einem solchen RTOS ausgestattetes Embedded-Gerät leicht an die Enterprise VPNs anbinden lässt. Security für Daten und Data Storage Als Bestandteil der Schutzstrategie sollten Entwickler speziell für portable Geräte und Geräte mit auswechselbaren Speichern eine Datenverschlüsselung in Betracht ziehen. \’Data Security\‘ – der Schutz persönlicher Daten – ist für Geräte mit Patientendaten sogar gesetzlich vorgeschrieben. Wie bereits erwähnt, ist der zusätzlich erforderliche Verarbeitungsaufwand ein potenzieller Nachteil der Datenverschlüsselung. Die Intel AES-NI-Befehle in der künftigen Intel Core-Prozessorfamilie der dritten Generation reduzieren diesen Zusatzaufwand enorm, indem sie Techniken wie \’Full-Disk Encryption\‘ attraktiver machen. Zusätzlich sorgen die neuen DRNG-Fähigkeiten für eine höhere Sicherheit dieser Verschlüsselung. Partitionierung zum Schutz wichtiger Komponenten Embedded-Systeme nutzen heute Multi-Core Plattformen für ein General Purpose OS (GPOS) wie Linux oder Microsoft Windows auf der gleichen Plattform mit einem Embedded RTOS wie VxWorks. Diese Konsolidierung wird durch einen als Hypervisor bekannten Software-Layer ermöglicht, der sich zwischen Hardware und Betriebssystem befindet. Bild 3 zeigt als Beispiel den Wind River Hypervisor. Er abstrahiert die Hardware und präsentiert jedem Betriebssystem das, was als \’Dedicated\‘ Hardware-Plattform erscheint. Die Best Practice \’Einfaches Design, einfache Verteidigung\‘ würde empfehlen, dass die beste Security erreicht wird, indem man GPOS und Echtzeitbetriebssystem getrennt hält. Somit ist eine Schlüsselfunktion eines Hypervisors die Separation der Gast-Betriebssysteme. Aus Sicht der Security ist dies eine entscheidende Überlegung, da eine Konsolidierung mehr potenzielle Zugangspunkte schafft und Software mit höherer und geringerer Sicherheit auf einer Plattform kombinieren kann. Systeme vor Angriffen schützen Alleine durch die Einbindung von Sicherheitsfunktionen wird ein System noch nicht sicher. Um die beiden Best Practices \’Ausfallsicherheit\‘ und \’Verteidigungstiefe\‘ zu adressieren, müssen Sicherheitsfunktionen für eine Vielzahl von Unwägbarkeiten entwickelt, getestet und implementiert werden. Z.B. muss ein Entwickler, der sein System vor DOS-Angriffen (Denial-of-Service) oder fehlerhaften Daten schützen möchte, das Memory für den Netzwerk-Stack erhöhen. Damit kann der Stack mit größeren Datenmengen zurechtkommen und den unterbrechungsfreien Betrieb gewährleisten. Schlussbemerkung Security ist eine Reise, kein Ziel. Kein System ist komplett oder für immer sicher. Neue Bedrohungen entstehen täglich. Demnach verlangt die Entwicklung sicherer Systeme für Industrie- und Medizingeräte ein ganzheitliches Konzept, das auf Best Practices für Security basiert und alle gewünschten und oft nicht gewünschten Verbindungen von Geräten zur Außenwelt berücksichtigt. Indem man die Vorteile der Sicherheitsfunktionen, Technologien und Zertifizierungen von VxWorks und der künftigen dritten Generation der Intel Core-Prozessorfamilie nutzt, ist man bei der Entwicklung von Medizin- und Industriesystemen für lange Zeit auf der sicheren Seite. Außerdem erhalten Entwickler wichtige Wettbewerbsvorteile auf dem schnell wachsenden Markt für vernetzte, intelligente Geräte.