Sicherheitsanalyse von eingebetteter Software in REWIRE

Image in image block

Das REWIRE-Projekt zielt darauf ab, eine skalierbare Cybersicherheitslösung für Open-Source- und Open-Specification-Hardware und -Software für IoT-Geräte zu entwickeln. Die Universitäts- und Industriepartner des REWIRE-Projekts werden zusammenarbeiten, um eine Toolchain zu erforschen und zu entwickeln, die sicherstellt, dass Cybersicherheit auf der Grundlage von Zero-Trust in den Lebenszyklus von Geräten integriert wird. Dazu gehören Prozesse zur Gewährleistung der Sicherheit, beginnend mit dem Einbinden eines Geräts in ein System, dem Booten, der Sicherung der Kommunikation mit anderen Geräten im REWIRE-Netzwerk und der Überprüfung von Software/Firmware, einschließlich sicherer Updates.

Bureau Veritas Cybersecurity erforscht und entwickelt ein Glied in dieser Toolkette, das sicherstellt, dass Sicherheitsbedrohungen durch einen automatisierten Mechanismus zur Validierung und Verifizierung von Firmware effektiv erkannt und behandelt werden können. Dies zielt auf Geräte-Firmware ab, die in intelligenten Städten, intelligenten Satelliten und intelligenten Fahrzeugen eingesetzt wird.

Image in image block

Hier ist die Übersetzung des bereitgestellten Textes ins Niederländische:

```html

TECHNIKEN DER BINÄRANALYSE

Mit Hilfe modernster binärer Analysetechniken entwickelt Bureau Veritas Cybersecurity ein Modul, das Fehler in Software erkennen kann. Da die in diesem Zusammenhang verwendeten Geräte in der Regel einen hochspezialisierten Code haben, kann es schwierig sein, solche Fehler zu erkennen. Software ist auf bestimmte Hardwarekomponenten angewiesen, die von Gerät zu Gerät unterschiedlich sein können, und in vielen Fällen ist der Quellcode nicht verfügbar. Das Testmodul von Bureau Veritas Cybersecurity ahmt daher den Code so nach, als ob er auf der Originalhardware laufen würde, und im Rahmen des REWIRE-Projekts werden Designentscheidungen für die Hardwarearchitektur der Geräte getroffen. Dies ermöglicht eine genaue Fehleranalyse und trägt zu einer sichereren eingebetteten Software bei.

Sicherheitsanalyse von eingebetteter Software in REWIRE

Die Extraktion von Firmware erfolgt mithilfe einer Kombination von Frameworks zur Verarbeitung von Binärdateien (wie z.B. Firmware). Diese Tools erzeugen ein Dateisystem, das Konfigurationsdateien, Bibliotheken und die auf dem Gerät auszuführende Software enthält. Wenn ein vollständiges Firmware-Image verfügbar ist, kann es auch einen Bootloader und einen Kernel enthalten.

Da die Firmware repliziert wird, ist es wichtig, dass ihre Integrität erhalten bleibt und Verweise wie symbolische Links, Bibliotheken und Konfigurationsdateien ebenfalls intakt sind. Daher wird in der Regel vor der eigentlichen Replikation der Firmware ein Sanierungsschritt durchgeführt, um zu prüfen, ob solche Referenzen vorhanden sind.

AUSFÜHRUNGSANALYSE

Die Ausführungsanalyse bezieht sich darauf, wann die Software in der Firmware bereit ist, ausgeführt zu werden. Das kann bedeuten, dass sie auf der Hardware läuft. Da die Firmware jedoch auf mehreren Geräten läuft, möglicherweise mit einigen Peripheriegeräten, kann sich die Ausführungsanalyse nicht auf die Verfügbarkeit der Hardware verlassen. Dies anzunehmen würde bedeuten, dass die Verifizierung schlecht skalierbar wäre, da viele Geräte verwendet werden müssten. Daher stützt sich die Ausführungsanalyse in der Regel auf viele Techniken, die Bytecode auswerten können, ohne ihn auf der Hardware auszuführen, für die er kompiliert wurde. Die Techniken, die bei der statischen Code-Analyse eingesetzt werden, sind die Taint-Analyse, die alle Injektionsschwachstellenmuster im Quellcode aufspürt, und die symbolische Ausführung als Mittel zur Analyse eines Programms, um festzustellen, welche Eingaben die Ausführung der einzelnen Teile eines Programms bewirken und daher Probleme verursachen könnten.

Die dynamische Analyse besteht in der Regel aus symbolischer Ausführung, Taint-Analyse und Fuzzing - einer automatisierten Softwaretestmethode, bei der ungültige, fehlerhafte oder unerwartete Eingaben in ein System eingespeist werden, um Softwarefehler und Schwachstellen aufzudecken.

ABDECKUNGSORIENTIERTES FUZZING

Die Nachahmung der Firmware auf diese Weise ermöglicht ein Fuzzing mit großer Kontrolle, da jedes Detail der virtuellen CPU, die zur Nachahmung der Firmware verwendet wird, überprüft werden kann. Es sollte daher nicht überraschen, dass die schnellste Methode zum Aufspüren von Schwachstellen in der Firmware das abdeckungsorientierte Fuzzing ist, eine Technik, bei der die Verzweigungen der Software, die durch eine bestimmte Eingabe erreicht werden, nachverfolgt werden, und Eingaben, die neue Verzweigungen erreichen, für weitere Tests verwendet werden. Auf diese Weise kann ein Großteil der Software schnell getestet werden.

"Die Ergebnisse der Firmware-Verifizierung dienen als Input für ein Gerüst auf einer Blockchain, das die korrekte Funktionsweise des Geräts bestätigt." Die Ergebnisse des Verifizierungsprozesses werden als Input für die Formulierung eines Gerüsts zur Sicherheit des Geräts verwendet. Darüber hinaus werden alle während der Überprüfung gefundenen Schwachstellen

Mehr Informationen

Möchten Sie mehr über das REWIRE-Projekt erfahren? Füllen Sie das Formular aus und wir werden Sie innerhalb eines Werktages kontaktieren.

USP