All About Security
  • Aktuelle Sicherheitsartikeln als RSS Feed
  • All About Security auf Twitter
  • All About Security auf Xing
  • Unter4Ohren IT-Security Podcast auf YouTube

Security-Management, Fachartikel

Sichere Systeme – Security beim Hardwaredesign

Ein Umzug dieses kritischen Bus-Systems auf einen innenliegenden Layer der Platine, wäre ein wirksamer Schutz gewesen. Bei der Verwendung von einschichtigen Platinen kann der Einsatz von Verkapselungsmitteln (Spezielle Lacke) einen gewissen Schutz bewirken.

Die meisten Speicherbausteine bieten generell sehr wenig bis keine Sicherheitsmerkmale. Ein Auslesen von Speicherbereichen unterliegt keinerlei Absicherung. Einige Speicherbausteine bieten einfache Sicherungsmethoden, Änderungen an z.B. ROM- oder Flash-Inhalten mittels durchgebrannter Sicherung zu schützen. Ein Auslesen ist jedoch trotz des Schreibschutzes möglich.

Ein Auslesen von RAM-Bausteinen oder anderen flüchtigen Speichern ist recht einfach möglich. Eine Sicherung gegen Auslesen der Klartextinhalte ist schwer möglich.

Maxim – ehemals Dallas Semiconductor - hat einen EEPROM-Speicherbaustein (DS28E15) im Produktportfolio, welcher den SHA-256 Algorithmus verwendet, um gespeicherte Inhalte zu schützen. Atmel Semiconductors hat mit der CryptoMemory-Familie ein ganzes Arsenal an geschützten Speicherbausteinen im Programm. Die Maßnahmen reichen von Flash-Bausteinen mit Authentifizierung bis hin zu Verschlüsselungs-Funktionen im Baustein selber.

Die meisten der eingesetzten Standard-Speicherbausteine werden jedoch anhand wirtschaftlicher Faktoren ausgewählt. Sie enthalten meistens keine Sicherheitsfunktionen und stellen ein generelles Risiko dar.

Programmierbare Logikbausteine (PLDs) und Field Programmable Gate Arrays (FPGAs) bieten ebenfalls für potentielle Angreifer ein offenes Tor. Dipert gibt in seinem Artikel „Cunning circuits confound crooks“ [5] einen Überblick über die Vor- und Nachteile der PLD- und FPGA-Technologie. Im Wesentlichen sind diese besonders anfällig für einen Angriff im Zusammenspiel mit SRAM. Diese laden beim Einschalten ihre Konfiguration aus dem SRAM in den FPGA. Der Bitstrom zwischen dem Konfigurationsspeicher (SRAM) und dem FPGA muss lediglich abgefangen werden, um die gesamte FPGA-Konfiguration zu erhalten.

Eine Schutzmaßnahme wäre hier, unbenutzte Pins (Anschlüsse) so zu überwachen, dass Pegeländerungen erkannt werden können. Das Gerät könnte somit einen untypischen Betriebsmodus erkennen. Dies wiederum könnte auf ein Abgreifen von Bus- und Schnittstellen-Informationen hindeuten.

Darüber hinaus sollte beim Entwurf der Zustandsmaschine der FPGAs darauf geachtet werden, dass alle möglichen Zustände abgedeckt sind. Für nicht verwendete Zustände sollten Standardwerte eingestellt werden.
 
Es sollte auch in Erwägung gezogen werden, digitale „Wasserzeichen“ zu verwenden, um das Design in der Form von einzigartigen Eigenschaften zu schützen. Dies stellt zusätzlich noch einen Produkt- bzw. Patentschutz dar.
 
Weitere Möglichkeiten bietet eine erweiterte Speicherverwaltung. Dabei werden FPGAs oder andere Schaltungen eingesetzt, um Schnittstellen zu überwachen. D.h., Busse werden überwacht und lassen Lese-/Schreibzugriffe nur auf zuvor definierte Speicherbereiche zu. Der Versuch, andere Speicherbereiche auszulesen, wird verhindert und kann eine Alarmierung auslösen.

