Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Industrial Internet of Things >> Internet der Dinge-Technologie

Sicherheitslücken in der Hardware, die Ingenieure kennen sollten

Warum sollten sich Ingenieure um Hardwaresicherheit kümmern? Weil sie dazu beitragen können, Schwachstellen durch Design zu verhindern!

Warum sollten sich Ingenieure um Hardwaresicherheit kümmern? Weil sie dazu beitragen können, Schwachstellen durch Design zu verhindern!

Ingenieure sprechen traditionell nicht gerne über Sicherheitsfragen. Dies schließt jedoch nicht aus, wie wichtig es für Ingenieure ist, sich mit Kryptografie auszukennen, damit sie diese in ihren zukünftigen Designs berücksichtigen können.

Bisher haben wir über die (kurze) Einführung eines Ingenieurs in die Kryptographie, den Diffie-Hellman-Austausch und die Funktionsweise von ECC (Elliptic-Curve-Kryptographie) gesprochen.

Jetzt ist es an der Zeit zu erfahren, wie Hacker die Kryptografie knacken, damit Sie sich auf den langen Weg zum Schutz Ihres Designs vor gängigen Angriffen machen können.

Warum Elektroingenieure sich um Sicherheit kümmern sollten

Wenn Sie für die Bereitstellung sicherer Geräte für ein Design auf Unternehmensebene oder ein sicherheitskritisches Design verantwortlich sind, sollten Sie Ihr Design in jeder Phase des Designprozesses mit Ihren Chipherstellern und/oder Sicherheitsforschern besprechen. Unternehmen wie Microchip, SiLabs, WolfSSL usw. verfügen über Ingenieure, die Sie bei Ihren Designs unterstützen und Sie über Sicherheit aufklären können.

Schließlich gibt es wohl kein 100 % sicheres System.

„Es gab nie ein Pferd, das nicht geritten werden konnte. Es gab nie einen Reiter, der nicht geworfen werden konnte.“

Sicherheitsforscher spielen mit Hackern ein lebenslanges Katz-und-Maus-Spiel. Immer wieder wurde die „unzerbrechliche“ Verschlüsselung geknackt. Ob Ihre Nachricht verschlüsselt bleibt oder nicht, hängt von der Auswahl der Teile ab, wie gut Sie Ihre Schaltung entwerfen, wie gut Sie Ihren Code implementieren und ob Ihr Angreifer ausreichend motiviert und gerüstet ist, um Ihre Entwürfe zu überwinden. Ihre Aufgabe als Ingenieur besteht darin, alles zu tun, um Ihren privaten Schlüssel zu schützen.

Sie wissen wahrscheinlich, dass Sie praktisch nichts tun können, um Ihre privaten Schlüssel vor einem Nationalstaat zu schützen. Die Ressourcen, die verschiedene Regierungsbehörden gegen elektronische und menschliche Ziele einsetzen können, sind beträchtlich und überwältigend. Auch wenn die Spione keine privaten Schlüssel von einem Gerät abrufen können, können sie immer den Computer hacken, der das Gerät programmiert hat, die Fabrik infiltrieren, in der die ICs hergestellt werden, einen Mitarbeiter kompromittieren...

Glücklicherweise müssen Sie sich keine Sorgen machen, dass Nationalstaaten Ihre Geräte hacken. Un zum Glück ist es meist eine viel einfachere Angelegenheit, als wir glauben möchten. Ein Teenager mit Hardware im Wert von rund 250 US-Dollar und Zugang zu YouTube-Schulungsvideos kann an einem Nachmittag die privaten Schlüssel aus einem Mikrocontroller herauslesen. Und ein böswilliger Programmierer kann in wenigen Minuten Daten stehlen.

Um auf sicheres Design vorbereitet zu sein, ist es wichtig, die vorhandenen Bedrohungen zu verstehen. Hier ist eine allgemeine Ansicht einiger bekannter hardwarebasierter Sicherheitsschwachstellen – und was Sie möglicherweise tun können, um sie zu mindern.

Beispiele für Sicherheitsprobleme bei eingebetteten Systemen

Sehen wir uns einige wichtige Beispiele für Hardware-Schwachstellen an und besprechen einige Tipps für ein sichereres Design.

Elektromagnetische Seitenkanalangriffe

Seit Jahrzehnten wissen Forscher von elektromagnetischen Seitenkanalangriffen. Jedes Mal, wenn ein mechanischer Schalter oder ein Transistor seinen Zustand ändert, breitet sich eine elektromagnetische Welle entlang des Leiters aus und nach außen. Wenn diese elektromagnetische Welle von einem Hacker abgefangen wird, können sie oft die Daten rekonstruieren, die zur Erzeugung der Welle verwendet wurden. Siehe Van Eck Phreaking, Tempest oder das Video unten, um mehr zu erfahren.

