SoftwarequalitätWie das Internet der Dinge das Software-Engineering verändert
Von
Franz Graser
7 min Lesedauer
Jeder Anbieter möchte am Internet der Dinge, sprich Internet of Things oder IoT, mitverdienen. So spannend diese Entwicklung für Endkunden sein mag, das Rennen um die Vorherrschaft im IoT-Markt birgt auch eine Schattenseite.
Bild 1: Durch die automatisch laufende Prüfung von Code-Kompilierungen mithilfe von ausgereiften statischen Analysetools können Fehler schnell aufgedeckt und behoben werden.
(Bilder: Grammatech)
Derzeit entwickeln Hersteller ihre Produkt noch nach alten, fest verwurzelten Supply Chain-, Engineering- und Qualitätssicherungs-Prozessen, die nicht für die komplexen, hochgradig vernetzten smarten Geräte von heute konzipiert sind. Ebenso arbeiten Engineering-Teams mit immer mehr unterschiedlichen Zulieferern und verlassen sich, wo es geht, auf Fremdsoftware, um kostbare Entwickler-Zeit zu sparen; ständig mit dem Ziel, die Forderungen des Geschäfts und des Marktes nach diesen neuen Fähigkeiten zu erfüllen.
Die Datensicherheit wird dabei von vielen Entwicklungsteams leider stiefmütterlich behandelt; Basic Checks finden – wenn überhaupt – nur während der Qualitätssicherung statt. Fehlende Entwicklungsphilosophie mit oberster Priorität auf Datensicherheit, zunehmender Einsatz von Fremdsoftware, und ständig wachsender Druck zur schnellen Markteinführung durch Geschäftsführer mit sorgloser Einstellung zur Datensicherheit im IoT.
Das Zusammentreffen dieser Faktoren bringt Unternehmen in eine zunehmend verletzliche Position, offen für Angriffe durch Cyber-Kriminalität und Nationalstaaten, um sich bei diesen vernetzten Geräten und Netzwerken zu bedienen. Schon heute gefährden diese Software-Schwachstellen die Sicherheit und den Datenschutz von Endkunden, steigern die Unternehmenshaftung, untergraben das Vertrauen der Verbraucher und haben in Einzelfällen zum Ausfall kritischer Dienstleistungen für Öffentlichkeit und Industrie geführt.
Tatsächlich sind die Smart-Geräte von heute ganz und gar nicht smart. Sondern nach einer aktuellen HP-Studie sind 70 Prozent der zehn gebräuchlichsten IoT-Devices angreifbar für Datendiebstahl. Täglich gibt es in den Nachrichten Meldungen von Hacking-Angriffen auf Geräte, Anlagen und Systeme, darunter auch höchst besorgniserregende Vorfälle wie etwa Hacker, die sich über die drahtlose Hot Spot-Verbindung der Steuerung eines Fahrzeugs bemächtigten und Bremsen sowie andere kritische Systeme beeinflussen konnten.
Statische Analyse für die IoT-Ära
Die Codeanalyse-Software CodeSonar eignet sich für Embedded-Umgebungen mit Null-Fehler-Toleranz. Das Werkzeug prüft sowohl Quell- als auch Binärcode, um ernste Sicherheits- und Qualitätsfaktoren zu identifizieren, die zu Systemabstürzen, Speicherfehlern, Data Races und anderen Schwachstellen führen.
Die Version 4.1 von CodeSonar zielt auf die IoT-Ära ab – mit verteilten Analysefähigkeiten, einer noch tiefer gehenden Tainted-Data-Analyse und Binäranalyse-Support für x64-Prozessoren.
Diese Neuerungen helfen Entwickler beim Programmieren von stabilerem und sichererem Code für die IoT-Ära, in der immer mehr Softwaresysteme auf oft unsichere Art vernetzbar sind.
Zu den neuen Features in CodeSonar 4.1 gehören:
Tiefergehende Analyse von Tainted Data – Für größere Gründlichkeit hat GrammaTech seine Taint-Analyse um Checker für Tainted-Buffer-Access und Indirect-Function-Aufrufe erweitert. Die präzisere Untersuchung von Indirect-Function-Calls bietet einen erheblichen Vorteil beim Aufspüren von ernsten Sicherheitsfehlern wie etwa den Heartbleed-Bug.
Neue verteilte Analyse – In der Version 4.1 erlaubt CodeSonar die Verteilung der statischen Analyse über viele heterogene Rechner (etwa Linux, Windows und Unix zeitgleich). Dadurch kann die Analysephase im Verhältnis zur Prozessoranzahl im Analysepool beschleunigt werden.
Zugleich können Entwickler die Gründlichkeit ihrer Analysen flexibel steigern, um mehr kritische Fehler aufzudecken.
Binärcodeanalyse – Die schnelle Zunahme von Fremdcode macht die rigorose Prüfung von Third-Party-Binaries notwendig, um Sicherheits- und Qualitätsstandards zu erfüllen.
Als derzeit einziges kommerziell verfügbares Analyse-Werkzeug bietet CodeSonar 4.1 die Binärcodeanalyse. Weil sowohl der Druck als auch die Verpflichtungen des Software-Supply-Chain-Management (SSCM) weiterhin steigen, müssen Embedded-Teams gleichermaßen den Quellcode sowie den Binärcode untersuchen, um die Kundensicherheit zu gewährleisten. www.grammatech.com
Software-Qualitätssicherung für IoT-Applikationen
Wie müssen unsere Fertigungsprozesse verändert werden, damit die IoT-Devices der nächsten Generation besser geschützt sind? Zunächst ist eine fundierte Planung notwendig, mit einer Qualitätssicherung für die Software der nächsten Generation und einer Methodik, die der Datensicherheit oberste Priorität einräumt.
Die Teams müssen neue Wege zur schnellen Auslieferung ihrer Software finden – und dabei Daten- und Produktsicherheit sowie Qualität vom Konzept bis zur Übergabe garantieren. Für eine erfolgreiche Umsetzung brauchen sie neue Tools, um ihre Software einschließlich Quell- und Binärcode effizienter zu analysieren.
Nächsthöhere Level der Software-Integrität sind nur erreichbar, wenn Teams versehentliche Codingfehler und absichtlich eingebaute Schwachstellen eliminieren können. Dazu benötigen sie effiziente Analysetechniken, die auf die komplexen Anwendungen von heute abgestimmt sind.
Im ersten Schritt können die Teams:
den Einsatz von Quellcode-Analyse in all ihren Entwicklungsteams vorschreiben, und zwar während der Entwicklung, Qualitätssicherung und Datensicherheitsaudits,
Binäranalyse für die Analyse von Drittanbieter-Code anwenden,
der Datensicherheit in der Entwicklungsphase höchste Priorität einräumen.
Sicherheitsschwachstellen eliminieren
Bild 2: Immer mehr Fremdcode macht den rigorosen Check von Third-Party-Binaries notwendig – dazu integriert CodeSonar 4.1 die Binärcodeanalyse.
(Bilder: Grammatech)
Weil IoT-Anwendungen immer mehr Funktionen mit Internet-Konnektivität und Geräteintelligenz erhalten, steigt die Gefahr eingebauter Sicherheitsschwachstellen.
Trotzdem ist das Bewusstsein um die mit unsicherem Code einhergehenden Risiken unter IoT-Entwicklern und QS-Teams nach wie vor gering, und hat auch bei den meisten Geschäftsleitungen keine Priorität. Hier bieten moderne statische Analysetools Abhilfe. Sie sind nachweislich wirksam, lassen sich problemlos einführen und können von Entwicklungs-, QS- und Datensicherheitsteams genutzt werden.
Im Unterschied zu herkömmlichen dynamischen Prüfungen wird der analysierte Code nicht ausgeführt, also entstehen auch keine zusätzlichen Gemeinkosten für die Testfallentwicklung. Außerdem ist der Einsatz der statischen Analyse bereits zu einem sehr frühen Zeitpunkt im Entwicklungsprozess möglich.
Nutzen Programmierer die statische Analyse bereits beim Schreiben des Codes, dann lassen sich Bugs und Schwachstellen noch vor der Testphase des Geräts oder der Integration aufspüren und eliminieren. Je früher ein Fehler gefunden wird, desto günstiger ist seine Korrektur. Diese Kostenersparnis ist ein wesentlicher Vorteil der automatisierten statischen Analyse.
Stand: 08.12.2025
Es ist für uns eine Selbstverständlichkeit, dass wir verantwortungsvoll mit Ihren personenbezogenen Daten umgehen. Sofern wir personenbezogene Daten von Ihnen erheben, verarbeiten wir diese unter Beachtung der geltenden Datenschutzvorschriften. Detaillierte Informationen finden Sie in unserer Datenschutzerklärung.
Einwilligung in die Verwendung von Daten zu Werbezwecken
Ich bin damit einverstanden, dass die Vogel IT-Medien GmbH, Max-Josef-Metzger-Straße 21, 86157 Augsburg, einschließlich aller mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen (im weiteren: Vogel Communications Group) meine E-Mail-Adresse für die Zusendung von Newslettern und Werbung nutzt. Auflistungen der jeweils zugehörigen Unternehmen können hier abgerufen werden.
Der Newsletterinhalt erstreckt sich dabei auf Produkte und Dienstleistungen aller zuvor genannten Unternehmen, darunter beispielsweise Fachzeitschriften und Fachbücher, Veranstaltungen und Messen sowie veranstaltungsbezogene Produkte und Dienstleistungen, Print- und Digital-Mediaangebote und Services wie weitere (redaktionelle) Newsletter, Gewinnspiele, Lead-Kampagnen, Marktforschung im Online- und Offline-Bereich, fachspezifische Webportale und E-Learning-Angebote. Wenn auch meine persönliche Telefonnummer erhoben wurde, darf diese für die Unterbreitung von Angeboten der vorgenannten Produkte und Dienstleistungen der vorgenannten Unternehmen und Marktforschung genutzt werden.
Meine Einwilligung umfasst zudem die Verarbeitung meiner E-Mail-Adresse und Telefonnummer für den Datenabgleich zu Marketingzwecken mit ausgewählten Werbepartnern wie z.B. LinkedIN, Google und Meta. Hierfür darf die Vogel Communications Group die genannten Daten gehasht an Werbepartner übermitteln, die diese Daten dann nutzen, um feststellen zu können, ob ich ebenfalls Mitglied auf den besagten Werbepartnerportalen bin. Die Vogel Communications Group nutzt diese Funktion zu Zwecken des Retargeting (Upselling, Crossselling und Kundenbindung), der Generierung von sog. Lookalike Audiences zur Neukundengewinnung und als Ausschlussgrundlage für laufende Werbekampagnen. Weitere Informationen kann ich dem Abschnitt „Datenabgleich zu Marketingzwecken“ in der Datenschutzerklärung entnehmen.
Falls ich im Internet auf Portalen der Vogel Communications Group einschließlich deren mit ihr im Sinne der §§ 15 ff. AktG verbundenen Unternehmen geschützte Inhalte abrufe, muss ich mich mit weiteren Daten für den Zugang zu diesen Inhalten registrieren. Im Gegenzug für diesen gebührenlosen Zugang zu redaktionellen Inhalten dürfen meine Daten im Sinne dieser Einwilligung für die hier genannten Zwecke verwendet werden. Dies gilt nicht für den Datenabgleich zu Marketingzwecken.
Recht auf Widerruf
Mir ist bewusst, dass ich diese Einwilligung jederzeit für die Zukunft widerrufen kann. Durch meinen Widerruf wird die Rechtmäßigkeit der aufgrund meiner Einwilligung bis zum Widerruf erfolgten Verarbeitung nicht berührt. Um meinen Widerruf zu erklären, kann ich als eine Möglichkeit das unter https://contact.vogel.de abrufbare Kontaktformular nutzen. Sofern ich einzelne von mir abonnierte Newsletter nicht mehr erhalten möchte, kann ich darüber hinaus auch den am Ende eines Newsletters eingebundenen Abmeldelink anklicken. Weitere Informationen zu meinem Widerrufsrecht und dessen Ausübung sowie zu den Folgen meines Widerrufs finde ich in der Datenschutzerklärung.
Zum Glück entdecken diese Tools zur Prüfung von Quell- und Binärcode etwaige Schwachstellen noch vor der Produktauslieferung. Das reduziert Sicherheitsbedrohungen und millionenschwere Forderungen an Unternehmen deutlich. Negativbeispiele gibt es gleich mehrfach – etwa die Gaspedal-Panne von Toyota (geschätzte Kosten: 3 Milliarden US-Dollar) oder Sicherheitsrisiken durch die gehackte Uconnect-Schwachstelle bei über 470.000 Fahrzeugen von Jeep oder die gehackten SCADA-Systeme in Industrieanlagen, wo unter anderem der Stuxnet-Wurm den größten Schaden anrichtete.
Diese Zwischenfälle zeigen klar auf: Für Entwicklungsteams ist es heutzutage schlicht inakzeptabel, auf die so wichtige zusätzliche Software-Qualitätssicherung durch den Einsatz statischer Analysetools wie CodeSonar zu verzichten.
Umgang mit Code von Drittanbietern
Im Laufe der letzten Jahre wurde Code von Drittanbietern von einem untergeordneten Faktor in der Softwareentwicklung zu einer dominanten Kraft in der Branche. Heute findet Fremdcode Einsatz bei allen Applikationen in der gesamten Softwareentwicklung, von hoch sensitiven Anwendungen für Behörden über sicherheitsintensive Finanzsysteme bis hin zu sicherheitskritischen Anwendungen in Endverbraucher- und Mobilapplikationen.
Laut dem jüngsten Bericht von VDC Research wird der Großteil der Software auf Embedded-Devices heute nicht von internen Entwicklungsteams, sondern von Drittanbietern geschrieben. Ein Teil dieser Software ist Open Source, aber bei Embedded-Applikationen stammt der Code zu fast 30 Prozent aus kommerzieller Third-Party Software – und damit ist die Quelle häufig nicht zugänglich. Bei diesen Komponenten handelt es sich beispielsweise um Grafik-Toolkits, kryptografische Bibliotheken und Kommunikations-Middleware (Netzwerk, USB, Bluetooth) – genau die Bereiche, die bis zu 70 Prozent der häufigsten Embedded-Angriffsflächen darstellen.
Über 10 Jahre Forschungsarbeit von GrammaTech stecken in der Funktion der Binäranalyse für Fremdcode, die keinen Zugang zum Quellcode benötigt. Sie ist im statischen Analysetool CodeSonar voll integriert. Damit können Entwickler auch Fremdcode auswerten, prüfen und analysieren. Das eröffnet Unternehmen zusätzliche Optionen in ihrer Lieferkette, da sie nun auch Software von Firmen nutzen können, die in der Branche vielleicht noch unbekannt sind. Bei verfügbarem Quellcode lässt sich CodeSonar im kombinierten Quell-/ Binärmodus einsetzen, um die ganze Anwendung zu analysieren.
Verändertes Bedrohungs-Szenario
Bild 3: Moderne Codeanalyse-Tools beinhalten ausgereifte Techniken wie die Taint-Analyse, um Software-Schadstellen bereits in der Programmierung zu entdecken.
(Bilder: Grammatech)
Niemand entwickelt heute noch Stand-Alone-Anwendungen. Angesichts des in allen Bereichen präsenten Internets der Dinge mussten Hersteller sehr schnell neue Konzepte dafür finden, wie ihre Produkte in die moderne, vernetzte Wirtschaft passen.
Damit hat sich auch das Bedrohungs-Szenario nachhaltig geändert. Zur Realität gehören heute hochqualifizierte Hacker, die ausschließlich daran arbeiten, in IoT-Systeme einzudringen, sei es zum Vergnügen, als intellektuelle Herausforderung, um Profit zu machen, aber auch als Angriffe und terroristische Aktionen.
Um diesen Cyber-Kriminellen keine Sicherheitslücken und Angriffsflächen zu bieten, müssen die Entwicklungsteams ihre Arbeit über den gesamten Lebenszyklus robust und sicher gestalten. Dazu brauchen sie allerdings die nötigen Kenntnisse und Fähigkeiten, um Fehler möglichst von vornherein zu vermeiden.
Als Faustregel gilt: End-to-End Bedrohungsanalyse (durch ein externes Audit-Team), sicherheitsoptimiertes Design und Scanning-Tools für die Datensicherheit von Quell- und Binärcode.
Datensicherheit als oberste Priorität
Das IoT beeinflusst unser tägliches Leben – im Guten wie im Schlechten. Darum muss Datensicherheit im Konzept der IoT-Software fest integriert sein, als klare Vorgabe von Unternehmen. Hersteller müssen die Cyber-Bedrohungen und den Grad des Risikos für die IoT-Geräte sorgfältig bewerten und in Reaktion auf die zunehmenden Gefahren aller Art sämtliche erforderlichen Design-Checks und Gegenmaßnahmen implementieren.
GrammaTech verfolgt seiner Gründung vor 26 Jahren das Ziel, Unternehmen bei der Entwicklung der Software von morgen zu unterstützen. Angesichts der ständig wachsenden Abhängigkeit von Software in der modernen vernetzten Welt strebt das Unternehmen danach, ein gut durchdachtes Portfolio an Qualitätssicherungslösungen für Software und Datensicherheit anzubieten, um sich für die schwierigsten Softwareprobleme unserer Zeit zu rüsten. Das IoT ist schon da, aber unsere Arbeit fängt gerade erst an.
Dieser Beitrag stammt ursprünglich von unserem Schwesterportal Elektronikpraxis.de.
* Marc Brown ist Chief Marketing Officer bei GrammaTech.