Die Ausgangslage
Der meiste Code ist nicht dein Code
Frameworks, Bibliotheken, ein transitives Geflecht aus Abhängigkeiten: Der größte Teil deiner Anwendung stammt nicht von dir. Wenn dieser Code kompromittiert wird, ist deine Anwendung kompromittiert. Und die Bedrohungslage verschärft sich.
Schnellere Funde
Sicherheitslücken werden immer schneller gefunden, durch bessere statische Analyse und durch LLM-basierte Werkzeuge.
Mehr Angriffe
Supply-Chain-Angriffe auf Open-Source-Pakete nehmen zu, von Typosquatting bis Account-Hijacking.
KI ohne Aufsicht
KI-Agenten fügen Abhängigkeiten hinzu, ohne dass jemand die Konsequenzen prüft.
Aufgeschobene Updates
Updates werden so lange aufgeschoben, bis irgendwann nichts mehr zusammenpasst.
In dieser Schulung lernst du, Dependency Management und Supply Chain Security ganzheitlich zu denken: fortgeschrittener Einsatz von Composer, Design Patterns zur Entkopplung von Abhängigkeiten, das Bedrohungsmodell der Software Supply Chain und die Automatisierung sicherer Updates. Du bekommst die Werkzeuge, das mentale Modell und die Praktiken, um Abhängigkeiten dauerhaft im Griff zu behalten, auch wenn die Bedrohungslage sich weiter verschärft.
Das Beispielprojekt
Von schlecht gewartet zu produktionsreif
Ein durchgängiges Beispielprojekt begleitet dich durch alle fünf Sitzungen. Es startet als schlecht gewartetes Projekt und wird Schritt für Schritt zu einem produktionsreifen, abgesicherten und automatisierten Projekt ausgebaut, das du nach der Schulung als Referenz mitnimmst.
Das Programm
Fünf Sitzungen, ein roter Faden
Vom Symptom zur Lösung, von der Absicherung zur Automatisierung. Jede Sitzung dauert zwei Stunden, live und interaktiv, und liefert ein konkretes Artefakt, das du danach in deinen eigenen Projekten anwenden kannst.
Lagebild & Composer-Fundament
2 Stunden- Reale Vorfälle als Lagebild: was bei Supply-Chain-Angriffen tatsächlich passiert
- Composer-Mechanik unter der Haube: was bei
require,installundupdatewirklich geschieht composer.jsonvs.composer.lock: warum der Unterschied sicherheitsrelevant ist- Semantic Versioning, Versionsbeschränkungen und Plattform-Anforderungen gezielt einsetzen
Composer für reale Projekte
2 Stunden- Private Repositories und Authentifizierung sauber einrichten
- Composer-Plugins als Sicherheitsthema: Code, der bei jeder Installation läuft
- Autoloading-Strategien und ihre Auswirkungen
- Scripts und Hooks: Automatisierung mit Augenmaß
Architektur
2 Stunden- Abhängigkeiten mit Adapter, Facade und Anti-Corruption Layer entkoppeln
- Updates und Wechsel von Bibliotheken ohne Kettenreaktion
- Wo Entkopplung sich lohnt und wo sie nur Komplexität hinzufügt
- Die Patterns am Beispielprojekt praktisch anwenden
Supply Chain Security
2 Stunden- Bedrohungsmodell mit Tiefe: SBOM, SLSA, Typosquatting, Account-Hijacking
composer auditin der Praxis: Funde fundiert bewerten statt blind reagieren- Roave Security Advisories: verwundbare Versionen gar nicht erst installieren
- LLM-basierte Sicherheitswerkzeuge: was sie leisten und wo ihre Grenzen sind
Updates automatisieren
2 Stunden- Renovate konfigurieren: von der ersten Pull Request bis zur Merge-Strategie
- CI als Sicherheitsnetz für automatisierte Updates
- PHP-Major-Updates mit Rector bewältigen
- Guardrails für KI-Agenten im Update-Prozess etablieren
Für wen
Wer sollte teilnehmen?
- PHP-Entwickler:innen, die Composer nutzen, aber bei Konfiguration und Versionsbeschränkungen unsicher sind
- Teams, die Updates immer wieder aufschieben, weil sie Angst vor Breaking Changes haben
- Entwickler:innen, die Supply-Chain-Risiken ernst nehmen und ihre Lieferkette absichern wollen
- Tech Leads und Architekt:innen, die einen tragfähigen Update- und Audit-Prozess etablieren wollen
- Teams, in denen KI-Agenten Abhängigkeiten hinzufügen, ohne dass jemand die Konsequenzen prüft
- Sicherheitsverantwortliche, die verstehen wollen, was in der Composer-Welt möglich und üblich ist
Du nimmst mit
- Du konfigurierst Composer gezielt für reale Anforderungen, inklusive privater Repositories, Plattform-Anforderungen und Authentifizierung
- Du setzt Versionsbeschränkungen bewusst ein und weißt, wann welcher Operator passt
- Du entkoppelst Abhängigkeiten architektonisch, sodass Updates und Wechsel keine Kettenreaktion auslösen
- Du verstehst das Bedrohungsmodell der Software Supply Chain und bewertest Audit-Funde fundiert
- Du automatisierst Updates mit Renovate, abgesichert durch CI, sodass dein Projekt dauerhaft aktuell bleibt
- Du hast ein Vorgehen für KI-Agenten, die Abhängigkeiten hinzufügen
- Du nimmst das Beispielprojekt als Referenz für deine eigenen Projekte mit
Du bringst mit
- Ein paar Monate Erfahrung mit PHP oder einer ähnlichen Programmiersprache
- Grundlegende Composer-Kenntnisse sind hilfreich, aber keine Voraussetzung: wir bauen das mentale Modell von Grund auf neu auf
- Eine lokale Entwicklungsumgebung mit PHP 8.2 oder neuer, Composer, Git und einem Terminal
- Einen Editor deiner Wahl
Dein Trainer
Sebastian Bergmann
Sebastian ist der Schöpfer von PHPUnit, dem De-facto-Standard für das Testen von PHP-Code. Als Berater, Trainer und Mitgründer von thePHP.cc hilft er seit über zwei Jahrzehnten Teams dabei, wartbare und gut getestete Software zu bauen.
In dieser Schulung baust du mit ihm ein schlecht gewartetes Projekt Schritt für Schritt zu einem produktionsreifen, abgesicherten und automatisierten Projekt aus. Live, an echtem Code, mit deinen Fragen.
Anmeldung
Fünf interaktive Live-Sitzungen zu je zwei Stunden als Zoom-Meeting. Kleine Gruppe, echtes Projekt, deine Fragen.
Nächster Termin: