Dieser Kurs vermittelt PHP-Entwicklern die notwendigen Fähigkeiten, um ihre Anwendungen vor aktuellen Internetangriffen zu schützen. Web-Schwachstellen werden anhand von PHP-bezogenen Beispielen erläutert, die über die OWASP Top Ten hinausgehen und verschiedene Arten von Injektionsangriffen, Script-Injektionen, Angriffen auf das Session-Handling in PHP, unsichere direkte Objektverweise (IDOR), Probleme im Zusammenhang mit Dateiuploads und viele weitere Themen behandeln. PHP-spezifische Schwachstellen werden nach den standardmäßigen Kategorien unvollständiger oder fehlerhafter Eingabevalidierung, falscher Fehler- und Ausnahmehandhabung, unsachgemäßer Nutzung von Sicherheitsfeatures sowie zeit- und zustandsbezogenen Problemen vorgestellt. Zu diesen letzteren zählen Angriffsszenarien wie das Umgehen der open_basedir-Einschränkung, Denial-of-Service-Angriffe über den 'magic float'-Mechanismus oder Hash-Tabellen-Kollisionsangriffe. In allen Fällen werden die Teilnehmer mit den wichtigsten Techniken und Funktionen vertraut gemacht, um diese Risiken wirksam zu mindern.
Ein besonderer Fokus liegt auf der Sicherheit im Client-Bereich, wobei Sicherheitsprobleme von JavaScript, Ajax und HTML5 beleuchtet werden. Es werden verschiedene PHP-Erweiterungen für sicherheitsrelevante Aufgaben eingeführt, etwa Hash-Funktionen, mcrypt und OpenSSL für die Kryptografie sowie Ctype, ext/filter und HTML Purifier zur Validierung der Eingaben. Die besten Hardening-Praktiken im Zusammenhang mit der PHP-Konfiguration (Einstellung von php.ini), Apache und dem Server insgesamt werden ebenfalls vorgestellt. Abschließend erhalten die Teilnehmer einen Überblick über verschiedene Security-Testing-Tools und -Methoden, die Entwickler und Tester nutzen können, einschließlich Security-Scannern, Penetrationstesting-Tools und Exploit-Packs, Sniffern, Proxy-Servern, Fuzzing-Tools sowie statischen Quellcode-Analyseprogrammen.
Sowohl die Vorstellung der Schwachstellen als auch die Konfigurationspraktiken werden durch eine Reihe praktischer Übungen unterstützt, die die Konsequenzen erfolgreicher Angriffe aufzeigen, die Anwendung von Minderungstechniken demonstrieren und die Nutzung verschiedener Erweiterungen und Tools vorstellen.
Teilnehmer dieses Kurses können
- Die grundlegenden Konzepte der IT-Sicherheit und des sicheren Programmierens verstehen
- Weitergehende Web-Schwachstellen jenseits der OWASP Top Ten kennenlernen und wissen, wie man diese vermeidet
- Sicherheitsprobleme im Client-Bereich und sichere Codierungspraktiken erlernen
- Ein praktisches Verständnis für Kryptografie entwickeln
- Lernen, verschiedene Sicherheitsfeatures von PHP anzuwenden
- Häufige Programmierfehler erkennen und wissen, wie man sie vermeidet
- Über aktuelle Sicherheitslücken in der PHP-Framework-Ökosystem informiert sein
- Praktische Kenntnisse im Umgang mit Security-Testing-Tools erwerben
- Ressourcen und weiterführende Literatur zu sicheren Programmierpraktiken erhalten
Zielgruppe
Entwickler
Mehr Informationen...