White-Listing Security mit Embedded-Systemen

Bild: TQ-Systems
13.06.2014

Embedded-Systeme werden immer mehr ein wesentlicher Teil von Maschinen und Systemen. Und die Vernetzung von Systemen nimmt rasant zu, was unter dem Schlagwort „Industrie 4.0“ und „Internet of Things“ beschrieben wird. Doch wie sicher sind diese Systeme? Welche Aspekte und Funktionen können Entwickler schon bei der Konzeption berücksichtigen?

Embedded-PC-Applikationen profitieren von der hohen Kompatibilität und einfachen Software-Integration. Standard-Betriebssysteme wie Windows und Linux lassen sich schnell und einfach auf diesen Systemen installieren, sodass softwaretechnisch der Fokus meist auf der eigentlichen Applikation liegt. Mit dem Thema Sicherheit wird hierbei in vielen Bereichen noch sehr fahrlässig umgegangen. Eigentlich sollte das ja schon standardmäßig über das Betriebssystem abgedeckt werden, oder nicht? Wenn überhaupt spezielle Sicherheitsfeatures berücksichtigt werden, so geschieht dies oft in Anlehnung an Standard-PC-Technik, bei der das Thema Sicherheit über Firewall und Virenscanner abgedeckt wird. Diese Maßnahmen sind jedoch im Embedded-Bereich unzureichend.

Schutz vor Bedrohungen aus dem Netz

Für Office-Anwendungen mit Standard-PCs leisten Virenscanner in Kombination mit Sicherheitsupdates gute Dienste. Täglich kommt es zu neuen Bedrohungen aus dem Netz, sodass ein ständiges Update eine entscheidende Rolle für die Qualität des Schutzes darstellt. Und genau da stößt der Entwickler bei Embedded-Systemen schnell an die Grenzen. Dort ist meist gewünscht, dass ein System möglichst unverändert über einen langen Zeitraum geliefert und verbaut wird. So besteht schon zum Zeitpunkt der Auslieferung die Problematik, dass das System nicht mit den neuesten Sicherheitsupdates und aktuellsten Listen möglicher Schädlinge ausgestattet ist. Auch ist die Verbindung zu Updateservern während des Betriebs in der Regel eingeschränkt beziehungsweise oft sogar gar nicht möglich. Mit jedem Tag des Betriebs steigt somit das Risiko einer Manipulation oder Beschädigung von außen.

Im Gegensatz zu Office-Systemen haben Embedded-Systeme hier jedoch eine Besonderheit, die unbedingt genutzt werden sollte: Die Softwarefunktionalität ist genau definiert und somit sind auch die Programme und Services, die ausgeführt werden dürfen, bekannt. Lässt der Entwickler also nur die Ausführung dieser Routinen zu und grenzt alles andere aus, so hat er einen qualitativ sehr hochwertigen Schutz vor schädlicher Software von außen. Und das ganz ohne die Notwendigkeit ständiger Updates. Dieses sogenannte White-Listing-Verfahren wird beispielsweise von Herstellern wie McAfee unter dem Namen Embedded-Security adressiert. Besonders interessant und kostengünstig ist dieser Ansatz für Systeme mit Intels neuesten Low-Power CPUs „Quark“ und Atom „BayTrail“ (E3800). Mit diesen beiden Prozessorfamilien bietet Intel nämlich die sogenannte „Moon-Island“-Plattform an. Diese enthält neben einem vorgefertigten Windriver-Linux-BSP auch das oben erwähnte „McAfee-Embedded-Security“-Paket, sodass die Implementierung und Lizensierung einfach geht.

Dass es sich bei „Moon Island“ um ein Paket handelt, bei dem das Thema Sicherheit groß geschrieben wird, wird ersichtlich, wenn die Security Features betrachtet werden, die Windriver zusätzlich einbringt: Secure Package Management, Key Management, Resource Control, Integrity Measurement, Secure Update und Trusted Boot.

Zum Schutz passende Hardware

Um all diese Features vollständig zu unterstützen, bedarf es jedoch auch passender Hardware. Als zentrale Einheit ist hier zunächst der Prozessor gefragt. Intel greift diese Thematik mit dedizierter Hardware-Unterstützung mit der Intel-Atom-Familie E3800 („BayTrail“) auch in seiner Low-Power-Produktlinie auf. So verfügen die Prozessoren beispielsweise über eine eigenständige AES-NI-Hardwareeinheit, die den weit verbreiteten AES-Verschlüsselungsalgorithmus unterstützt. Da die Verarbeitung der Daten außerhalb der eigentlichen CPU stattfindet, stehen deren vollständige Ressourcen für die Aufgabe der Applikation zur Verfügung. Zu übertragende oder gespeicherte Daten können so unabhängig von der CPU-Auslastung effizient in Echtzeit entschlüsselt beziehungsweise verschlüsselt werden. Anwender können damit neue Aspekte in puncto Sicherheit von Embedded-Systemen berücksichtigen.

