Schwachstellenanalyse mit OWASP Dependency Check

Die OWASP Foundation stellt verschiedene Tools zur Verfügung, um die Sicherheit von Web-Anwendungen zu verbessern. Ein Tool ist der Dependency Check, welcher die Bibliotheken eines Java-Projekts auf bekannte Sicherheitslücken hin überprüft.

Installation

Das Tool gibt es auf der Seite bei OWASP es in verschiedenen Varianten:

  • Als Standalone für die Kommandozeile,
  • Ant-Task,
  • Plugin für Maven, Gradle, Jenkins, …

Im Weiteren wird die Standalone-Variante eingesetzt. Dazu muß lediglich das ZIP-Archiv heruntergeladen und entpackt werden. Da es sich um ein Java-Programm handelt, läuft es auf jedem System mit einer JavaVM.

Aufruf

Im bin-Verzeichnis finden sich die Shell-Scripte für Linux und Windows. Unter Linux wird das Tool über

$ ./dependency-check.sh --project "<project-name>" --scan <directory-to-scan>

aufgerufen. project-name ist dabei ein beliebiger Projektname, der später im Report auftaucht. directory-to-scan gibt den Ordner an, in dem sich die Jar-Dateien der externen Bibliotheken finden.

Beim ersten Start werden die Informationen zu den Bibliotheken aus dem Netz geladen. Die weiteren Aufrufe sollten dann schneller sein, da nur noch Änderungen heruntergeladen werden müssen.

Nach einer kurzen Analysephase wird der Report erstellt und in der Datei dependecy-check-report.html abgelegt.

Der Report

Am Report-Anfang findet sich die Zusammenfassung. Unter Dependency stehen den Namen der beanstandeten Bibliotheken, Vulnerability IDs listet die Schwachstellen auf, Highest Severity zeigt die höchste Stufe aller gefundenen Schwachstellen an und CVE Count die Anzahl der Schwachstellen.

Die Tabelle läst sich über die Spaltentitel sortieren. Dies funktioniert allerdings in einigen Fällen (z.B. bei Highest Severity) nicht richtig.

Nach der Zusammenfassung folgen die genauen Angaben zu jeder Bibliothek. Diese enthält die bekannten CVEs sowie deren Beschreibungen, die betroffenen Versionen und weiterführende Informationen.

oppol.abryok+blog-My4xNDMuMjE0LjEwMA@gmail.com