Arbeitskreis

07.05.2008
17:30-19:00  
Sicherheitsschwachstellen an der Wurzel packen:
Automatische Erkennung sicherheitskritischer Datenflüsse in Software-Quelltexten
Dr. Holger Peine, Fraunhofer IESE

Veranstaltungsort:
Fraunhofer IESE
Fraunhofer-Platz 1
67663 Kaiserslautern  
Anmeldung


Anfahrtsskizze  


Inhalt

Ein Internet-Browser, der auf besuchten Webseiten hinterlegten, gefährlichen Code ohne weitere Fragen ausführt? Eine Server-Anwendung, die sich durch geschickt gewählte Eingabedaten für unerwünschte Zwecke missbrauchen lässt? Das sind zwei der unzähligen Beispiele für IT-Sicherheitsschwachstellen, wie sie mittlerweile fast täglich gemeldet werden - meist verursacht durch allzu sorglose Programmierung.

Forscht man nach den Ursachen solcher Schwachstellen, so stellt man fest, dass ein großer Teil davon auf Fehler in der Programmierung der dahinter stehenden Software zurückzuführen ist. Gebräuchliche Sicherheitsmaßnahmen wie z.B. Firewalls oder Virenscanner erschweren es zwar mehr oder minder effektiv, eine vorhandene Schwachstelle auszunutzen. Doch derlei Abwehrmaßnahmen setzen nicht an der Wurzel des Problems an: Den sicherheitskritischen Fehlern im Programm. Grundsätzlich besser ist es deshalb, Software von vornherein manipulationssicher zu entwickeln und damit möglichen Angriffsstrategien die Grundlage zu entziehen. Die dazu jedoch im Vorfeld erforderliche manuelle Schwachstellenanalyse durch Experten ist für komplexe Software bislang mit hohem Kostenaufwand verbunden.

Das Fraunhofer IESE und drei Software- und IT-Sicherheitsunternehmen haben sich deshalb zusammengeschlossen, um gemeinsam ein Werkzeug zu entwickeln, das eine der wichtigsten Arten von Schwachstellen automatisch im Quelltext einer Software erkennen kann: die Anfälligkeit für manipulierte Eingabedaten. In diese Klasse fallen z.B. bekannte Sicherheitsschwachstellen in Web-Anwendungen wie SQL-Injection oder Cross-Site Scripting.

Der Vortrag erklärt zunächst SQL-Injection an einem Beispiel und leitet daraus die Ziele des Analysewerkzeugs ab. Anschließend wird die interne Architektur des Werkzeugs vorgestellt. Einige Aspekte werden dann näher betrachtet: Die elegante Formulierung von Programmanalysen in Form von logischen Regeln auf einer sprachunabhängigen, deklarativen Repräsentation der Programminformationen, sowie die heuristische Erkennung von Sicherheitsprüfungen im Programm. Im Anschluss an den Vortrag wird dann ein Prototyp des Werkzeugs vorgestellt und die Erkennung eines Cross-Site-Scripting-Datenflusses in einem Java-Quellprogramm demonstriert.

Zielgruppe
Software-Entwickler und -Projektleiter

Die Präsentation des Vortrages finden Sie ca. drei Tage nach der Veranstaltung hier.


Druckbare Version