In ihrem Vortrag “Hardware-Trojaner in Security-Chips” auf dem 32. Chaos Communication Congress in Hamburg richteten die Sicherheitsforscher Peter Laackmann und Markus Janke die Aufmerksamkeit auf bösartige Hardwaremanipulationen und mögliche Gegenmaßnahmen.

Bösartige Hintertüren

Während Softwaretrojaner weithin bekannt, einfach zu entwickeln und relativ leicht aufzudecken und zu bekämpfen sind, sind sowohl die Erkennung als auch die Bekämpfung von Hardwaretrojanern um einiges komplizierter. Bei Hardwaretrojanern kann es sich z.B. um schädliche Backdoor-Funktionen auf einem Chip halten, die das Auslesen von Daten (z.B. Kreditkarteninformationen oder kryptographische Schlüssel) aus einem System oder das Einbringen von Schadcode oder belastendem Material erlauben.

Diese Hardware-Backdoors lassen sich im Prinzip in allen Schritten der Chipherstellung in das Design eines Chips einbringen. Je später dies im Produktionsprozess geschieht, desto größer ist jedoch der Aufwand. Je nach Design eines Chips lassen sich allerdings bestimmte Funktionen leichter “trojanisieren”, so z.B. komplexe Rechenoperationen von Sicherheitschips. Diese Funktionen erleichtern durch ihre Komplexität das Einbringen von Hardwarebackdoors.

Mögliche Gegenmaßnahmen

Der Vortrag gab einen Einblick in die mögliche Ausgestaltung unterschiedlicher Backdoors und die Gründe, solche Funktionen in einem Hardwaredesign unterzubringen. Als wichtige Prophylaxe gegen Backdoors in Hardware sehen Laackmann und Janke die Aufklärung von Hardwareentwicklern, Herstellern und Anwendern. Durch anwenderseitige Forderungen von “No-Backdoor-Chips” würde das Bewußtsein für trojanerfreie Hardware geschärft.

Die Vortragenden begrüßten die relativ neue Entwicklung der Selbstverpflichtung von Chipherstellern, ihre Produkte “backdoorfrei” anzubieten. Hierdurch werde die mögliche Existenz von Backdoorfunktionen zu einem ökonomischen Risiko für den Hersteller und die Abwesenheit von Backdoors ein Wettbewerbsvorteil. Als zusätzliche Gegenmaßnahme wäre es nötig, Chipdesign von vornherein auf leichte Überprüfbarkeit auszulegen und das Einbringen von schadhaften Funktionen zu erschweren.