Sicherheit in der Industrie hat zwei Facetten: Betriebssicherheit oder \’Safety\‘ und Angriffssicherheit oder \’Security\‘. Die Betriebssicherheit befasst sich mit dem Schutz von Mensch und Umwelt vor der Maschine, während sich die Angriffssicherheit dem Schutz der Maschine vor einem Angreifer widmet. Gängige Security-Vorkehrungen umfassen etwa Wachpersonal, Authentifizierung am Eingang, Überwachungssysteme oder Zäune. In der modernen Fabrik der Industrie 4.0 genügen diese klassischen Security-Vorkehrungen aufgrund der Vernetzung nicht mehr. Doch die klassischen Schutzmaßnahmen der IT wie Virenschutz, Verschlüsselung, Benutzerbeschränkungen oder Firewalls sind nicht 1:1 in den Fabrikalltag übertragbar.
Sicherheit in der Industrie bedeutet auch Know-how-Schutz
Angriffe durch Stuxnet, Duqu oder Flame haben in den vergangenen Jahren gezeigt, wie verwundbar industrielle Systeme sind: Unberechtigte können \’von außen\‘ durch geschickte Angriffe auf Schwachstellen, wie z.B. Internet-Zugänge für die Fernwartung, an sensible Informationen gelangen oder die Einstellungen an Maschinen verändern. Die Manipulationen können dazu führen, dass fehlerhaft produziert oder sogar die komplette Produktion lahmgelegt wird. Und Sabotage ist nicht die einzige Gefahr: Was eine Maschine kann und wie sie funktioniert, wird heute nicht mehr alleine von ihrem mechanischen Aufbau oder einer einfachen Steuerelektronik bestimmt, sondern mehr und mehr von ihrer Embedded-Software. Mit all dem Wissen und den Erfahrungen eines Herstellers, die in der Embedded-Software enthalten sind, wird diese zum lohnenden Ziel von Know-how-Dieben und Produktpiraten.
Integritätsschutz gegen Manipulation in der Produktion
Daher sollte der Integritätsschutz einen wesentlichen Bestandteil von Sicherheitsstrategien im industriellen Umfeld darstellen. Unter diesem Begriff versteht man Sicherheitsmaßnahmen gegen unberechtigte Manipulation. Jederzeit muss das Produktionssystem erkennen können, ob Programme oder Daten manipuliert wurden. Nur so lässt sich sicherstellen, dass der Code erst ausgeführt wird, wenn der berechtigte Herausgeber erkannt wurde. Im Falle einer Manipulation muss das System sofort in einen sicheren Zustand gebracht werden. Daher sind Lösungen, die sowohl starke Kryptographie als auch sichere Hardwareelemente wie Secure Elements oder Smart-Card-Chips unterstützen, erforderlich, die den nötigen Integritätsschutz bieten können. Beim Integritätsschutz sollten verschiedene Ebenen durchlaufen werden, die aufeinander aufbauen, beginnend mit der untersten. Die jeweils nachfolgende Ebene wird nur geladen und durchlaufen, wenn ihr Vorgänger zuvor korrekt geprüft und als \’vertrauenswürdig\‘ eingestuft wurde. Die Prüfungen gehen bei umfassenden Schutzkonzepten sowohl von einer Ebene zur nächsten, als auch in Form einer \’Rückwärtsprüfung\‘ wieder zurück. Dabei sollten folgende Schritte durchgeführt werden:
- Signierung der Anwendung
- Prüfung gegen eine Zertifikatskette
- Rückwärtsprüfung
Zum umfassenden Absichern dieser Prüfmechanismen empfiehlt es sich, für jeden Programmcode oder für alle Daten sowohl einen Hash-Wert als auch eine Signatur zu erzeugen. Über den Hash-Wert erkennt das System, ob die Daten verändert wurden. Die Prüfung der Signatur gegen eine Zertifikatskette zeigt an, ob der Programmcode oder die Daten vom berechtigten Herausgeber stammen. Dazu signiert der Herausgeber zunächst die Originalsoftware mit seinem privaten Schlüssel und codiert die Software anschließend. Dann kommt die verschlüsselte Software zusammen mit dem öffentlichen Teil des Signaturzertifikates auf der Maschine zum Einsatz.
Durchgehende Zertifikatskette sicherstellen
Programmcode und Parameter sollten dabei mit privaten Schlüsseln oder \’private keys\‘ signiert werden, da diese mehr Sicherheit bieten als der Zugriff auf globale Verschlüsselungsmechanismen oder \’public keys\‘. Diese Schlüssel werden in einer sicheren Hardware gespeichert. Die unterschiedlichen Zertifikate werden von einem Rootzertifikat abgeleitet, das als Vertrauensanker in einer sicheren Ebene liegt, auf die nur selten zugegriffen werden muss. Damit wird dieses Rootzertifikat relativ sicher vor Missbrauch aufbewahrt. Es dient als Basis für sogenannte \’Certificate Revocation Lists\‘ (CRLs), mit deren Hilfe bei Bedarf die im Feld befindlichen Zertifikate zurückgezogen werden können.
















