Möchtest du mit deinem Team teilnehmen? Ab drei Personen profitiert ihr von unseren Gruppenrabatten! Direkt im Shop buchen!

Online-Workshop: Abhängigkeiten im Griff: Composer verstehen, Risiken bewerten

Online-Workshop, 4. Dezember 2026, 10-14 Uhr

80 bis 95 Prozent einer typischen PHP-Anwendung sind Code, den das eigene Team nicht geschrieben hat: Frameworks, Bibliotheken und ein transitives Geflecht aus Abhängigkeiten. Wird dieser Code kompromittiert, ist die Anwendung kompromittiert. Gleichzeitig werden Sicherheitslücken immer schneller gefunden, und Angriffe auf Open-Source-Pakete nehmen zu.

In diesem Workshop arbeitest du durchgehend an einem Beispielprojekt. Im ersten Teil geht es um die Mechanik von Composer: was bei 'require', 'install' und 'update' tatsächlich geschieht, warum der Unterschied zwischen `composer.json` und 'composer.lock' sicherheitsrelevant ist und wann welcher Operator für Versionsbeschränkungen passt. Im zweiten Teil geht es um das Bedrohungsmodell der Software Supply Chain, von Typosquatting über Account Hijacking bis zu SBOM und SLSA, und um die Frage, die 'composer audit' nicht beantwortet: Ist dein Projekt von einem Fund überhaupt betroffen?

Du untersuchst, über welchen Pfad ein verwundbares Paket in dein Projekt gelangt, bewertest den Fund im Kontext deiner Anwendung und aktualisierst gezielt, auch wenn das betroffene Paket eine transitive Abhängigkeit ist. Schließlich konfigurierst du das Advisory-Blocking im Dependency-Resolver aktueller Composer-Versionen, das bekannt verwundbare Versionen gar nicht erst installierbar macht, und legst fest, wie dein Projekt mit begründeten Ausnahmen umgeht.

Das Beispielprojekt behältst du nach dem Workshop als Referenz für deine eigenen Projekte.

Vorkenntnisse

  • Der Workshop richtet sich an PHP-Entwickler:innen, Tech Leads und Architekt:innen, die Anwendungen mit Composer entwickeln und für deren Abhängigkeiten Verantwortung tragen.
  • Ein paar Monate Erfahrung mit PHP sowie der sichere Umgang mit Git und der Kommandozeile werden vorausgesetzt.
  • Grundlegende Composer-Kenntnisse sind hilfreich, tiefere Kenntnisse sind nicht erforderlich: Die Funktionsweise von Composer wird von Grund auf erarbeitet.

Lernziele

  • Verstehen, was Composer bei 'require', 'install' und 'update' tut und welche Rolle 'composer.lock' für reproduzierbare und sichere Installationen spielt
  • Versionsbeschränkungen und Plattform-Anforderungen bewusst einsetzen
  • Das Bedrohungsmodell der Software Supply Chain kennen und die Angriffsvektoren auf das eigene Projekt beziehen
  • Nachvollziehen, über welche direkten und transitiven Abhängigkeiten ein Paket ins Projekt gelangt
  • Funde von 'composer audit' fundiert bewerten, statt blind zu reagieren
  • Verwundbare Pakete gezielt aktualisieren, ohne unbeabsichtigt weitere Abhängigkeiten zu verändern
  • Advisory-Blocking im Composer-Resolver konfigurieren und Ausnahmen begründet und nachvollziehbar verwalten

Technische Anforderungen

  • Rechner mit Podman (bevorzugt) oder Docker
  • Du bekommst vor dem Workshop ein Containerfile. Das daraus gebaute Image enthält PHP, Composer und alle weiteren Werkzeuge, einsatzbereit für die Arbeit mit dem Beispielprojekt. Eine lokale PHP-Installation ist nicht nötig.
  • Git und ein Terminal
  • Editor oder IDE deiner Wahl
  • Ungefilterter Internetzugang zu packagist.org und github.com (in Unternehmensnetzen bitte vorab Proxy und Firewall prüfen)
  • Bitte baue das Image anhand der Anleitung, die du rechtzeitig erhältst, schon vor dem Workshop und starte den Container einmal testweise.

Speaker

 

Sebastian Bergmann
Sebastian Bergmann Sebastian Bergmann ist Autor und Maintainer von PHPUnit und Gründungspartner von thePHP.cc. Als Mitgründer und Vorstandsmitglied der PHP Foundation sowie im Arbeitskreis Open Source Software der Gesellschaft für Informatik befasst er sich mit der Absicherung von Open-Source-Ökosystemen.
LinkedIn