Ein prominentes Beispiel, wie sich eine Nichtberücksichtigung der aufgeführten Empfehlungen auswirken kann, ist der Angriff auf den Speicherbereich mittels Firewire, SATA oder Thunderbolt. Das angepriesene Feature DMA (Direct Memory Access) stellt an sich ein Sicherheitsproblem dar. Mit einfachen Mitteln lassen sich über diese Schnittstellen diejenigen Speicherbereiche auslesen, welche die Passwörter des Betriebssystems beinhalten. Eine Überwachung des „DMA“, also eine Art Firewalling des Speicherbereiches mittels FPGA- und Treiberunterstützung, würde hier ausreichenden Schutz liefern.

Weitere Vorkehrungen sollten hinsichtlich der Schwankungen bei der Spannungsversorgung getroffen werden. Minimale und maximale Grenzen sollten definiert und durch geeignete Schutzschaltungen abgesichert sein, egal, ob Vergleicher, Watchdogs oder „supervisory-circuits“ (z.B. von Maxim und Linear Technology) eingesetzt werden. Mit einem Low-Dropout Linear-Regler oder einem Gleichspannungswandler wird dazu beigetragen, dass das Gerät die angedachte Spannungsversorgung erhält.

Ein Beispiel für einen Angriff unter Verwendung von Netzspannungsschwankungen ist der Mikrocontroller PIC16C84. Ein Angreifer erhielt durch das Anheben der Versorgungsspannung um ca. 0,5 V (in Summe 13,5 V) Zugriff auf das Security-Bit. Er konnte die Prüfung umgehen, ohne den Speicherbereich direkt zu manipulieren, und erhielt Zugriff auf den geschützten Speicherbereich des Mikrocontrollers.

Ein prominenteres Beispiel sind Seitenkanalangriffe, in diesem Fall eine SPA (Simple Power Analysis). Sie stellt eine Methode dar, bei welcher der Energieverbrauch eines Mikroprozessors während einer kryptographischen Berechnung aufgezeichnet wird. Der Energieverbrauch des Mikroprozessors variiert in Abhängigkeit der jeweils ausgeführten Operation. Es ist dadurch möglich, einen Rückschluss zur ausgeführten Operation und indirekt auf den Schlüssel der kryptographischen Berechnung zu erhalten.

Es existieren mehrere Möglichkeiten von Gegenmaßnahmen, von Rauschgeneratoren in der Spannungsversorgung, entsprechenden Filtern, bis hin zu parallel durchgeführten Störberechnungen.

Die Seitenkanalangriffe haben eine gewisse Schnittmenge mit sogenannten Timing-Angriffen. Timing-Angriffe werden generell in zwei Kategorien aufgeteilt.

Passive Timing-Angriffe: Hier wird versucht – wie bei einem Seitenkanalangriff - einen Rückschluss aus der benötigten Zeit der einzelnen Rechenschritte auf die durchgeführten Operationen herzustellen. Kryptographische Operationen lassen sich daraus ableiten und gegebenenfalls Rückschlüsse auf das kryptographische Material ziehen. Beschrieben werden diese Prozesse u.a. in Kochers “Timing Attacks on Implementations of Diffie-Hellman, RSA, DSS, and Other Systems” [6].

Aktive Timing-Angriffe: Dabei handelt es sich um invasive Angriffe, welche physischen Zugriff auf den Uhrenquarz benötigen. Das Ziel dieser Angriffe ist die Manipulation des Taktkristalls, um beispielsweise die Generierung von Passwörtern bei Authentifizierungs-Tokens zu beschleunigen und die one-time-passwords für die Zukunft zu berechnen. Abhilfe schafft hier nur eine aufwändige Erkennung und Überwachung der internen Uhr. Mögliche Reaktionen auf ein Abschalten oder Stören der eingebauten Uhr wären das Gerät komplett abzuschalten oder ganze Speicherbereiche zu löschen.

