Blogartikel_ChipSynthesis_Felix_Oberhansl_Fraunhofer_AISEC

Fraunhofer AISEC im Auftrag des BSI: Neue Studie zur Synthese von kryptografischen Hardware-Implementierungen

Die Studie des Fraunhofer AISEC zur Sicherheit kryptografischer Hardware-Implementierungen fokussiert Angriffe auf physische Hardware, wie Seitenkanalangriffe und Fehlerangriffe, sowie Maßnahmen zu deren Abwehr. Diese Schutzmechanismen können durch Optimierungen im Prozess des Chip-Designs potenziell Schaden nehmen. Die Untersuchung zeigt, dass Schutzmaßnahmen in komplexe Design-Abläufe integriert und bei der Hardware-Design-Synthese berücksichtigt werden sollten, um gegenüber Hardware-Angriffen resilient zu sein. Die Erkenntnisse nutzen Hardware-Designern bei der Entwicklung von robusten und sicheren Chips.

Haben Sie schonmal mit einem mulmigen Gefühl ihre persönlichen Daten auf einer Website eingegeben? Nur 4,6 % aller Deutschen halten das Internet für sehr sicher, wenn es um ihre persönlichen Daten geht [1]. Verschiedene Datenleaks und auch Beiträge auf diesem Blog zeigen: Nicht zu Unrecht. Vertrauenswürdigkeit ist essenziell für technische Lösungen in einer vernetzten Welt. Für elektronische Geräte heißt das u. a., dass ein Angreifender in der Nähe des Geräts keine sensiblen Daten entwenden kann.

Vertrauenswürdigkeit von elektronischen Geräten

Hat ein Angreifer physischen Zugang zu einem Gerät, ist er nicht auf Software-Angriffe beschränkt. Zusätzlich kann er die zugrunde liegende Hardware angreifen und Schwachstellen ausnutzen. Ein Beispiel für solche Angriffe sind passive Seitenkanalangriffe.  Dabei wird die Stromaufnahme oder die elektromagnetische Abstrahlung eines Geräts gemessen, um Rückschlüsse auf die geheimen Daten zu ziehen, die ein Gerät verarbeitet. Auch sogenannte Fehlerangriffe, bei denen gezielt physikalische Störeffekte erzeugt werden, stellen eine Gefahr für Geräte dar. Zum Beispiel kann ein Chip durch kurzzeitige Störungen im Clock- oder Spannungssignal, sogenannte Glitches, zu einem fehlerhaften Verhalten gezwungen werden. Darüber hinaus können für Fehlerangriffe auch zielgerichtete Laser- oder elektromagnetische Impulse verwendet werden, um Sicherheitsmaßnahmen auszuhebeln oder statistische Angriffe auf geheime Daten zu ermöglichen.

In den Common Criteria (CC) Protection Profiles (PP) sind Schutzklassen gegenüber dieser Art von Angriffen festgelegt. Sie beinhalten Informationen darüber, ob ein Gerät einen effektiven Schutz gegen Angreifende mit einer gegebenen Menge an Wissen, Zeit und Equipment bietet. Die praktische Laboruntersuchung wird von zertifizierten Testlaboren vorgenommen. Die Erstellung des finalen Prüfberichts, der dem zuständigen Zertifizierer übermittelt wird, ist allerdings oft nur der Abschluss einer langen Reihe an Labortests. Vorab-Untersuchungen in gesicherten Umgebungen wie dem Hardware Security Labor des Fraunhofer AISEC ermöglichen es, Schwachstellen früh und kosteneffizient aufzudecken. Für Produkthersteller ist dieser Prozess ein zweischneidiges Schwert. Zum einen haben sie ein großes Interesse daran, dass ihre Produkte gründlich getestet werden, zum anderen wollen sie ihre Produkte möglichst schnell auf den Markt bringen. Die Studie »Security Evaluation of Hardware Design Synthesis«, die das Fraunhofer AISEC im Auftrag des BSI erstellt hat, beschäftigt sich in diesem Spannungsfeld mit einem essenziellen Schritt in der Entwicklung eines Microchips: der »Frontend Synthese«.  Die Frontend Synthese ist der erste Schritt der Chipentwicklung, bei dem eine allgemeine technische Beschreibung in technologieabhängige Bauteile eines Chips übersetzt wird.