Ein weiterer Hardware-Mechanismus für ein sicheres Embedded-System ist TPM (Trusted-Platfrom-Module). TPM-Bausteine, die als externe Komponenten an die CPU angebunden werden müssen, stellen Hardwarefunktionen zur Verfügung, die unter anderem dafür benötigt werden, um Funktionen wie Secure Boot zu realisieren. Dieser Sicherheitsmechanismus greift schon während des Bootvorgangs. So kann sichergestellt werden, dass nur das Betriebssystem gebootet wird, welches für dieses Embedded-System zulässig ist. Booten von anderen Speichermedien oder von manipulierten Betriebssystemen wird zuverlässig unterbunden. Obwohl TPM schon seit 2003 als Spezifikation von der Trusted Computing Group vorliegt, kam es bisher nur in verhältnismäßig wenigen, sehr sicherheitskritischen Anwendungen wie Banking und Geldspielautomaten zum Einsatz. Auch der Moon Island Software Stack unterstützt Secure Boot unter Verwendung von TPM-Bausteinen. Berührungsängste mit diesem Thema gehören so eher der Vergangenheit an, da alle notwendigen Komponenten bereits passend zusammengestellt sind.

Plagiatschutz

Wer bei Embedded-Systemen von Sicherheit spricht, der darf den Aspekt des Plagiatschutzes nicht außen vor lassen. Viele Firmen stecken großen Aufwand in die Realisierung ihrer Anwendungssoftware. Diese ist meist ausschlaggebend für den Funktionsumfang und bietet das größte Potenzial für Alleinstellungsmerkmale gegenüber dem Wettbewerb. Aus diesem Grund sind der Schutz von eigens entwickelten Softwarefunktionen sowie die gewinnbringende Lizensierung von einzelnen Produktfeatures wichtiger denn je. Um die Investition und den Vorsprung zu schützen, bedarf es sicheren Mechanismen. Softwarebasierende Schutzmechanismen stellen hierbei meist nur eine suboptimale Lösung dar. Mit speziellen Security Controllern wie der Sentinel HL von SafeNet wird der Schutz erhöht. Hier werden einzelne Programm-Code-Sequenzen der Anwendung komplett verschlüsselt im externen Controller verarbeitet, sodass ein Reverse-Engineering nahezu ausgeschlossen ist. Auch die sichere Lizenzabfrage von einzelnen Softwarefeatures kann bei Einsatz des Security Controllers sicher realisiert werden. Ein unberechtigtes Ausführen von nicht lizenzierten Softwarefunktionen ist somit unmöglich.

Baukasten mit Security Features

Für die aufgeführten Sicherheitsaspekte sind verschiedene Starterkits und Softwarebeispiele diverser Hersteller auf dem Markt. TQ bietet mit der Embedded-PC-Plattform QSys einen vollständigen Embedded-PC-Baukasten, der die genannten Security Features in einer serienreifen Lösung zusammenfasst. Damit lassen sich kundenspezifische Applikationen, Box-PCs und Panel-PCs günstig und schnell realisieren. Auch Full-Custom-Designs werden adressiert. Diese können vom Konzept bis zum fertigen Produkt komplett aus einer Hand zuverlässig umgesetzt werden.

Bildergalerie

  • Abbildung 1: TQ-Anwendungsbeispiel mit QSys-BoxPC mit Intel-Atom-E3800 und Zertifizierung für den Intel Moon Island Software Stack

    Abbildung 1: TQ-Anwendungsbeispiel mit QSys-BoxPC mit Intel-Atom-E3800 und Zertifizierung für den Intel Moon Island Software Stack

    Bild: TQ-Systems

  • Abbildung 2: QSys-Mainboard von TQ-Systems ausgestattet mit dem OnBoard Security Controller Sentinel HL von SafeNet.

    Abbildung 2: QSys-Mainboard von TQ-Systems ausgestattet mit dem OnBoard Security Controller Sentinel HL von SafeNet.

    Bild: TQ-Systems

  • Abbildung 3: Die QSys-Plattform ist ein Embedded-Baukasten, der die Entwicklung von sicheren Box- und Panel-PCs ermöglicht.

    Abbildung 3: Die QSys-Plattform ist ein Embedded-Baukasten, der die Entwicklung von sicheren Box- und Panel-PCs ermöglicht.

    Bild: TQ-Systems

Firmen zu diesem Artikel
Verwandte Artikel