Deterministische Cybersicherheit

Zwei Methoden – ein Erfolg

9. Januar 2020, 8:50 Uhr | von Assaf Harel
Diesen Artikel anhören

Fortsetzung des Artikels von Teil 1

Überwinden von Sicherheitseinschränkungen

Die oben genannten Hindernisse sind der Grund, warum es so schwierig ist, angemessene Sicherheit in Embedded-Systemen zu realisieren – sowohl in den Steuergeräten eines Autos als auch bei industriellen Steuerungen.
Karamba Security hat zwei primäre Verteidigungsstrategien identifiziert, die für die hohen Anforderungen gemacht sind und die beschriebenen Herausforderungen lösen:
1. Automatisch generiertes mehrdimensionales Whitelisting
2. Automatisch eingebettete Control Flow Integrity (CFI)

Mit der Kombination der beiden Ansätze erübrigen sich für Sicherheitsbeauftragte sowohl Sicherheits-Updates als auch das Eingreifen von Entwicklern. Um die genannten Herausforderungen zu bewältigen, sollte eine Security-Anwendung für industrielle Systeme deterministisch und nicht heuristisch sein. Beim Filtern eingehender Daten oder Nachrichten führen prädiktive Algorithmen (Heuristiken) dazu, dass Zero-Day- und Day-One-Angriffe nicht immer zu verhindern sind. Gleichzeitig können sie zu False Positives führen. Deshalb ist eine deterministische Sicherheit, die nach dem Prinzip des multidimensionalen Whitelistings funktioniert, ideal.

Die Anwendung nutzt den deterministischen Charakter von geschlossenen Systemen. Sie führt eine Reihe von endlichen Operationen aus, die alle in der Produktionssoftware der Systeme vordefiniert sind. Jedes Ändern, das nicht vom Lieferanten des Systems genehmigt wurde, muss einen Versuch darstellen, ein System zu infiltrieren. Das Ziel ist, Hacker zu stoppen, bevor es ihnen gelingt, Zero-Day- oder Day-One-Angriffe auszuführen. Indem der Entwickler die Binärdateien deterministisch gegen jeden Änderungsversuch versiegelt, kann das gelingen.

passend zum Thema

Control Flow Integrity ermöglicht es, die Integrität von Funktionsaufrufen und Funktionsrückgaben (Function Calls und Function Returns) automatisch und in Echtzeit zu prüfen. Sobald eine Abweichung vom vordefinierten Control-Flow-Graphen identifiziert wurde, nimmt das System automatisch an, dass versucht wird, eine Sicherheitslücke im Speicher innerhalb der Software des Geräts auszunutzen. Proaktive Maßnahmen sind eine Möglichkeit, um den Angriff zu verhindern, bevor es dem Hacker gelingt, die Kontrolle über das Zielgerät zu übernehmen (Bild 2).

Bei der Analyse dieses Ansatzes entdeckt der Anwender viele Vorteile – speziell für die Automatisierungsbranche.

  • Sicherheits-Updates sind überflüssig
  • Intervention des Entwicklers ist nicht nötig
  • Automatisch eingebettete Intervention.

Sicherheitsupdates und Eingreifen des Entwicklers nicht mehr nötig

Geschlossene Embedded-Systeme sind nicht ständig mit aktuellen Sicherheits-Updates aktualisierbar. Im Idealfall sollten Sicherheitsanwendungen in der industriellen Fertigung, ebenso wie im Auto, so konzipiert sein, dass sie kontinuierlich laufen, ohne auf Software-Updates angewiesen zu sein. Gerade bei Systemen, die weltweit im Einsatz sind, sind wiederholte Angriffe zu verhindern, um Schäden für Betrieb und Image zu vermeiden. Lieferanten von geschlossenen Embedded-Systemen sollten deshalb Schutzmechanismen einsetzen, die nicht von Updates abhängig sind (Bild 3).

Bild 3. Die Kombination aus Whitelisting und Control Flow Integrity schützt eingebettete Systeme ganz ohne Sicherheits-Updates oder das Eingreifen von Entwicklern.
Bild 3. Die Kombination aus Whitelisting und Control Flow Integrity schützt eingebettete Systeme ganz ohne Sicherheits-Updates oder das Eingreifen von Entwicklern.
© Karamba Security

