Niemand vergisst Dependencies absichtlich. Trotzdem sind sechs Monate spaeter zwanzig Pakete veraltet.
Ein Projekt wird gebaut, gelauncht, laeuft. Niemand ist explizit fuer Updates verantwortlich. Und irgendwann sind mehrere Pakete veraltet, einige davon mit bekannten Schwachstellen.
Das ist kein Einzelfall. Das ist Standard in Projekten ohne aktives Dependency Management.
Werkzeuge, die helfen
Die eingebauten Audit-Befehle der jeweiligen Paketmanager fuer PHP, JavaScript und Python decken die Basis ab. Dependabot bietet automatische Pull Requests fuer Updates direkt in GitHub, Snyk liefert tiefere Security-Analysen und ist fuer Open-Source-Projekte kostenlos.
Die Herausforderung: Major Updates
Patch- und Minor-Updates sind meist harmlos, Major-Version-Spruenge koennen Breaking Changes mitbringen. Die richtige Strategie: erst den Changelog lesen, dann auf einem Feature-Branch testen, dann langsam migrieren. Wer alle Updates gleichzeitig einspielt, hat bei Problemen keine Ahnung, welches davon die Ursache war.
Priorisierung nach Risiko
Nicht alle veralteten Dependencies sind gleich gefaehrlich. Entscheidend sind der Schweregrad der Schwachstelle, ob das Paket im oeffentlich erreichbaren Code steckt, und die Abhaengigkeitstiefe zwischen direkter und transitiver Dependency.
Eine feste Kadenz
Mindestens einmal im Quartal aktiv pruefen, kritische Security-Updates innerhalb von 24 bis 48 Stunden einspielen, und automatisierte Pull Requests von Dependabot oder Renovate immer mit Review-Pflicht statt blindem Auto-Merge.
Checkliste: Audit-Output ausgewertet, CVE-Score fuer kritische Issues geprueft, Update-Prioritaetsliste erstellt, Feature-Branch fuer Major-Updates angelegt, Tests nach Update durchgelaufen, laufende Automatisierung konfiguriert.
Ein Beispiel aus der Praxis
Ein Team ignorierte ueber Monate die Warnungen des automatischen Dependency-Scans, weil die Liste mit ueber vierzig Eintraegen unuebersichtlich wirkte und keine erkennbare Prioritaet hatte. Nach der Einfuehrung einer einfachen Sortierung nach CVE-Score und tatsaechlicher Erreichbarkeit im Code reduzierte sich die relevante Liste auf drei wirklich kritische Eintraege. Diese liessen sich innerhalb eines Tages beheben, waehrend die verbleibenden vierunddreissig bewusst in den Backlog wanderten, mit dokumentierter Begruendung, warum sie kein akutes Risiko darstellten.
Dependency-Audit fuer euer Projekt? markom.digital fuehrt Dependency-Audits durch und hilft bei der schrittweisen Migration auf aktuelle Versionen.