Dieser Kurs vermittelt PHP-Entwicklern essentielle Fähigkeiten, um ihre Anwendungen widerstandsfähig gegen zeitgenössische Angriffe über das Internet zu machen. Web-Schwachstellen werden anhand von PHP-basierten Beispielen erläutert, die über die OWASP Top Ten hinausgehen. Dabei werden verschiedene Injektionsangriffe, Script-Injektionen, Angriffe auf die Session-Verwaltung von PHP, unsichere direkte Objektverweise (IDOR), Probleme mit Dateiuploads und viele weitere Themen behandelt. PHP-spezifische Schwachstellen werden in die standardmäßigen Kategorien fehlende oder unzureichende Eingabevalidierung, fehlerhafte Fehler- und Ausnahmeverarbeitung, unsachgemäßer Gebrauch von Sicherheitsfunktionen sowie zeit- und zustandsbezogene Probleme eingeteilt. Für diese letztere Kategorie werden Angriffe wie das Umgehen von open_basedir, Denial of Service durch magische Float-Zahlen oder Hash-Tabellen-Kollisionsangriffe besprochen. In allen Fällen setzen sich die Teilnehmer mit den wichtigsten Techniken und Funktionen auseinander, um die genannten Risiken zu minimieren.
Ein besonderer Fokus liegt auf der Client-seitigen Sicherheit, wobei Sicherheitsprobleme von JavaScript, Ajax und HTML5 behandelt werden. Zudem werden eine Reihe sicherheitsrelevanter PHP-Erweiterungen eingeführt, wie z. B. hash, mcrypt und OpenSSL für die Kryptographie sowie Ctype, ext/filter und HTML Purifier zur Eingabevalidierung. Die besten Hardening-Praktiken werden im Zusammenhang mit der PHP-Konfiguration (Einstellung von php.ini), Apache und dem Server im Allgemeinen vorgestellt. Abschließend wird ein Überblick über verschiedene Sicherheits-Testing-Tools und -Techniken gegeben, die Entwickler und Tester nutzen können, einschließlich Security Scannern, Penetration Testing und Exploit Paks, Sniffern, Proxy-Servern, Fuzzing-Tools und statischen Quellcode-Analysatoren.
Sowohl die Einführung in Schwachstellen als auch die Konfigurationspraktiken werden durch zahlreiche praktische Übungen unterstützt, die die Konsequenzen erfolgreicher Angriffe aufzeigen, den Einsatz von Minimierungstechniken veranschaulichen und die Anwendung verschiedener Erweiterungen und Tools einführen.
Teilnehmer, die diesen Kurs besuchen, werden
- Grundkonzepte der Sicherheit, IT-Sicherheit und des sicheren Programmierens verstehen
- Weiterführende Web-Schwachstellen jenseits der OWASP Top Ten kennen lernen und wissen, wie man diese vermeidet
- Client-seitige Schwachstellen und bewährte Praktiken für sicheres Programmieren erlernen
- Eine praktische understood von Kryptographie erwerben
- Lernen, verschiedene Sicherheitsfeatures von PHP zu verwenden
- Häufige Programmierfehler kennen lernen und wissen, wie man sie vermeidet
- Über aktuelle Schwachstellen des PHP-Frameworks informiert sein
- Praktische Kenntnisse im Umgang mit Security-Testing-Tools gewinnen
- Quellen und weiterführende Literatur zu Praktiken des sicheren Programmierens erhalten
Zielgruppe
Entwickler
Mehr Informationen...