Ihre Abhaengigkeiten sind Ihre Angriffsflaeche — jede Drittanbieter-Bibliothek kann eine bekannte Schwachstelle enthalten. Log4Shell (CVE-2021-44228) hat gezeigt, wie eine einzelne Schwachstelle in einer beliebten Bibliothek Millionen von Anwendungen gefaehrdete. Automatisches Scanning von Abhaengigkeiten in der CI/CD-Pipeline ist das Minimum — es findet bekannte CVEs, bevor sie in die Produktion gelangen. Manuelle Ueberpruefung bei Hunderten von transitiven Abhaengigkeiten ist nicht realistisch.
Werkzeuge¶
# Trivy (universell — Container, Dateisystem, IaC)
trivy fs .
trivy image myapp:latest
# npm
npm audit --audit-level=high
# Python
pip-audit
# Go
govulncheck ./...
Trivy ist am universellsten — es scannt nicht nur Abhaengigkeiten, sondern auch Docker-Images, Kubernetes-Manifeste und Terraform-Konfiguration. Snyk bietet eine entwicklerfreundliche UX mit automatischen Fix-PRs. npm audit und pip-audit sind sprachspezifische Alternativen, die ins Oekosystem integriert sind.
CI/CD¶
- uses: aquasecurity/trivy-action@master
with:
scan-type: fs
severity: HIGH,CRITICAL
exit-code: 1
CI/CD-Integration stellt sicher, dass kein Merge Request mit einer kritischen Schwachstelle in den Main Branch gelangt. Setzen Sie einen Severity-Schwellenwert — blockieren Sie CRITICAL und HIGH, melden Sie WARNING. Fuer Container-Images scannen Sie sowohl in der Build- als auch in der Deploy-Phase, da neue CVEs kontinuierlich erscheinen.
Automatische Updates¶
# Dependabot (.github/dependabot.yml)
version: 2
updates:
- package-ecosystem: npm
directory: /
schedule:
interval: weekly
open-pull-requests-limit: 10
Dependabot und Renovate erstellen automatisch Pull Requests mit Abhaengigkeitsaktualisierungen. In Kombination mit CI-Tests ermoeglicht dies eine schnelle Reaktion auf Sicherheitspatches. Renovate bietet fortgeschrittenere Konfiguration — Auto-Merge fuer Minor/Patch-Updates, Gruppierung verwandter Updates und geplante Wartungsfenster.
Wichtigste Erkenntnis¶
Scannen Sie Abhaengigkeiten in Ihrer CI/CD-Pipeline, automatisieren Sie Updates mit Dependabot oder Renovate. Trivy fuer universelles Scanning, sprachspezifische Tools als Ergaenzung.