CodeSonar 4.1 soll Qualität und Sicherheit von Embedded-Software fürs Internet of Things bringen

Neuerungen des Codeanalyse-Werkzeugs sind die verteilte Analyse, eine tiefere Analyse nach "Tainted Data" und Binärsupport für x64-Architekturen.

In Pocket speichern vorlesen Druckansicht
CodeSonar 4.1 soll Qualität und Sicherheit von Embedded-Software fürs Internet of Things bringen
Lesezeit: 2 Min.
Von
  • Alexander Neumann

GrammaTech, Hersteller von Tools zur Entwicklung von Embedded-Software, hat die Version 4.1 der Codeanalyse-Software CodeSonar angekündigt. Das Werkzeug für C/C++- und Java-Entwickler prüft sowohl Quell- als auch Binärcode, um Sicherheits- und Qualitätsfaktoren zu identifizieren, die zu Systemabstürzen, Speicherfehlern, Data Races und anderen unerwarteten Schwachstellen führen können.

Mit der Summe der Neuerungen in CodeSonar 4.1 will GrammaTech Entwicklern beim Programmieren stabileren und sichereren Codes für Systeme des Internet der Dinge helfen. In der Version ermöglicht CodeSonar die Verteilung der statischen Analyse über viele heterogene Rechner (z. B. Linux, Windows und Unix zeitgleich). Dadurch lässt sich die Analysephase im Verhältnis zur Prozessoranzahl im Analysepool beschleunigen. Zugleich können Entwickler so die Gründlichkeit ihrer Analysen steigern, um mehr kritische Fehler aufzudecken. Des Weiteren gibt es eine offenbar verbesserte Tainted-Data-Analyse. Hier sind neue Checker für Tainted-Buffer-Access- und Indirect-Function-Aufrufe hinzugekommen.

CodeSonar 4.1 bietet außerdem erstmals die Binärcodeanalyse von 64-Bit-Intel-Mikroprozessor-Code. In Tests von Softwareanwendungen, wo sowohl Quellcode als auch Binärcode analysiert wurde, fand GrammaTech 35 Prozent mehr Fehler als bei der Analyse von nur Quellcode. (75 % der geprüften Programme waren Quellcode und 25 % Binärcode.) Das ist insofern wichtig, da zwar die Zunahme von Fremdcode die Effizienz der Entwicklungsteams steigert, allerdings auch vermehrt die Third-Party-Binaries zu testen sind, um Sicherheits- und Qualitätsstandards zu erfüllen. Deswegen haben Embedded-Teams zunehmend die Aufgabe, sowohl Quellcode als auch Binärcode zu untersuchen. (ane)