Chipentwicklung – ein komplexer Prozess

Die Entwicklung moderner Chips ist ein komplexer Prozess und startet üblicherweise mit einem Konzept, in dem die benötigten Komponenten, zum Beispiel ein Microcontroller und seine Peripherie, festgelegt werden. Anschließend erfolgt eine Beschreibung auf dem sogenannten »Register Transfer Level” (RTL), wo in »Hardware Description Languages« (HDL) die Funktionalität des integrierten Schaltkreises von einem Takt zum nächsten detailliert spezifiziert wird. Es folgt ein erster Syntheseschritt aller ausgewählten Komponenten, der oft auch als »Frontend-Synthese« oder »RTL-Synthese« bezeichnet wird. Dabei wird die funktionale Beschreibung auf RTL-Ebene in eine technologieabhängige Netzliste umgewandelt, die nur noch elementare logische Gatter wie z. B. NAND und XOR enthält. Diese Gatter sind in einem »Process Design Kit« (PDK) definiert. Für jeden Prozess, in dem ein Chiphersteller Fertigung anbietet, gibt es ein PDK, in dem die Standardzellen und andere Design-Regeln festgelegt sind. Die verschiedenen Schritte der Synthese erfolgen mit dedizierter »Electronic Design Automation« (EDA) Software, die die Schaltung z. B. im Hinblick auf Größe oder maximale Frequenz optimiert und gleichzeitig eine korrekte Funktion sicherstellt. Von der Netzliste ausgehend entsteht während des Backend-Designs das sogenannte »Tape-Out«, das alle Informationen beinhaltet, die von der Foundry zur Fertigung des integrierten Schaltkreises benötigt werden.

Die Studie »Security Evaluation of Hardware Design Synthesis«, die das Fraunhofer AISEC im Auftrag des BSI erstellt hat, befasst sich mit der Frontend- bzw. RTL-Synthese. Dieser Entwicklungsschritt ist essenziell für die Härtung eines Chips gegen Seitenkanal- und Fehlerangriffe, die oft bereits auf RTL-Ebene erfolgen.

Vulnerabilität der Hardware Design-Synthesis

Zur Absicherung von Hardware können Seitenkanalangriffe beispielsweise durch »Masking« erschwert oder unterbunden werden. Dabei wird die geheime Information auf mehrere Datenstrukturen, sogenannte Shares, aufgeteilt, die der Schaltkreis verarbeitet. Für sogenanntes »Masking zweiter Ordnung« wird ein Share zufällig gewählt. Der zweite Share bildet sich aus dem ersten Share und den geheimen Daten. Die beiden Shares können nun so verarbeitet werden, dass in der ersten statistischen Ordnung (Durchschnitt) eines physikalischen Seitenkanals (z. B. elektromagnetische Abstrahlung) keine Abhängigkeit zu den verarbeiteten Daten besteht. Das gewünschte Ergebnis der Berechnung kann abschließend durch Rekombination der Shares erhalten werden. Maßnahmen gegen Fehlerangriffe beruhen oft auf redundanten Schaltkreisen, die fehlerhafte Werte erkennen. Andere Formen der Redundanz, z. B. durch zeitliche Wiederholung oder kodierte Daten, können ebenfalls eingesetzt werden.

Während Forschende im Bereich der Hardware-Security oft einen guten Überblick über Hardware-Angriffe und Gegenmaßnahmen haben, fehlt eine Studie, darüber wie sich Gegenmaßnahmen in komplexe Design-Abläufe integrieren lassen. Die Studie »Security Evaluation of Hardware Design Synthesis« setzt hier an und zeigt auf, wie die Effektivität von Sicherheitsmaßnahmen gegenüber Fehlerangriffen durch Hardware-Synthese beeinträchtigt wird. Wir beleuchten, dass unter gewissen Umständen Netzlisten, die von Synthese-Tools erzeugt wurden, nur bedingte Resilienz gegen Hardware-Angriffe aufweisen. Die erstellte Studie nimmt die Perspektive von Hardware-Designern ein und geht darauf ein, was während der Hardware-Synthese zu beachten ist. Sie führt Methoden an, mit denen potenzielle Schwachstellen früh erkannt werden können.