Eindämmung elektromagnetischer Seitenkanalangriffe

Nutzen Sie die Best Practices der Branche beim Design und Layout Ihrer Leiterplatte.

  1. Platzieren Sie die Entkopplungskondensatoren so nah wie möglich an den Stromanschlüssen.
  2. Verwenden Sie eine solide Massefläche unter Ihrem IC.
  3. Verwenden Sie eine EMI-Abschirmung auf Ihrem IC.

Es wird niemanden mit physischem Zugriff auf Ihr Gerät aufhalten, aber es wird seine Arbeit viel schwieriger machen.

Differential Power Analysis-Angriffe

Um die Verschlüsselung auf den meisten Mikrocontrollern zu knacken, benötigen Sie lediglich einen Widerstand von 0,005 USD, einen Analog-Digital-Wandler und ein rudimentäres Verständnis der Programmiersprache Python.

Wenn die digitalen Gates in einem Mikrocontroller umschalten, stören sie die Stromschienen, die in einen Mikrocontroller führen. Hacker haben gelernt, einen 50--Widerstand und einen Analog-Digital-Wandler über die Stromschienen zu legen, um die winzigen Stromänderungen aufzuzeichnen, die während des Mikrocontrollerbetriebs auftreten.

Der Mikrocontroller wird über die SPI-Programm-/Debug-Schnittstelle abgefragt, während die Differenzleistungsmessdaten aufgezeichnet werden. Später werden die Daten analysiert und die Spitzen und Pulse werden verwendet, um einzelne Mikrocontroller-Aktionen zu korrelieren und Fingerabdrücke zu erstellen.

Durch sorgfältige Analyse können Hacker fast alle gewünschten Informationen von einem Mikrocontroller abrufen.

Abwehr von Angriffen auf die differenzielle Leistungsanalyse

Dieser Hack ist leicht mit softwarebasiertem kryptografischem Code durchzuführen. Verwenden Sie daher nach Möglichkeit Krypto-Hardwarebeschleuniger, die DPA-Gegenmaßnahmen implementieren. Verwenden Sie nach wie vor die Best Practices der Branche für Design und Layout. Wählen Sie einen BGA-Footprint und verlegen Sie Ihre Stromschienen in Zwischenlagen Ihrer Leiterplatte und, wenn Sie wirklich Grund zur Besorgnis haben, betten Sie Ihren IC in eine Zwischenlage Ihrer Leiterplatte mit Kupferebenen oben und unten ein und verwenden Sie sie rundum per Stitching. Wenn die Bösewichte nicht an die Stromschienen gelangen, können sie schließlich keine differenzielle Leistungsanalyse durchführen.

Verwenden Sie alternativ einen hardwarebasierten Sicherheitskern, da diese nicht so anfällig für diesen Hack sind (sie sind immer noch hackbar). Ingenieure wissen um diese Schwachstelle und entwickeln sie auf verschiedene Weise. Beispielsweise verfügt die Wireless Gecko Series 2 von Silicon Labs über einen integrierten Sicherheitskern und Microchip stellt eine Reihe von Sicherheits-ICs her, einschließlich kryptografischer Module, die Sie in Ihren Designs verwenden können.

Man-in-the-Middle-Angriffe

Es gibt mehrere Man-in-the-Middle-Angriffe. Dieses Papier demonstriert einen "Invalid Curve Attack". Das folgende einfachere hypothetische Beispiel ist nur ein möglicher Angriffsvektor.

Wenn Sie Musik von Ihrem Computer über einen Bluetooth-Lautsprecher namens „MyTunes“ abspielen, werden die Daten direkt von Ihrem Computer auf den Lautsprecher übertragen. Wenn Sie Ihren Computer jedoch mit einer externen Website namens „AllAboutCircuits.com“ verbinden, ist Ihnen möglicherweise bewusst, dass Ihr Computer nicht sofort direkt mit einem anderen Computer namens „AllAboutCircuits“ verbunden ist.

Das erste, was passiert, ist, dass Ihr Computer Ihren Router kontaktiert und Ihr Router einen Domain Name Server (DNS) kontaktiert, der den Namen AllAboutCircuits.com in eine IPv4- oder IPv6-Adresse (104.20.234.39) übersetzt. Dies geschieht normalerweise schnell und die Daten werden lokal gespeichert, um das Surfen in Zukunft zu beschleunigen.

DNS-Eintrag für AllAboutCircuits.com auf einem Windows 10-PC.

