DevGuard Setup
Vorbereitung
Bevor mit dem Auto-Setup begonnen werden kann müssen sie folgendes Sicherstellen.
- Ihre Organisation besitzt eine Projektgruppe auf openCode
- Ihr Projekt, dass sie an den openCode DevGuard Scanner anschließen möchten besitzt ein eigenes Repository in der openCode Gruppe Ihrer Organisation
- Sie besitzen die Berechtigung Merges in dem Projekt durchzuführen
Anleitung zur Repository Anbindung
Melden Sie sich in Ihrem openCode DevGuard Account an.
Sobald Sie anschließend über das Menü auf das zu scannende openCode Repostitory navigieren, wird das Auto-Setup direkt für Sie angeboten werden. Um zum manuellen Setup scrollen Sie bitte weiter nach unten und wählen den Button “Setup Risk Scanning” aus.

Im folgenden Dialog-Feld werden Sie gefragt, wie Sie DevGuard einbinden wollen. Wählen Sie hier “Custom Setup” aus und setzen Sie den Vorgang fort.

Sie werden nun gefragt, welche Scanner Sie nutzen möchten. Sie können entweder die von DevGuard mitgelieferten Open Source Scanning Tools nutzen oder über die SARIF Schnittstelle Ihre eigenen, bisher verwendeten Scanner anbinden. Für die Verwendung der DevGuard Scanner wählen Sie ”DevGuard Default Tools” aus und setzen Sie den Dialog über “Continue” fort.

Im nächsten Dialogfeld können Sie auswählen, welche Scanner Sie für Ihr Projekt verwenden möchten. Für die Badge API - Security Badge Level 3 benötigen Sie mindesten die Software Composition Analyse (SCA) und das Container Image Scanning. Wählen Sie die beiden Scanner aus und setzen Sie den Vorgang fort.

Im nächsten Schritt müssen Sie einen Token generieren, der zur Einbindung von DevGuard in Ihre openCode CI/CD Pipeline genutzt wird. Generieren Sie nun einen Token. ACHTUNG: Sie können den Token nur einmal einsehen und kopieren. Sollte der Token verloren gehen, generieren Sie einen neuen.

ACHTUNG: Sie können den Token nur einmal einsehen und kopieren. Sollte der Token verloren gehen, generieren Sie einen neuen.

Navigieren Sie nun in Ihrem openCode Repository über die Repository-Einstellungen zu den CI/CD Einstellungen.

Navigieren sie dort zu den “Variables” Konfigurationen. Dort können Sie einen neuen “DEVGUARD_TOKEN” als Variable hinterlegen.

Sobald der Token als Variable gespeichert wurde, können Sie im Dialog weiter fortfahren und den vorgeschlagenen .yml Code in Ihre .gitlab-ci.yml einfügen.

Nach dem Speichern wird die Pipeline das erste Mal durchlaufen und die Scanner überprüfen Ihr Repository

Behebung der Schwachstellen
Informationseinsicht
Nach einer kurzen Zeit und dem Durchlaufen der Pipeline werden die ersten Ergebnisse in ihrer openCode DevGuard Oberfläche innerhalb des überprüften Repositories ersichtlich werden.

In dem “Overview” Tab werden Ihnen eine Zusammenfassung des aktuellen Projektzustandes dargestellt. Wenn Sie sich nun die offenen Sicherheitslücken in Ihrer Software anschauen möchten, navigieren Sie zum Tab “Dependency Risks” und öffnen diesen. Dort werden Ihnen alle Ihre vulnerablen Softwarepakete, die in Ihrem Projekt verwendet werden granular dargestellt.

Um die Vulnerablen Pakete und die entsprechenden Schwachstellen genauer zu betrachten und mehr Informationen über diese einzusehen, navigieren Sie nun auf die jeweilige vulnerable Komponente und klicken auf diese, um mehr Informationen zu erlangen.

Nun können Sie die Inforamtionen entweder in openCode DevGuard selbst oder in dem simultan geöffneten openCode Issues Ihres Projektes einsehen, die Sie zur Schwachstellenbehandlung benötigen.
Schwachstellenbehebung
Wenn eine Lösung zu Behebung besteht und die Schwachstelle nun behoben werden soll können Sie den notwendigen Code aus dem jeweiligen Lösungsfeld kopieren und in Ihrer Entwicklungsumgebung ausführen.
Nachdem die Schwachstellen (z. B. durch ein Update der vulnerablen Komponenten) behoben wurde. Können Sie die neuen Ergebnisse des automatisch mit Ihrem Commit durchgeführten erneuten Security Scans entweder innerhalb der Pipeline-Logs oder in Ihrem “Overview” Tab in DevGuard einsehen. Das entsprechend existierende openCode Issue wird bei Behebung der Schwachstelle automatisch für Sie geschlossen und so für Sie dokumentiert.