ValueAnalyzer führt statische Analysen zur Bestimmung von Wertebereichen
von Variablen, Registern und Speicherzellen durch. Damit ist insbesondere
der Nachweis möglich, daß in einem eingebetteten Softwaresystem
keine ungültigen Speicherzugriffe aus als Objektcode gelieferten
Third-Party-Modulen auftreten können.
Die Herausforderung
In komplexen sicherheitskritischen Softwaresystemen werden oft
Module von Drittanbietern als Objektcode integriert. Dabei ist es
in der Regel schwierig, zu überprüfen, ob dieser Code tatsächlich
genau das tut, was er tun soll.
Mögliche Probleme bei der Integration von Third-Party-Modulen sind:
- sie könnten Lese-/Schreibzugriffe auf Variablen ausführen, auf die sie nicht zugreifen dürfen
- sie könnten Funktionen aufrufen, die sie nicht aufrufen dürfen
Typische Ursachen für solche ungültigen Zugriffe sind:
- Programmierfehler (z. B. Feldzugriffe außerhalb der gültigen Feldgrenzen)
- Nichteinhaltung von Spezifikationen
- Compiler- oder Linker-Fehler
Ungültige Zugriffe können zu Problemen beim Systemeinsatz führen
und darüberhinaus Lizenz- oder Haftungsfragen aufwerfen.
Die Lösung
ValueAnalyzer bietet die Lösung dieser Probleme. Er führt eine statische Analyse
von Objektcode – z. B. von Fremdanbietern – durch und
meldet mögliche Verletzungen Ihrer Spezifikationen.
Features
- Interaktive Erkundung der Analyseergebnisse:
Register- und Speicherzelleninhalte werden für jede Instruktion in jedem
Ausführungskontext angezeigt.
- Ausführliche Angaben zu:
- Zugriffen auf Speicherbereiche
- Funktionsaufrufen
- Speicherzugriffen aus gewählten Funktionen heraus
- Register- und Speicherinhalten eingangs/ausgangs gewählter Funktionen
- Überprüfung von benutzerdefinierten Eigenschaften, z. B.:
- ob bestimmte Instruktionen auf bestimmte Speicherbereiche zugreifen
- ob bestimmte Speicherbereiche tatsächlich „read-only” oder
„write-only“ sind
- Automatische Erkennung von unerreichbarem Code.
- Nahtlose Integration mit anderen Analyse-Tools von AbsInt
(z. B. StackAnalyzer zur Stackanalyse)
in einer gemeinsamen Benutzeroberfläche namens a³.
Ihre Vorteile
- Die Analyse läuft vollautomatisch und erfordert keine Ausführung des Systems
mit konkreten Eingabewerten. Die Analyseergebnisse sind für alle möglichen Eingaben
und Ausführungsszenarien gültig.
- Die Analyse ist konservativ, d. h. die Ergebnisse sind verläßlich.
Alle ungültigen Zugriffe, die auftreten können, werden auch gemeldet.
- Software von Drittanbietern kann direkt analysiert werden. Sie muß nicht erst auf der
ECU integriert werden.
Unterstützte Prozessoren
ValueAnalyzer ist für eine Vielzahl von Prozessoren und Compilern verfügbar.