Die Daten springen dann vom Computer zum Router zum Gateway, um zu usw. zu wechseln, zu einem Computer, dessen IP-Adresse mit 104.20.234.39 übereinstimmt. Die Anzahl der Hops variiert von Website zu Website und von Standort zu Standort. An jedem Standort können die Daten, wenn der Computer nicht gesichert ist, abgefangen, der Verkehr umgeleitet oder etwas ganz anderes sein.

Dieser Routenverlauf zeigt alle "Hüpfer" von meinem Laptop zur AllAboutCircuits.com-Website

Das Setup für den Man-in-the-Middle-Angriff

Es gibt verschiedene Möglichkeiten, wie ein Man-in-the-Middle-Angriff erfolgen kann. Betrachten Sie nur diese eine Art von Angriff.

Bild von "Bob" von ThisPersonDoesNotExist.com

Bob kaufte einen schicken neuen WLAN-Router. Er holt sein Spielzeug nach Hause und schließt es an sein Heimnetzwerk an. Und um sicherzugehen, dass er nicht zu viel Geld für sein neues Spielzeug ausgegeben hat, überprüft er seinen Kontostand auf seinem Computer.

Bild von "Mallory" von ThisPersonDoesNotExist.com

Mallory ist ein Hacker. Sie nutzt die Website shodan.io (o.ä.), um Router, Webcams, Raspberry Pi oder IoT-Geräte zu identifizieren, die sich im Internet befinden, sieht Bobs neuen Router, grinst und reibt sich drohend die Hände, weil sie jetzt auch ein neues Spielzeug hat.

Mallory verwendet den Standardbenutzernamen/das Passwort (admin/default, admin/admin, admin/password usw.), das mit allen Geräten geliefert wird. Die meisten Hersteller verwenden den gleichen Benutzernamen/das gleiche Passwort für alle Geräte und die meisten Leute machen sich nicht die Mühe, sie zu ändern, sodass sie nicht viel Zeit braucht, um einen oder mehrere Einstiegspunkte zu finden. Mallory loggt sich einfach in das Gerät ein, flasht es mit ihrer eigenen Firmware und ändert den DNS-Server in einen DNS-Server ihrer Wahl.

Sie kann dies tun, weil:

Jetzt hat Mallory Zugang zu einem privaten Netzwerk. Sie ist kein Hacker mehr im Web, sie befindet sich jetzt in Bobs persönlichem Heimnetzwerk und kann zusehen, wie sich Daten hin und her bewegen. Die Daten sind verschlüsselt, sodass sie noch nicht unbedingt sehen kann, was es ist – aber sie kann sehen, dass Bob ThisBankDoesNotExist.com (123.123.123.123) ziemlich häufig besucht und sich dort anmeldet, also machte sie sich daran, einen Server und eine Webseite einzurichten für Bob, das ist eine pixelgenaue Kopie der Anmeldeseite von ThisBankDoesNotExist.com.

Dann ändert Mallory Bobs DNS-Eintrag für ThisBankDoesNotExist.com in (123.45.67.89)

Der Angriff

Bob navigiert zu ThisBankDoesNotExist.com. Er macht sich nicht die Mühe, https:// vor dem Domainnamen einzugeben, und durch Mallorys Hacks verbindet er sich nicht mit dem richtigen Computer, er ist auf http://ThisBankDoesNotExist.com – also werden keine Zertifikatswarnungen angezeigt.

Bob weiß jedoch nichts davon; er sieht die pixelgenaue Kopie und gibt seinen Benutzernamen/Passwort in Mallorys Computer ein, und wie er es erwartet, werden die Kontoinformationen angezeigt.

Außer jetzt kann Mallory alles sehen – jede Transaktion, jeden autorisierten Kontoinhaber und sogar Bobs superkomplizierten Benutzernamen/Passwort (bob/letmein), mit dem er seine Kontoinformationen schützt.

Die Folgen des Hacks

Fast alle Websites verwenden eine Ende-zu-Ende-Verschlüsselung. Das heißt, die Daten können nur auf Bobs Computer und dem Bankcomputer entschlüsselt werden. Mallory hat einen neuen Endpunkt eingeführt. Bobs Datenverkehr wird auf seinem Computer verschlüsselt und auf Mallorys Computer entschlüsselt. Dann werden die Daten auf Mallorys Computer neu codiert und auf dem Computer der Bank decodiert. Dies erscheint sowohl Bob als auch der Bank immer noch als Ende-zu-Ende-Verschlüsselung.

Aber es gibt einen Zwischenendpunkt – Mallorys Computer. Mallory kann den gleichen Trick ausführen, um Bobs Krankenhausakten, E-Mails usw. zu finden.

So sichern Sie eingebettete Systeme

Der einfachste Weg, Ihre Geräte zu schützen, besteht darin, das Hacken Ihrer Produkte zu erschweren.

