Alles im Blick bei der Sicherheit von IoT-Geräten? Zum Revival von Fault Injection-Angriffen

Ein Fachartikel von Expert IT Security Consultant Manuel Stotz

Die Entwicklung von IoT-Geräten und deren Einsatzbereiche erweitern sich kontinuierlich. Da IoT-Geräte oftmals auch kritische Aufgaben übernehmen (beispielsweise im Bereich Medizintechnik oder Smart Energy) und/oder sehr exponiert sind (Internet) bzw. teilweise auch eine Ankopplung in weitere sensible Netzbereiche haben, sind sie oft Ziel potenzieller Cyberangriffe. Aus diesem Grund sollte die Sicherheit ein entscheidender Aspekt ihres Designs sein.

Meist im Fokus: Die Evergreens bei der Sicherheit von IoT-Geräten

Geht es um die Sicherheit von IoT-Geräten, sind in aller Regel die folgenden Anforderungen zu berücksichtigen:

  • Allgemeine Reduzierung der Angriffsfläche sowie Wahrung von IT-Sicherheitszielen/Prinzipien (Principle of Least Privilege, Need-to-know-Prinzip, CIA-Triade)
  • SecureBoot/TrustedBoot inklusive Trusted Execution Environment (TEE)
  • Sichere Firmwareupdates und Aktualität der Softwarebasis
  • Verschlüsselung einschließlich Signierung sensibler Daten / Intellectual Property
  • Sichere Kommunikationsprotokolle (Front-End/Back-End)
  • Starke Authentifizierung sowie Zugriffsschutz
  • Tamper Detection
  • Weitere Aspekte der physischen Sicherheit wie das Deaktivieren von Entwickler- oder Debuggingschnittstellen
  • Monitoring inklusive Intrusion Detection und Intrusion Prevention
  • Regelmäßige Sicherheitsaudits

Diese Anforderungen werden dann nach einer sorgfältigen Abwägung teilweise oder in Gänze umgesetzt und die Wirksamkeit dieser Maßnahmen wird bei Bedarf regelmäßig geprüft.

An diesem Punkt stellt sich die Frage, ob darüber hinaus noch andere, bislang nicht in Betracht gezogene Möglichkeiten bzw. Risiken/Angriffsmethoden für das Produkt in Bezug auf dessen IT-Sicherheit bestehen. Hier kommen dann die sogenannten Side Channel-Angriffe und Fault Injection-Angriffe ins Spiel. Bei Seitenkanalangriffen handelt es sich um Angriffsarten, die indirekte Informationen wie etwa Stromverbrauch, elektromagnetische Strahlung oder zeitliche Abhängigkeiten nutzen, um an Informationen wie etwa kryptografisches Schlüsselmaterial zu gelangen. Fault Injection-Angriffe andererseits nutzen kontrolliert erzeugte Fehler oder Störungen, um die Funktionalität zu beeinflussen oder vertrauliche Informationen zu kompromittieren.

Häufig übersehen: Das Revival von Side Channel-Angriffen und Fault Injection-Angriffen

Side Channel-Angriffe und Fault Injection-Angriffe sind keinesfalls neue Angriffsmethoden. Sie sind schon seit mehreren Jahrzehnten bekannt, gewinnen jedoch in den letzten Jahren an Bedeutung. Dies hat mehrere Gründe: Erstens trägt der vermehrte und oftmals komfortable bzw. teilweise auch automatische Einsatz von IT-Sicherheitsfunktionen bzw. -Prinzipien zur Attraktivität von Side Channel-Angriffen und Fault Injection-Angriffen bei. Auch die steigenden Anforderungen an die Produktsicherheit und das daran geknüpfte Budget einschließlich der gesammelten Erfahrung der Designer und Entwickler spielen eine Rolle. Kurz: Die 'klassischen' Angriffsarten haben immer weniger Aussicht auf Erfolg. Zudem wachsen das Wissen sowie die teilweise kostengünstige Verfügbarkeit von Equipment im Bereich dieser alternativen Angriffsmethoden rasant. Grund genug also, einen genaueren Blick auf eine dieser Angriffsmethoden zu werfen.

Was sind Fault Injection (FI)-Angriffe?

Im Allgemeinen sind Fault Injection-Angriffe physische Angriffe, bei denen kontrolliert Fehler oder Störungen in ein System eingebracht bzw. hervorgerufen werden, um die aktuelle Funktionalität zu beeinflussen und im weiteren Verlauf die Sicherheit des Systems zu beeinträchtigen oder vertrauliche Informationen zu kompromittieren. Dazu wird das System kontrolliert zum Beispiel elektrischen oder elektromagnetischen Störungen ausgesetzt. Bei Voltage Glitching-Angriffen wird beispielsweise die Stromversorgung beeinträchtigt, während bei Clock Glitching-Angriffen der zugrunde liegende Takt manipuliert wird. Bei Electromagnetic Fault Injection-Angriffen werden elektromagnetische Interferenzen genutzt, um Fehler oder Störungen zu provozieren. Auch Optical Fault Injection-Angriffe, die hochintensive Laserpulse einsetzen, werden in der Praxis genutzt. Fault Injection-Angriffe können generell auf verschiedene Komponenten eines Systems abzielen, wie etwa die genutzte Hardware und/oder Software sowie deren Kommunikationskanäle. Zwar berücksichtigten Chiphersteller, je nach Art der Komponenten, Fault Injection-Angriffe schon beim Entwurf, etwa durch spezielle Designprinzipien beispielsweise unter Verwendung geeigneter Abschirmungs- und/oder Filtertechniken. Dennoch ist es wichtig, diese Arten von Angriffen in die jeweilige Risikobestimmung des eigenen Produkts miteinzubeziehen und die Auswirkungen (auch auf die Softwarebasis) bestenfalls durch die Durchführung von (regelmäßigen) Sicherheitstests zu bestimmen und gegebenenfalls zu mindern. Am Beispiel eines Electromagnetic Fault Injection-Angriffs soll dies nun konkretisiert werden.