Potenziell fatales Re-timing

Betrachtet wird das Masking-Verfahren als Gegenmaßnahme zu Seitenkanalangriffen. Aus der aktuellen Forschung führen wir das robuste »Probing Model« ein. Dieses Modell ermöglicht es, die formale Korrektheit einer Masking-Implementierung zu verifizieren. Die Robustheit des Modells bezieht physikalische Effekte wie unterschiedliche Signallaufzeiten ein. Das Modell nimmt einen Angreifenden an, der mit limitierten Informationen (sogenannten Probes) versucht, geheime Informationen zu rekombinieren. Solche Information kann zum einen im Zustand eines digitalen Signals (1 oder 0) stecken, aber auch durch Schaltvorgänge, die beispielsweise durch unterschiedliche Signallaufzeiten verursacht werden, entstehen.

Wir zeigen eine detaillierte Fallstudie an einer maskierten AES S-box und betrachten die »Re-timing-Optimierung«, die während der Synthese eine potenziell fatale Modifikation für maskierte Implementierungen darstellt. Wir demonstrieren, auf welche Weise Re-timing zu ungewollten Seitenkanal-Leaks führt. Wir stellen Open Source Verifikationstools aus aktueller Forschung vor, die solche Effekte auch ohne Laboruntersuchungen erkennen können. Die Studie geht auf methodische Ansätze ein, mit denen maskierte Implementierungen aus wenigen elementaren Modulen zusammengebaut werden können. Zudem analysieren wir die Optimierungen im Synthese Tool
yosys, welches Open Source zur Verfügung steht und Einblicke in die Hardware-Synthese zulässt.

Härtung nach der Hardware-Synthese kaum effektiv

Die Effektivität von Maßnahmen gegen Fehlerangriffe nach der Hardware-Synthese muss ebenfalls kritisch betrachtet werden. Die Härtung gegenüber Fehlerangriffen steht im Konflikt mit den Optimierungen durch die Synthese-Tools. Letztere optimieren die Schaltkreise so, dass möglichst wenig Zellen platziert werden müssen, um die Fertigungskosten gering zu halten. Dabei werden redundante Strukturen entfernt. In unserer Studie verwenden wir das Verifikationstool SYNFI. Damit kann getestet werden, wie viele Bit-Fehler ein durch Redundanz geschütztes Modul erkennt. Die BSI-Studie beinhaltet Fallstudien, in denen verschiedene Optimierungsstrategien, der Einfluss der Standardzellen des PDKs und der Einfluss von Timing Optimierungen untersucht werden. So kann z. B. beobachtet werden, dass mit dem Anstieg der Zielfrequenz des Schaltkreises die Effektivität der Gegenmaßnahmen sprunghaft abnimmt. Dieses Verhalten scheint durch parallele Strukturen zur Optimierung kritischer Pfade und des »Fan-outs« verursacht werden. Für kommerzielle Tools können allerdings nur schwer konkrete Effekte benannt und auf atomare Optimierungsschritte zurückgeführt werden.

Weitere sicherheitskritische Schritte im Chip-Design-Prozess

Auch in anderen Schritten des Chip-Designs ergeben sich potenzielle Herausforderungen für die Sicherheit. Unsere Studie liefert hierzu erste Anhaltspunkte und zeigt, dass auch identische RTL-Implementierungen in Abhängigkeit der RTL-Synthese zu unterschiedlich resilienten Chips führen können. Demnach kann die Sicherheit eines Chips nicht ausschließlich aus einer RTL-Beschreibung bewertet werden. Nur eine Laboranalyse des tatsächlichen Produkts kann abschließend zeigen, ob Schwachstellen existieren oder ein Gerät ausreichend gehärtet ist. Die gute Nachricht für Hersteller von Produkten ist: Es existieren bereits Verifikationsansätze, mit denen potenzielle Schwachstellen, die durch RTL-Synthese entstehen, früh und automatisiert erkannt werden können. Damit diese in der Breite anwendbar sind, müssen jedoch die kommerzielle EDA-Software offener sowie transparenter und die Verifikationsansätze praktikabler werden.

Bibliografie

[1]  Deutschland sicher im Netz – Sicherheitsindex 2024, ARIX Research, Juni 2024