Wenn sie auf Widerstand stoßen, besteht die Möglichkeit, dass der Hacker einfach zum nächsten Ziel übergeht. Auf der anderen Seite ist es für eine Einzelperson oder ein kleines Unternehmen schwierig, nationalstaatliche Hacks zu verhindern. Glücklicherweise sind viele „Hacker“ nur „Skript-Kiddies“, denen das Fachwissen fehlt, um neuartige Angriffe zu entwickeln und Probleme zu lösen, wenn sie auftreten. Wenn es kein YouTube-Video und keinen GitHub für Ihr Gerät gibt, wissen sie nicht, was sie tun sollen und ziehen weiter.

Sprechen Sie außerdem mit Ihrem Mikrochip-Hersteller, um mehr über die Sicherung Ihrer Geräte zu erfahren. Sowohl Microchip als auch Silicon Labs wurden in dieser Artikelserie prominent vorgestellt, da beide Unternehmen Ingenieure für diese Artikel für Interviews zur Verfügung stellten.

Wenn Sie ein IoT-Gerät entwerfen, können Sie verschiedene Maßnahmen ergreifen, um die Wahrscheinlichkeit zu verringern, dass Ihre Kunden aufgrund Ihrer nachlässigen Engineering- und Programmierpraktiken ihre Lebenserhaltung verlieren.

Berücksichtigen Sie zusätzlich zu den oben genannten Gedanken diese zusätzlichen Schritte:

  1. Design mit einem Mikrocontroller und einer Toolchain, die die Firmware-Authentifizierung (AKA Secure Boot) unterstützen. Auf dem Mikrocontroller läuft nur richtig signierte digitale Firmware und nur Sie kennen den privaten Schlüssel. Sowohl Silicon Labs als auch Microchip (und andere Anbieter) verfügen über Mikrocontroller, die sicheres Booten unterstützen.
  2. Verwenden Sie nach Möglichkeit einen Mikrocontroller mit einer sicheren Debug-Funktion. Einige dieser Hacks sind möglich, weil Hacker Daten in den Host-Mikrocontroller einspeisen und abrufen und damit feststellen können, was im Mikrocontroller-Paket passiert. Wenn die Daten verschlüsselt oder überhaupt nicht ausgegeben werden, sind sie frustriert und ziehen weiter. Auch hier haben Silicon Labs und Microchip (und andere Anbieter) diese Fähigkeit.
  3. Informationen zur Sicherheit , stellen Sie Fragen an Experten und senden Sie Ihr Design an die Anwendungsingenieure Ihres Geräteherstellers, um Feedback zu Ihrem vorgeschlagenen Sicherheitsschema, Platinenlayout usw. zu erhalten.
  4. Verwenden Sie Anti-Manipulationstechniken, um Ihren privaten Schlüssel aus dem Speicher zu löschen, wenn das Gerät manipuliert wird.
    • TE Connectivity stellt Piezofolien her, die sich vollständig um Ihre Leiterplatte wickeln können. Wenn das Blatt geschnitten, gestört, geschmolzen usw. wird, erzeugt es eine Spannung, um einen Manipulationszustand anzuzeigen.
    • Verwenden Sie kapazitive oder induktive Sensoren (z. B. von TI), um zu erkennen, wenn Ihr Projektgehäuse geöffnet wurde, oder Hall-Effekt-Sensoren, um zu erkennen, wenn Gehäuseschrauben gedreht werden.
  5. Angenommen, Ihr Gerät ist bereits kompromittiert, wenn es in den Händen des ersten Kunden ist. Erstellen Sie einen Projektsicherheitsplan, der die Kompromittierung eines oder mehrerer einzelner Geräte ermöglicht, ohne Ihr gesamtes Projekt zu beeinträchtigen.

Diese Artikelserie war nur eine Einführung in die Sicherheit. Es liegt in Ihrer Verantwortung als Ingenieur, das IoT für alle sicher zu machen.


Internet der Dinge-Technologie

  1. IoT im Gesundheitswesen:Was Sie wissen sollten
  2. Bekämpfung von Sicherheitslücken des industriellen IoT
  3. Sicherheit im industriellen IoT baut auf Hardware auf
  4. Auf der Suche nach einem funktionierenden verwalteten IoT-Ökosystem
  5. Drei Fragen, die Netzwerkbetreiber zur IoT-Sicherheit stellen sollten
  6. Es ist die Sicherheit, nicht COVID-19, die den kommerziellen Einsatz von 5G herausfordert
  7. Warum die Sicherheit der industriellen Automatisierung ein neuer Fokus sein sollte
  8. 7 React-Bibliotheken, die Sie kennen sollten
  9. Drei Dinge, die jeder IoT-Hersteller tun sollte, um die Sicherheit zu verbessern
  10. Grundlagen des Bedienfelddesigns