Der Blätterkatalog benötigt Javascript.
Bitte aktivieren Sie Javascript in Ihren Browser-Einstellungen.
The Blätterkatalog requires Javascript.
Please activate Javascript in your browser settings.
Autonomes Fahren | Tools und Fehler hin überprüft wird Bild 2 Dabei werden auch die Datenund Steuerungsflüsse innerhalb des Programms berücksichtigt Das geschieht unabhängig davon ob diese auch in einem konkreten Einsatzszenario durchlaufen würden Wird eine Anomalie erkannt erfolgt eine Warnung mit dem CodePfad der zu dem Ereignis führt Die statische Code-Analyse ergänzt damit das Testing um eine formale Überprüfung des Codes anhand definierter Kriterien Zudem ist kein lauffähiger Code erforderlich die Analyse kann auch automatisiert und im Rahmen agiler Ansätze an unterschiedlichen Stellen des Software Development Lifecycles SDLC implementiert werden Taint-Analysen zählen zu den statischen Analysen und sind Bestandteil von Tools wie CodeSonar von GrammaTech Datenströme sind hochkomplex Die Verfolgung von Datenströmen durch den Code ist auch für kommerzielle Analyse-Tools eine Herausforderung Es müssen zahlreiche Aspekte betrachtet werden etwa die Übergabe der Werte zwischen verschiedenen Variablen Dieses muss zudem über Prozedurgrenzen hinweg und über verschlungene Umwege möglich sein So werden Strings in Cüblicherweise durch Pointer verwaltet Die Analyse muss also die Inhalte der Strings überwachen und die Werte aller Pointer die auf diese Strings verweisen Und selbstverständlich kann es Pointer geben die auf einen Pointer verweisen die auf einen Pointer verweisen und so fort Diese möglichen Rekursionen müssen ebenfalls berücksichtigt werden Wie verschlungen die Wege von Tainted Data auch in einem einfachen Beispiel sein können zeigt die folgende Warnmeldung des Analyse-Tools CodeSonar von GrammaTech in Bild 3 Die blaue Unterstreichung in Zeile 80 weist darauf hin dass der Wert dieser Variable aus dem Dateisystem kommt und so prinzipiell nicht vertrauenswürdig ist Besonders interessant sind jedoch die Zeilen 91 und 92 Die Unterstreichung in Zeile 91 zeigt an dass der von compute_pkgdatadir zurückgelieferte Wert ein Pointer auf Daten ist die durch die Umgebung als Tainted zu betrachten sind Der Aufruf von strcpy kopiert diese Daten dann in einen lokalen Puffer mit der Bezeichnung full_file_name der in Zeile 84 definiert wurde Damit wird auch die Tainted-Eigenschaft in den Puffer übertragen Die rote Unterstreichung in Zeile 92 zeigt an dass der Puffer durch einen Wert der Umgebung nun als Tainted betrachtet wird Es besteht die Gefahr dass der Puffer durch unvalidierte Daten überlaufen kann Um Daten und Datenquellen zu validieren kommen prinzipiell zwei Aspekte zum Einsatz Zum einen muss geprüft werden wie die Daten innerhalb des Programms fließen und wie sie vor allem die sensiblen Code-Teile erreichen Zudem muss überprüft werden ob die Daten innerhalb eines zu erwartenden Bereichs liegen Manuell wird das ab einer gewissen Komplexität auch den erfahrensten Entwicklern kaum mehr gelingen Nicht zuletzt deswegen empfehlen Standards wie MISRAC den Einsatz von statischer Analyse innerhalb des SDLC Tools wie CodeSonar von GrammaTech sind in der Lage Programmierfehler und potenziell gefährliche Datenströme automatisch zu erkennen sowohl im Quellcode als auch bei Binärcode Damit kann die statische Analyse frühzeitig im SDLC als fortlaufender Prozess verankert werden Gerade bei Entwicklung von Automotive-Software und -Komponenten ist diese Sicherheitsschicht unverzichtbar um zuverlässige Produkte zu schaffen IH Mark Hermeling studierte Computerwissenschaften an der University of Technology in Eindhoven Seit 2017 ist er als Senior Director Product Marketing bei GrammaTech tätig Vor seinem Eintritt ins Unternehmen war Hermeling acht Jahre bei Wind River beschäftigt GeneSys Elektronik GmbH Tel +49 781 969279-0 adma@genesysoffenburg de www genesysadma de ADMA-Slim 3 Varianten Mini GNSS Inertialsystem extrem klein leicht und handlich vollwertiges GNSS Inertialsystem auch RTKfähig messen von Fahrzeugbewegungen in allen drei Messachsen auch bei GPS-Ausfall Kompetenz in GNSS und inertialer Messtechnik kompatibel mit allen gängigen überfahrbaren Plattformen für GSTs und VRUs Motorräder Sport-Fahrzeuge Jet-Skis Schneemobile Quads Fahrdynamikmessungen ADAS-Evaluierungen 04 2020 Elektronik automotive