|
|
Rubrik: Produkte/Security-Entwicklung Erkennung architekturbezogener Sicherheitsprobleme bei der Softwareentwicklung Keine Änderung am Quellcode oder der Build-Umgebung erforderlich (
Anzeige
Das Produkt stellt automatisch die Hierarchien und Abhängigkeiten in C/C++- und Java-Codebasen dar. Das garantiert die Transparenz und Kontrolle, die benötigt wird, um potentielle Defekte zu erkennen und sicherzustellen, dass Änderungen am Code im Einklang mit den ursprünglichen Entwicklungsvorgaben erfolgen. Das Tool unterstützt eine webbasierte Schnittstelle und ein IDE-Plug-In für Java. Dies ermöglicht die Navigation im Code, die Überprüfung der Architektur auf Präzision, die Korrektur von Abhängigkeitsdefekten und das Definieren von Komplexitätsgrenzen. Im Gartner Report 2008 "Defining the Discipline of Application Architecture" heißt es: "Die Anwendungsarchitektur ist die Voraussetzung für die Schaffung wirkungsvoller Anwendungsdienste und -lösungen, die so auf 'Gleichkomponenten' aufbauen, dass sie die Anforderungen des jeweiligen Unternehmens erfüllen und gleichzeitig seine Weiterentwicklung unterstützen. Ohne Rückgriff auf verschiedene Muster, vereinheitlichte Prozesse und Frameworks ist der Aufbau von IT-Anwen-dungen bzw. eines Anwendungsportfolios nahezu unmöglich." Für den Coverity Architectural Analyzer ist keine Änderung am Quellcode oder der Build-Umgebung erforderlich. Das Programm liefert automatisch verwertbare Daten zum besseren Verständnis der Codestruktur. Auf Basis dieser Daten lässt sich auch ermitteln, ob neue Quellcodebestandteile nach der Kompilierung den ursprünglichen Softwareentwurf widerspiegeln und stärken. Zu den wichtigen Merkmalen zählen: · Automatisierte Visualisierung der Architektur: Sie erzeugen umfassende Maps von den Quellcodestrukturen: Darstellung gegenseitiger Abhängigkeiten, Darstellung der Komplexität der Architektur, Abhängigkeitsdiagramme und Abhängigkeitsstrukturmatrizen. · Erkennung architekturbezogener Sicherheitsprobleme: Sie ermitteln automatisch Möglichkeiten der Umgehung der Kontrollpunkte für die Zugriffsteuerung auf eine Anwendung, Verschlüsselungs- und Entschlüsselungs-APIs und andere Sicherheitsbedrohungen. · Festlegung und Durchsetzung der Anwendungsarchitektur: Sie definieren Architekturvorgaben und setzen deren Einhaltung durch, indem sie Architekten die Möglichkeit geben, eine Soll-Codearchitektur festzulegen und die Codestruktur im Verlauf der Entwicklung des Quellcodes zu analysieren. · Erkennung architekturbezogener Qualitätsprobleme: Sie ermitteln automatisch Verstöße gegen die Anwendungsarchitektur (z. B. umgekehrte Abhängigkeiten), die zur Ausführungszeit absturzverursachende Defekte zur Folge haben können. "Wenn Entwickler neuen Code schreiben oder vorhandenen Code modifizieren, müssen Anwen-dungsarchitekten und Projektleiter die Integrität ihrer Anwendungsarchitektur sicherstellen", erklärt Ben Chelf, CTO von Coverity. "Indem wir den komplexen Prozess der Visualisierung und die Analyse der Anwendungsstruktur automatisieren, können unsere Kunden gefährliche Sicherheits- und Qualitätsprobleme schon früh im Entwicklungszyklus beseitigen und sicherstellen, dass die gesamte Codebasis auf Grundlage einer vorgegebenen, einheitlichen Methodik entwickelt wird." (Coverity: ma) |
||
|