Es besteht ein inhärenter Konflikt zwischen höherer Sicherheit und der Notwendigkeit, die Entwicklungslebenszyklen aus Wettbewerbsgründen zu verkürzen. Eine Möglichkeit, das System ohne großen Integrationsaufwand, also ohne viele Personenstunden und ohne Änderung bestehender Entwicklungsprozesse zu stabilisieren, ist dringend nötig für die Branche.

Automatisch eingebettete Sicherheit

Das strikte Einhalten offizieller Richtlinien zur Einführung von Security Best Practices und Programmen schon während des Entwicklungsprozesses baut eine erste proaktive Verteidigungslinie gegen Hackerangriffe auf. Solche Richtlinien legen beispielsweise die ISO (Internationale Organisation für Normung) oder das NIST (National Institute of Standards and Technology) in den USA fest. Sie verhindern den Angriff, bevor das Embedded-System kompromittiert wird. Das bedeutet, bevor es dem Angreifer gelingt, beispielsweise mit einer Remotecode-Ausführung oder einer Privilege-Escalation die Kontrolle über das angegriffene Gerät zu erhalten. Über die Integration deterministischer Sicherheit in die Soft- und Firmware des Geräts kann sich das Gerät selbst vor Cyberangriffen schützen, ohne auf Patch-Updates und auf das Bereitstellen von Patches angewiesen zu sein.

Deterministische Sicherheit ist entscheidend

Der heuristischen Sicherheit überlegen ist die deterministische Sicherheit. So ist deterministisches Validieren ein eindeutiges Ergebnis der gegebenen Umstände, während heuristische Schlussfolgerungen auf vergangenen Statistiken und erlernten Verhaltensmustern basieren.

Allerdings braucht der Kunde einen deterministischen Schutz nicht unbedingt in allen Systemen und Szenarien. Heuristiken sind häufig dort eingesetzt, wo deterministische Sicherheit nicht möglich ist. Das ist der Fall, wenn häufige Änderungen nötig sind und keine sichere Basislinie (»known good«) festgelegt ist, oder aber, wenn das known good bei vielen Geräten und Systemen identisch sein soll. Jedoch scheitert der heuristische Ansatz, wenn er automatisch auf Umgebungen angewendet wird, in denen er nicht ausreicht. Das trifft auf vernetzte oder IoT-Geräte (Internet of Things) zu, auf industrielle Steuerungen oder auf Kfz-Steuergeräte. Heuristiken können dort das Risiko erhöhen, statt es zu reduzieren.

Es gibt einen großen Unterschied zwischen einer Unternehmens- oder Rechenzentrumsumgebung und der von geschlossenen Embedded-Systemen wie IoT-Geräten, Gateways oder anderen Controllern. In IT-Umgebungen gibt es unzählige Kombinationen und Konfigurationen, die regelmäßig aktualisiert werden und eine gewisse Toleranz erlauben. Dagegen sind Netzwerk- und Steuergeräteumgebungen ressourcenbeschränkt. Sie verlassen sich nicht auf Internet-Updates und können lediglich einen definierten Funktionsumfang auf einem begrenzten Speicherplatz ausführen.

 

Der Autor

Assaf Harel ist Chief Scientist und Mitbegründer von Karamba Security. Er verfügt über umfassende Erfahrung mit Embedded-, Netzwerk-, Sicherheits- und Mobiltechnologien. Er war Senior F&E-Manager (Forschung und Entwicklung) bei Check Point Software Technologies und beaufsichtigte das Entwickeln mehrerer Endpoint-Sicherheitsprodukte und -techniken. Zuvor hatte er Positionen in der Software-Entwicklung bei Metalink und Dune Networks inne. Assaf diente in der Elite-Intelligenz-Einheit der israelischen Verteidigungskräfte (IDF). Er hält einen B.Sc. und einen M.Sc. Cum Laude in Informatik vom Technion, Israel Institute of Technology, sowie zusätzlich einen MBA Cum Laude von der Haifa University.
assaf.harel@karambasecurity.com

Assaf Harel
Assaf Harel ist Chief Scientist und Mitbegründer von Karamba Security.
© Karamba Security

  1. Zwei Methoden – ein Erfolg
  2. Überwinden von Sicherheitseinschränkungen

Lesen Sie mehr zum Thema


Das könnte Sie auch interessieren

Jetzt kostenfreie Newsletter bestellen!

Weitere Artikel zu elektroniknet

Weitere Artikel zu Cyber-Security

Weitere Artikel zu Betriebssysteme