Werbung

Thesenpapier, September 2016

Statische Analyse und die Sicherheit von IIot Geräten

Im Industrial Internet of Things (IIoT) sind Geräte, die industrielle Steuerungssysteme bilden, oft wegen Einschränkungen bei Design und Kapazität nicht sicher. Das gilt auch für die eingesetzten Protokolle, so dass das blinde Vertrauen in die physische Sicherheit ziemlich gewagt ist (z.B. Anschuss von Geräten an einem lokalen Netzwerk). Abhilfe schafft die Implementierung von Sicherheit auf Systemlevel, als Teil des sicheren Softwaredesigns und –entwicklung. Hier bieten statische Analysetools Hilfestellung bei der Verbesserung der Softwaresicherheit – auch für IIoT-Geräte.

Für Industriegeräte gelten dieselben Herausforderungen wie für alle IoT-Geräte, u.a. steigende Attraktivität für Hacker, traditionell vernachlässigte integrierte Sicherheit, breiter Einsatz von Altgeräten - bei zugleich höherer M2M Konnektivität und IoT-Hürde.
Trotzdem sind IIoT-Geräte einzigartig:

  1. Eingeschränkte Hardware in punkto Verarbeitungskapazität vieler moderner Sicherheitsfeatures wie Verschlüsselung, Network Stacks und eingebaute Firewalls.

  2. Weil sie oft kritische Infrastruktur steuern, können sich mögliche Cyberangriffen viel schlimmer auswirken.

  3. Industriesteuerungen und SCADA-Systeme haben andere Kommunikationsprotokolle und Standards als Heim- oder Bürogeräte.

  4. Extrem langer Produktlebenszyklen und, verglichen mit anderen Geräten, schwierige Firmware- und Hardware-Updates, und andere Faktoren

Diese zusätzlichen Herausforderungen verschärfen das Thema Sicherheit für die Entwicklungsteams im Bereich IIoT.

Der vierstufige Verbesserungsprozess für IoT-Geräte gilt auch für IIoT, mit zusätzlichen Überlegungen. Die Übernahme der folgenden vier grundlegenden Schritte in einen Entwicklungsprozess für Embedded Software kann die Sicherheit (und Qualität) für hochvernetzte Geräte verbessern:

1) Design gemäß einer ‚Security-First‘ Philosophie,

2) wiederholte systemweite Einschätzungen und Analysen von Bedrohungen,

3) Wiedereinsatz von vorhandenen Tools so oft wie möglich,

4) Nutzung der modernen Quell- und Binärcodeanalyse, um die Qualität und Sicherheit von Fremdcode sicherzustellen.

Entscheidenden Support in den Codier- und Integrationsphasen der Entwicklung bieten
statische Analysetools wie Codesonar. Indem sie die dauerhafte Codequalität sowohl in der Entwicklungs- als auch Erhaltungsphase sicherstellen, reduzieren sie die Kosten und Risiken von Sicherheits- und Qualitätsproblemen ganz wesentlich. Speziell die statische Analyse eröffnet Vorteile wie folgt:

  • Dauerhafte Qualität und Sicherheit des Quellendes
  • Auffinden und Prüfen von Tainted Daten
  • Prüfung der Qualität und Sicherheit von Fremdcode
  • Sichere Anwendung von Codierstandards

Als Teil einer ganzen Toolsuite bietet die statische Analyse wichtige Fähigkeiten, die anderen Tools fehlen. Sie amortisieren sich durch das frühe Auffinden von Fehlern und Schwachstellen, die gewöhnliche Testtools übersehen könnten. Das kommt der Sicherstellung von einem dauerhaft hohen Level an Qualität und Sicherheit zu Gute.

Befolgen Hersteller von M2M- und IIoT-Geräten eine ‚Security-First‘ Designphilosophie mit formeller Risikoeinschätzung und automatisierten Tools, sind ihre Geräte besser vor den steigenden Bedrohungen im Internet geschützt. Das Wichtigste ist die Erweiterung eines bestehenden erfolgreichen Software-Entwicklungsprozesses um Sicherheit zu einem frühen Zeitpunkt im Prozess. Mit dem intelligenten Einsatz von automatisierten Tools, um sowohl neuen Code zu entwickeln als auch bestehenden und Fremdcode zu sichern, können Entwicklungsteams straffe Budget- und Terminvorgaben einhalten. Die statische Analyse von Quell- und Binärcode spielt eine Schlüsselrolle in einem ‚Security-First‘ Entwicklungstoolset.

© GrammaTech

Vorheriger Beitrag Nächster Beitrag