Kryptographische Co-Prozessoren, welche eine, meist schnellere, Berechnung von kryptographischen Algorithmen erlauben, sind sehr komplex. Die meisten der angebotenen Prozessoren bieten eine Reihe von Sicherungsmaßnahmen einschließlich Erkennung von Manipulationen, mehrschichtigem System-Design, Selbstüberwachung, Eigeninitialisierung, eigene Taktgeber usw.

Bei Verwendung dieser Co-Prozessoren sollte darauf geachtet werden, dass nach Möglichkeit alle Verschlüsselungsfunktionen der Anwendung in diesen auch bearbeitet werden. Bennet Yee legte bereits mit seinem 1994 erschienen Dokument „Using Secury Coprocessors“ den Grundstein für den sinnvollen Einsatz dieser Hardware-Module.

Fazit

Zusammenfassend zeigen die dargestellten Risiken und deren Gegenmaßnahmen, dass gegen viele hardwarenahe Angriffe ein Schutz durchaus möglich ist.
Jedoch stellt sich recht schnell die Frage:

Wie soll der Betreiber oder gar der Endbenutzer die vorhandenen Sicherheitsfeatures prüfen?

 

Um hier die Analogie zum eingangs erwähnten Kfz zu schließen, erst eine genaue Begutachtung und Prüfung des Autos – oder auch des Systems – gibt Aufschluss über den sicheren Zustand.

Als Betreiber, z.B. einer kritischen Infrastruktur, hat man gegebenenfalls die Möglichkeit, den Hersteller direkt zu kontaktieren und die Umsetzung der dargestellten Sicherungsmaßnahmen zu erfragen und zu prüfen. Dieser Vorschlag einer Prüfung ist aber leider nicht immer umsetzbar. Es sollte darum ein risikobasierter Ansatz gewählt werden. Das bedeutet, dass die Kritikalität des Systems in Bezug zu dem möglichen Risiko einer Kompromittierung gesetzt wird. Je höher die Kritikalität des Systems, desto eher sollten die hier beschriebenen Aspekte geprüft und beachtet werden.

Als Beispiel sind hier militärische Geräte zu nennen. Deren Eignung für den Einsatz wird unter anderem auch auf der Ebene des Platinen-Layouts geprüft.

Der Massenmarkt für die Endbenutzer, überschwemmt mit asiatischen IT-Produkten, lässt wenig Spielraum für eine sichere Geräte-Entwicklung. Hier bleibt nur zu hoffen, dass die Entwickler sich genügend Gedanken über ein sicheres Hardware-Design gemacht haben. Eine Kontrolle oder Prüfung vor dem Kauf ist äußerst schwierig.

Die Notwendigkeit der Sicherheit beim Hardware-Design steht außer Frage. Die gezeigten Schwachstellen und Angriffsszenarien zeigen deutlich, wie wichtig der Blick auf die Hardware ist. Sie zeigen auch, dass Software – und sei diese auch noch so sicher konfiguriert und programmiert –nicht vor Angriffen auf der Ebene der Hardware schützt. Es sollte aus diesem Grund immer auch ein kritischer Blick auf die Hardware geworfen werden – insbesondere bei Systemen, die in Bereichen der Kritischen Infrastruktur eingesetzt werden.

Autor: Gregor Domhan, GAI NetConsult GmbH

Referenzen:

[1] http://csrc.nist.gov/publications/nistpubs/800-27A/SP800-27-RevA.pdf 
    SP 800-27 Rev.A vom Juni 2004:
„Engineering Principles for Information Technology Security (A Baseline
for Achieving Security)“

[2] Charles P. Pfleeger’s „Security in Computing“
    Oktober 2006, ISBN: 978-0132390774

[3] https://www.cl.cam.ac.uk/~mgk25/tamper2.pdf
    1996, 1997
    Ross Anderson and Markus Kuhn.
„Low Cost Attacks on tamper Resistant Devices“

[4] Andrew Huang: “Hacking the Xbox: An Introduction to Reverse Engineering”
    Juli 2003, ISBN: 978-1593270292

[5] Diperts “Cunning circuits confound crooks”
http://m.eet.com/media/1149202/22164-21df2.pdf  

