Softwaretools ARM-Toolchain sorgt für die Einhaltung funktionaler Sicherheit
Autor / Redakteur: Daniel Owens* / Dr. Anna-Lena Gutberlet
Da ARM-Prozessoren auch in sicherheitsbezogenen Anwendungen zum Einsatz kommen, unterliegt die Software einer immer genaueren Prüfung: Denn selbst der kleinste Fehler kann verheerende Folgen haben.
Bild 1: ARM-Prozessoren finden sich nicht mehr nur in Mobil-, Consumer- und Datenserver-Anwendungen, sondern nun auch in den Bereichen Automotive, Industrie und dort, wo eine Einhaltung funktionaler Sicherheitsstandards nach IEC 61508 und ISO 26262 erforderlich ist. MCU-Softwareentwickler stehen damit vor neuen Herausforderungen.
(Bild: ARM)
Sicherheitsstandards wie IEC 61508 und ISO 26262 sollen garantieren, dass die Software neuesten besten Praktiken entspricht. Diese Best Practices dehnen sich nun auf die Wahl der Toolchain und deren Einsatz aus, welche ein wichtiger Bestandteil der modernen Softwareentwicklung sind und die Sicherheitsintegrität eines Systems direkt beeinflussen können.
ARM in sicherheitsbezogenen Anwendungen
ARM-basierte Prozessoren finden ihren Weg in sicherheitsbezogene Anwendungen von Antriebssteuerungen und Automatisierungstechnik, über Fahrwerks- und Motorsteuerungen in Fahrzeugen bis hin zu Infusionspumpen und Herzschrittmachern in der Medizintechnik.
Bild 1: IEC 61508 und ihre branchenspezifischen Auslegungen sind Richtlinien für sicherheitsbezogene elektrische, elektronische und programmierbare Systeme, um neueste Anforderungen zu erfüllen.
(Bild: ARM)
Der Übergang auf MCUs und Programmierbarkeit rückt den Softwarebereich ins Augenmerk der Sicherheit - nun müssen Sicherheitsstandards wie IEC 61508 erfüllt werden.
ISO 26262 geht noch weiter und weist einen detaillierteren Rahmen auf, der auch sicherheitsbezogene Systeme auf Basis anderer Technologien mit einbezieht, wie das Lebenszyklus-Management oder die Beziehungen zum Zulieferer. Für Softwareentwickler steht damit ein Automotive-spezifischer risikobasierter Ansatz zur Bestimmung der ASILs (Automotive Safety Integrity Levels) zur Verfügung.
Toolchains und ihrer Auswirkungen auf die Sicherheit
Moderne ARM-Prozessoren sind mit Fehlererkennungs- und Kontrollfunktionen ausgestattet, wie z.B. ECC-Logik (Error Correction Code), MPU (Memory Protection Units), Lock-Step-Funktion und Support für Softwarepartitionierung mittels Hypervisor. Es besteht allerdings weiterhin die Möglichkeit, dass Softwarefehler durch die Abwehrmechanismen hindurch gelangen und den Prozessor zu etwas Ungewolltem zwingen, was verheerende Folgen haben kann.
100-prozentige Sicherheit ist schwierig, wenn gar unmöglich zu erreichen. Moderne Softwareentwicklung kann das Risiko, dass ein Prozessor anstelle zulässiger Anweisungen etwas Unbeabsichtigtes ausführt, erheblich verringern. Sicherheitsstandards wie IEC 61508 und ISO 26262 bieten eine Anleitung für beste Praktiken in der Softwareentwicklung. Diese beziehen zunehmend auch die Tools mit ein, die während der Softwareentwicklung verwendet werden, vor allem Code-Generatoren wie Compiler.
Sicherheitsstandards kategorisieren Entwicklungstools auf Basis ihrer Auswirkungen auf die Sicherheitsintegrität eines Systems. Ein Text-Editor ist z.B. ein gängiges Tool, das während der Softwareentwicklung zum Einsatz kommt, aber nur begrenzte Fähigkeiten aufweist, einen Fehler in ein funktionierendes System einzubringen. Ein Compiler hingegen kann logisch korrekten Quellcode in falschen ausführbaren Zielcode fehlinterpretieren und so unwissend Fehler in ein laufendes System einbringen. Compiler stellen deshalb die höchste Risikoklasse unter den Support-Tools dar, da sie direkt oder indirekt den ausführbaren Code in einem sicherheitsbezogenen System beeinflussen können. Ihre Auswahl und ihr Einsatz sollte deshalb im Rahmen der IEC 61508-3 erfolgen.
Aufklappen für Details zu Ihrer Einwilligung
Stand vom 15.04.2021
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 Communications Group GmbH & Co. KG, Max-Planckstr. 7-9, 97082 Würzburg 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 redaktionellen Newslettern 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.
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.
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://support.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, Abschnitt Redaktionelle Newsletter.