Autoren
Felix_Oberhansl_Fraunhofer_AISEC
Felix Oberhansl

Felix Oberhansl arbeitet seit 2022 als wissenschaftlicher Mitarbeiter am Fraunhofer AISEC. In seiner Forschung beschäftigt er sich mit vertrauenswürdiger Elektronik. Dazu betrachtet er physikalische Angriffe über Seitenkanäle und Fehlerinjektion und die Entwicklung sicherer Hardware.

Tobias_Stelzer_Fraunhofer_AISEC_Cybersecurity_Blog
Tobias Stelzer

Tobias Stelzer ist seit 2023 wissenschaftlicher Mitarbeiter am Fraunhofer AISEC und forscht an effizienten Hardware-Implementierungen für Kryptografie.

Grau_Logo_Blog_Author
Marc Schink

Marc Schink forscht in der Abteilung Hardware Security am Fraunhofer AISEC. Sein Schwerpunkt liegt auf der Entdeckung von Schwachstellen in Hard- und Software. Dabei hat er bereits mehrere Schwachstellen-Meldungsverfahren zu Produkten namhafter nationaler und internationaler Hersteller durchgeführt.

Most Popular

Keinen Beitrag verpassen?

Bitte geben Sie Ihre E-Mail-Adresse ein, um keinen Blog-Beitrag zu verpassen.
Bitte füllen Sie das Pflichtfeld aus.
Bitte füllen Sie das Pflichtfeld aus.
Bitte füllen Sie das Pflichtfeld aus.

* Pflichtfeld

* Pflichtfeld

Mit dem Ausfüllen des Formulars akzeptieren Sie unsere Datenschutzerklärung.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Weitere Artikel

Fraunhofer AISEC im Auftrag des BSI: Neue Studie zur Synthese von kryptografischen Hardware-Implementierungen

Die Studie des Fraunhofer AISEC zur Sicherheit kryptografischer Hardware-Implementierungen fokussiert Angriffe auf physische Hardware, wie Seitenkanalangriffe und Fehlerangriffe, sowie Maßnahmen zu deren Abwehr. Diese Schutzmechanismen können durch Optimierungen im Prozess des Chip-Designs potenziell Schaden nehmen. Die Untersuchung zeigt, dass Schutzmaßnahmen in komplexe Design-Abläufe integriert und bei der Hardware-Design-Synthese berücksichtigt werden sollten, um gegenüber Hardware-Angriffen resilient zu sein. Die Erkenntnisse nutzen Hardware-Designern bei der Entwicklung von robusten und sicheren Chips.

Weiterlesen »

Sicherheitslücken in Software schneller entdecken und beheben mit CSAF

Das Common Security Advisory Framework (CSAF) ist ein maschinenlesbares Format für Sicherheitshinweise und spielt eine entscheidende Rolle bei der Umsetzung der Sicherheitsanforderungen aus dem Cyber Resilience Act (CRA): Sicherheitslücken lassen sich schneller entdecken und beheben, indem Sicherheitsinformationen automatisiert erstellt und ausgetauscht werden. Das Fraunhofer AISEC hat jetzt die Software-Bibliothek »kotlin-csaf« veröffentlicht, die den CSAF-Standard in der Programmiersprache Kotlin umsetzt.

Weiterlesen »

Privacy By Design in der Software-Entwicklung

Verstöße gegen Datenschutzbestimmungen und Eingriffe in die Privatsphäre sorgen immer wieder für Schlagzeilen. Oft sind reaktive Maßnahmen nicht weitreichend genug, um persönliche Daten in Unternehmen und öffentlichen Einrichtungen zu schützen. Datenschutzbewusste Organisationen nutzen daher einen etablierten Software-Entwicklungsprozess, der systematische Schutzmaßnahmen umfasst. Dazu gehören die Auswahl von Technologien zur Verbesserung des Datenschutzes, die Analyse potenzieller Bedrohungen sowie die kontinuierliche Neubewertung von Risiken während der Programmlaufzeit. In diesem Blogbeitrag geben wir einen Überblick, wie datenschutz- und privacyfreundliche Software entwickelt und betrieben werden kann. Dabei konzentrieren wir uns auf risikobasiertes Privacy Engineering als Basis für »Privacy by Design«.

Weiterlesen »