Security Evaluation of Hardware Design Synthesis
Sicherheitsevaluierung von Hardware Design-Syntheseprozessen
Das Fraunhofer-Institut AISEC hat im Auftrag des Bundesamts für Sicherheit in der Informationstechnik (BSI) die Studie Security Evaluation of Hardware Design Synthesis erstellt. Sie beschreibt in mehreren Fallstudien, wie der Syntheseprozess im Mikrochip-Design vorhandene Maßnahmen gegen Hardware-Angriffe abschwächen oder sogar unwirksam machen kann.
Automatisierte Optimierungen gefährden Sicherheit
Der Entwurf von digitalen Chips beinhaltet mehrere Schritte. Er beginnt üblicherweise mit sehr abstrakten Blockdesigns, deren Funktionalität anschließend mittels einer Hardwarebeschreibungssprache wie etwa VHDL (Very High Speed Integrated Circuit Hardware Description Language) genau spezifiziert wird. Hieran schließt sich der Prozess der sogenannten "Synthese" an, in dem der Code durch spezielle Softwaretools in eine technologiespezifische Netzliste umgewandelt wird. An dieser Stelle können die Designer auch Beschränkungen einfügen, wie z.B. die Vorgabe einer Zielfrequenz, mit der der Chip später betrieben werden soll oder auch Flächenbeschränkungen. Um diese Vorgaben einhalten zu können, führen die Softwaretools diverse Optimierungen durch, die unter Umständen negative Auswirkungen auf bestimmte Funktionalitäten des Chips haben können.

Insbesondere in eingebetteten Systemen können bestimmte Sicherheitsmaßnahmen gegen sogenannte "Hardware-Angriffe" erforderlich sein. Diese Angriffe zielen nicht auf Schwachstellen in der Software, sondern auf inhärente Eigenschaften der Hardware. Solche Hardware-Angriffe umfassen unter anderem Seitenkanal- und Fehlerinjektions-Angriffe. Die implementierten Gegenmaßnahmen können sehr empfindlich auf Veränderungen des Designs durch den Syntheseprozess reagieren. Dies kann so weit gehen, dass manche Maßnahmen ihre beabsichtigte Funktionalität nur noch teilweise oder auch gar nicht mehr erfüllen.
Optimierungseinstellungen sorgfältig wählen
In der Studie werden exemplarisch Subsysteme des Google Open Titan betrachtet. Dabei handelt es sich um ein offenes Hardware-Design, das frei synthetisiert und hergestellt werden darf. Dieses Open-Source Design enthält zahlreiche Sicherheitsmaßnahmen, die auch fortlaufend von der Community verifiziert werden. Dennoch können Sicherheitsprobleme auftreten, wenn die Optimierungseinstellungen der Synthesetools nicht sorgfältig gewählt werden.
Um diese Gefahr abzuwenden, sollten Designer die Einschränkungen ihrer Synthesetools genau kennen und Optimierungen entsprechend auswählen oder deaktivieren. Außerdem rät das BSI, die Forschung an Analysetools zu intensivieren. Ein erster Schritt dazu ist diese Studie. Weiterhin können auch unabhängige Sicherheitszertifizierungen, insbesondere des final synthetisierten Chips, die in der Studie identifizierten Probleme aufdecken.