Ein Beispiel für einen Fault Injection-Angriff: Der Electromagnetic Fault Injection (EMFI)-Angriff

Bei Electromagnetic Fault Injection-Angriffen werden elektromagnetische Interferenzen genutzt, um Fehler oder Störungen zu erzeugen. Dazu wird das zu untersuchende Testobjekt, beispielsweise ein Mikrocontroller, einem elektromagnetischen Feld ausgesetzt, wodurch Spannungen/Ströme in dessen internen Schaltungen induziert werden. Diese wiederum führen eventuell zu Fehlern, wie etwa dem Überspringen von kritischen Sicherheitsfunktionen wie Integritätsprüfungen beim Bootvorgang, was dann wiederum zur Kompromittierung des gesamten Systems führen kann. Andere Fehlfunktionen können analog dazu genutzt werden, um schützenswerte sensible Daten aus dem Testobjekt zu extrahieren. Die zielgerichtete Durchführung eines EMFI-Angriffs kann (zeitlich) komplex sein und erfordert spezielles Equipment und Erfahrung, da präzise elektromagnetische Impulse mit ausreichender Stärke und Dauer erzeugt und in zeitlicher Korrelation eingebracht werden müssen. Außerdem muss der Analyst in der Lage sein, die resultierenden Ergebnisse exakt zu interpretieren, um nützliche Informationen über den dadurch hervorgerufenen internen Zustand zu erhalten. Diese Interpretation erfordert unter Umständen einen nicht zu unterschätzenden Analyseaufwand und stützt sich in vielen Fällen auf detaillierte Kenntnisse des Hardware- und Softwaredesigns des Testobjekts. Aus diesem Grund sind Fault Injection-Angriffe generell meist sehr individuell und nicht immer einfach umzusetzen bzw. durchzuführen. Dessen ungeachtet finden diese Angriffe in der Praxis jedoch (vermehrt) statt, da sich die Rahmenbedingungen in Bezug auf die implementierten/eingesetzten Sicherheitsfunktionen (Verschlüsselungs- und Authentifizierungsmechanismen, Secure Elements / Secure Storage etc.) in aktuellen Produkten positiv geändert haben. Zudem wirken sich die (oftmals) regelmäßig durchgeführten klassischen Sicherheitsanalysen, beispielsweise auf Web-Front-Ends oder andere vom Produkt angebotenen Schnittstellen/Dienste, vorteilhaft auf das Sicherheitsniveau aus und erfordern von der Gegenseite somit andere kreative Ansätze im Umgang mit diesen Hürden. Die Kosten für das Equipment zur Durchführung eines EMFI-Angriffs können, bei weniger komplexen Anforderungen, auf einen niedrigen dreistelligen Betrag (Euro) angesetzt werden. Steigt jedoch die Komplexität und kommen weitere spezifischen Anforderungen an den Angriff bzw. dessen Reproduzierbarkeit und damit an das Equipment hinzu, liegt man schnell im vier- bis fünfstelligen Bereich.

Alles im Fokus, nichts Out of Scope: SySS-Sicherheitsanalysen von IoT-Geräten

Auch die SySS erweitert ihr Portfolio stetig um neue Angriffsmethodiken. So gewährleisten wir, dass unsere IT Security Consultants, im Fall von IoT-Geräten die Mitarbeitenden unseres Fachteams Embedded Security, ihre praxisorientierten Sicherheitsanalysen jederzeit an den aktuellen Stand der Technik einschließlich der Anforderungen unserer Kunden bestmöglich anpassen können.

Sollten Sie Ihr Produkt testen lassen wollen, unterstützen wir Sie gerne mit unserem Wissen und unserer Erfahrung. Die eingangs erwähnten 'klassischen' Bereiche decken wir mit unseren Testmodulen ES/EXTERNAL, ES/FIRMWARE, ES/INTERNAL, ES/PROTOCOL oder ES/WIRELESS ab. Auch zur Absicherung gegenüber weiteren Angriffsmethoden wie die hier beispielsweise vorgestellten (Glitching; EMFI) berät unser Technisches Consulting Sie gerne, selbstverständlich auch schon während verschiedener Entwicklungsphasen.

Kontaktieren Sie uns jederzeit unter anfrage(at)syss.de.

Ihr direkter Kontakt zu SySS +49 (0)7071 - 40 78 56-0 oder anfrage@syss.de | IN DRINGENDEN FÄLLEN AUSSERHALB DER GESCHÄFTSZEITEN +49 (0)7071 - 40 78 56-99

Als Rahmenvertragskunde wählen Sie bitte die bereitgestellte Rufbereitschaftsnummer

Ihr direkter Kontakt zu SySS +49 (0)7071 - 40 78 56-0 oder anfrage@syss.de

IN DRINGENDEN FÄLLEN AUSSERHALB DER GESCHÄFTSZEITEN +49 (0)7071 - 40 78 56-99

Als Rahmenvertragskunde wählen Sie bitte die bereitgestellte Rufbereitschaftsnummer

Direkter Kontakt

+49 (0)7071 - 40 78 56-0 oder anfrage@syss.de

IN DRINGENDEN FÄLLEN AUSSERHALB DER GESCHÄFTSZEITEN

+49 (0)7071 - 40 78 56-99

Als Rahmenvertragskunde wählen Sie bitte die bereitgestellte Rufbereitschaftsnummer