[6] Paul C. Kocher: “Timing Attacks on Implementations of Diffie-Hellman, RSA,
DSS, and Other Systems”
http://www.cryptography.com/public/pdf/TimingAttacks.pdf 

[7]    Bennet Yee “Using Secure Coprocessors”
    1994
    http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.28.4872

Abbildungen:

Abbildung-1: Aus dem „27th. Chaos Communication Congress“
http://events.ccc.de/congress/2010/Fahrplan/attachments/
1608_JTAGenum_use.jpg


Abbildung-2:  Eigenaufnahme

Abbildung-3:

http://cms.diodenring.de/electronic/microcontroller/83-ic-decapsulation  

<< Erste < Vorherige Page 1 Page 2 Page 3 Page 4 Nächste > Letzte >>

Diesen Artikel empfehlen

Autor: Gregor Domhan

IT-SiG verabschiedet – was kommt auf uns zu?

Die Informationstechnologie prägt seit Jahrzehnten die Unternehmen in immer stärkerem Maße und spätestens seit Mitte der 90-er Jahre kann man dies auch für das Internet feststellen. Dass das Internet somit schon lange kein „Neuland“ mehr für deutsche Unternehmen ist, dies hat nun mittlerweile auch...

Neue Vorgaben der Finanzverwaltung für die IT-Compliance

Eine Verwaltungsverordnung kann zwar dem Bürger keine direkten Pflichten auferlegen, dennoch ist die GoBD von erheblicher Bedeutung, da die Finanzämter das Schreiben des BMF bei der Bearbeitung der Steuerangelegenheiten zwingend befolgen müssen und sich daher die Bearbeitungspraxis der Finanzämter...

Netzwerke sicher virtualisieren mit Software-defined Networking (SDN)

Im Bereich der IT ist die Virtualisierungstechnik längst nicht mehr neu. Schon in den 60er Jahren experimentierten Hardwarehersteller wie IBM mit virtueller Speicherverwaltung zur Partitionierung von Ressourcen in deren Mainframes. Das ermöglichte ein quasi Multitasking und somit ein beinahe...

eHealth – Der „Neue Markt“ für Cyber-Kriminelle?

Hinweise auf bereits festgestellte oder befürchtete Datenschutzverletzungen im Gesundheitswesen ereilen uns nahezu täglich. Bei immer mehr elektronisch gespeicherten medizinischen Daten und zunehmendem Datenaustausch müssen wir wohl zukünftig mit noch mehr Alarmmeldungen wie den nachstehenden...

Gefährliche Dinge(r) im Internet-of-Things?

Viele sprechen heute schon von der vierten industriellen Revolution (nach Erfindung der Dampfmaschine, der Einführung der Elektrizität und dem Beginn des Computerzeitalters) und meinen damit die bereits angelaufene Vernetzung im Internet-of-Things (IoT). Gartner geht in der Studie „Forecast: The...

IPsec versus SSL VPN

Der Grundgedanke hinter einem „Virtual Private Network“ ist schnell erläutert. Es besteht der Wunsch, ein privates Netzwerk über ein unsicheres Medium, wie beispielweise das Internet, aufzubauen. Die Nutzung von fremden, bereits bestehenden Netzwerken ist so attraktiv, da sie eine überaus...

Sichere drahtlose Mesh-Netzwerke und mögliche Anwendungen

Drahtlose Mesh-Netzwerke Drahtlose Mesh-Netzwerke zeichnen sich zuallererst durch ihre drahtlose Kommunikation aus. In diesem Artikel liegt der Fokus auf IEEE 802.11 (WLAN) als Funktechnologie. Andere Technologien, wie zum Beispiel IEEE 802.16 (WiMAX), IEEE 802.15.4 (ZigBee) oder proprietäre...

Einsatz von Softwarelösungen zum Aufbau und Betrieb eines ISMS

Es ist hilfreich, sich die Idee eines ISMS als Trichter vorzustellen, welcher mit der Erfassung der informationellen Werte (auch als Assets bezeichnet) beginnt und mittels einer Risikobewertung zu einem konzentrierten Ergebnis, den Maßnahmen, gelangt. Ausgehend von der Frage, was ein Unternehmen...