Anzeige

Fünf Faktoren für sichere Software

Mit dem Internet of Things explodiert die Zahl der Internet-fähigen Geräte. Und damit auch die Möglichkeit für Cyberkriminelle, diese Devices als Angriffsvektoren zu nutzen. Entwickler und Hersteller sind damit gefordert, an ihren Code und ihre Produkte deutlich strengere Sicherheitsanforderungen zu stellen als bislang. Dabei spielen fünf Aspekte eine wichtige Rolle.

Bild: GrammaTech Inc.Bild: GrammaTech Inc.
Bei der statischen Analyse wird der Code nicht ausgeführt, sondern alle möglichen Zustände in einem Modell überprüft.

Ein Mensch stirbt, weil Angreifer seinen Herzschrittmacher aus der Ferne deaktiviert haben. Das Szenario klingt wie aus einem Science-Fiction-Film, ist aber potenziell heute möglich. So kam es Ende August dieses Jahres zu einer Rückrufaktion des Pharmakonzerns Abbott, weil eine Sicherheitslücke einen Herzschrittmacher über Funk angreifbar macht. Und das ist kein Einzelfall, bereits im Oktober 2016 warnte der Hersteller Johnson & Johnson vor einer Sicherheitslücke in einer Insulinpumpe des Unternehmens. Auch wenn die Beispiele aus der Medizintechnik eine besondere Nutzung des IoT darstellen, wird deutlich: An IoT-Geräte müssen andere Maßstäbe angelegt werden als an herkömmliche Clients. Denn nichts anderes sind IoT-Devices zunächst - Clients, die Daten über das Internet senden und empfangen. Und diese Geräte mit den in der IT üblichen Methoden zu schützen, ist schlicht nicht möglich. Viele IoT-Geräte sind mit sehr geringen Übertragungskapazitäten mit dem Internet verbunden. Für Softwareupdates sind die Kapazitäten zu gering. Darüber hinaus sind die meisten IoT-Geräte weit verteilt oder auch mobil. Firewalls wie in der sonstigen IT scheiden somit aus. Sicherheit muss also ein Designprinzip werden. Eine wichtige Rolle nimmt dabei die statische Codeanalyse als fortlaufendes Korrektiv im Prozess ein: Bei der statischen Analyse wird die Software nicht ausgeführt, sondern ein Modell erzeugt, das geprüft werden kann. Und damit auch mögliche Error Conditions, die in Testszenarien in der Regel nicht auftreten, aber dennoch später für Probleme sorgen können. Um sicheren Code zu erzeugen, sollten sich die Entwicklerteams fünf Prinzipien zu eigen machen.

www.grammatech.com n

GrammaTech Inc.

Dieser Artikel erschien in IoT Design 1 2018 - 25.01.18.
Für weitere Artikel besuchen Sie