Sicheres Programmieren in PHP Schulung
Dieser Kurs vermittelt den für PHP-Entwickler unverzichtbaren Grundlagen, um deren Anwendungen wirksam gegen aktuelle Internetangriffe zu wappnen. Dabei werden Webschwachstellen anhand praxisnaher PHP-Beispiele erläutert und dabei die OWASP Top Ten erweitert. Behandelt werden unter anderem diverse Injektionsangriffe, Skriptinjektionen, Angriffe auf die Session-Verarbeitung in PHP, unsichere direkte Objektreferenzen sowie Probleme beim Dateiupload. PHP-bezogene Schwachstellen werden nach den Standardkategorien fehlender oder unzulänglicher Eingabevalidierung, fehlerhafter Fehler- und Ausnahmeverarbeitung, falscher Nutzung von Sicherheitsfeatures sowie zeit- und zustandsbezogenen Problemen zusammengefasst. Im Bereich der letzteren thematisieren wir Angriffe wie das Umgehen von open_basedir, Denial-of-Service über magische Floats oder Hash-Tabellen-Kollisionsangriffe. In allen Fällen setzen sich die Teilnehmer mit den wichtigsten Techniken und Funktionen zur Abmilderung dieser Risiken auseinander.
Besonderes Gewicht wird der clientseitigen Sicherheit beigemessen, wobei Sicherheitsprobleme von JavaScript, Ajax und HTML5 behandelt werden. Zudem werden eine Reihe sicherheitsrelevanter PHP-Erweiterungen vorgestellt, wie etwa 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 erläutert. Abschliessend gibt es einen Überblick über verschiedene Sicherheitstesttools und -techniken, die Entwickler und Tester nutzen können, darunter Security-Scanner, Penetrationstests und Exploit-Packs, Sniffer, Proxy-Server, Fuzzing-Tools sowie statische Quellcode-Analysatoren.
Sowohl die Einführung in Schwachstellen als auch die Konfigurationspraktiken werden durch zahlreiche praktische Übungen unterstützt, die die Folgen erfolgreicher Angriffe aufzeigen, demonstrieren, wie Sicherheitsmassnahmen angewendet werden können, und die Nutzung verschiedener Erweiterungen und Tools erläutern.
Die Teilnehmenden dieses Kurses werden
- Grundlegende Konzepte der IT-Sicherheit und des sicheren Programmierens verstehen
- Web-Schwachstellen jenseits der OWASP Top Ten kennenlernen und lernen, wie man ihnen ausweicht
- Clientseitige Schwachstellen und bewährte Praktiken für sicheres Programmieren erlernen
- eine praktische Einführung in die Kryptographie erhalten
- verschiedene Sicherheitsfeatures von PHP anwenden können
- typische Programmierfehler kennenlernen und lernen, wie man sie vermeidet
- über aktuelle Schwachstellen des PHP-Frameworks informiert sein
- praktische Kenntnisse im Umgang mit Sicherheitstesttools erwerben
- Literaturquellen und weiterführende Lektüren zu sicheren Programmierpraktiken erhalten
Zielgruppe
Entwickler
Schulungsübersicht
- IT-Sicherheit und sicheres Programmieren
- Sicherheit von Webanwendungen
- Schwachstellen in Webanwendungen
- Clientseitige Sicherheit
- Clientseitige Sicherheit
- Praktische Kryptographie
- PHP-Sicherheitsdienste
- PHP-Umgebung
- Grundprinzipien der Sicherheit und des sicheren Programmierens
- Häufige Programmierfehler und Schwachstellen
- Sicherheitstesttechniken und -tools
- Literaturquellen
Offene Schulungskurse erfordern mindestens 5 Teilnehmer.
Sicheres Programmieren in PHP Schulung - Buchung
Sicheres Programmieren in PHP Schulung - Anfrage
Sicheres Programmieren in PHP - Beratungsanfrage
Erfahrungsberichte (3)
I genuinely enjoyed the real life examples.
Marios Prokopiou
Kurs - Secure coding in PHP
Maschinelle Übersetzung
All topics were well covered and presented with a lot of examples. Ahmed was very efficient and managed to keep us focused and attracted at all times.
Kostas Bastas
Kurs - Secure coding in PHP
Maschinelle Übersetzung
The subject of the course was very interesting and gave us many ideas.
Anastasios Manios
Kurs - Secure coding in PHP
Maschinelle Übersetzung
Kommende Kurse
Kombinierte Kurse
Netzwerksicherheit und sichere Kommunikation
21 StundenDie Implementierung einer sicheren, vernetzten Anwendung kann selbst für Entwickler eine Herausforderung sein, die zuvor bereits verschiedene kryptografische Bausteine (wie Verschlüsselung und digitale Signaturen) eingesetzt haben. Um den Teilnehmenden die Rolle und Verwendung dieser kryptografischen Primitive zu verdeutlichen, wird zunächst ein solides Fundament zu den Hauptanforderungen einer sicheren Kommunikation gelegt – dazu gehören sichere Bestätigung, Integrität, Vertraulichkeit, entfernte Identifizierung und Anonymität –, wobei auch die typischen Probleme dargestellt werden, die diese Anforderungen beeinträchtigen können, sowie reale Lösungsansätze.
Da die Kryptografie ein entscheidender Aspekt der Netzwerksicherheit darstellt, werden zudem die wichtigsten kryptografischen Algorithmen in den Bereichen symmetrische Kryptografie, Hashing, asymmetrische Kryptografie und Schlüsselaustausch behandelt. Statt einen tiefgehenden mathematischen Hintergrund zu liefern, werden diese Elemente aus Sicht der Entwickler:innen diskutiert, wobei typische Anwendungsbeispiele und praktische Überlegungen im Zusammenhang mit der Nutzung von Kryptografie, etwa Public-Key-Infrastrukturen (PKI), aufgezeigt werden. Darüber hinaus werden Sicherheitsprotokolle in vielen Bereichen der sicheren Kommunikation vorgestellt, mit einem vertieften Fokus auf die am weitesten verbreiteten Protokollfamilien wie IPsec und SSL/TLS.
Typische Schwachstellen der Kryptografie werden sowohl im Zusammenhang mit bestimmten kryptografischen Algorithmen als auch mit kryptografischen Protokollen erörtert, beispielsweise BEAST, CRIME, TIME, BREACH, FREAK, Logjam, Padding-Oracle, Lucky Thirteen, POODLE und ähnliche, sowie die RSA-Zeitangriffsmethode (Timing Attack). In jedem Fall werden für jedes Problem die praktischen Überlegungen und möglichen Konsequenzen beschrieben, erneut ohne tiefgehende mathematische Details.
Schliesslich wird, da XML-Technologie für den Datenaustausch vernetzter Anwendungen im Zentrum steht, die Sicherheitsaspekte von XML beschrieben. Dazu gehört die Verwendung von XML innerhalb von Webdiensten und SOAP-Nachrichten sowie Schutzmassnahmen wie XML Signature und XML Encryption – ebenso werden Schwächen dieser Schutzmassnahmen und xml-spezifische Sicherheitsprobleme wie XML-Injection, XML External Entity (XXE)-Angriffe, XML-Bombs und XPath-Injection behandelt.
Teilnehmende dieser Schulung wissen
- grundlegende Konzepte der Sicherheit, IT-Sicherheit und des sicheren Programmierens zu verstehen
- die Anforderungen einer sicheren Kommunikation zu begreifen
- sich mit Netzwerkangriffen und Abwehrmechanismen auf verschiedenen OSI-Schichten vertraut zu machen
- über ein praktisches Verständnis von Kryptografie zu verfügen
- essentielle Sicherheitsprotokolle zu verstehen
- neuere Angriffe gegen kryptografische Systeme nachzuvollziehen
- Informationen über einige der jüngsten damit verbundenen Schwachstellen zu erhalten
- Sicherheitskonzepte von Webdiensten zu begreifen
- Quellen und weiterführende Literatur zu bewährten Praktiken des sicheren Programmierens kennengelernt zu haben
Zielgruppe
Entwickler:innen, Fachkräfte
Sicheres Programmieren in C/C++
21 StundenDas Schreiben von sicherem C- und C++-Code erfordert eine strenge Abwehr gegen böswillige Ausnutzung, Speicherkorruption und das Umgehen der Eingabevalidierung. Dieses Programm untersucht Schwachstellenmuster wie Pufferüberläufe, Use-after-free, ganzzahlige Überläufe und Typanomalien. Die Teilnehmer wenden sichere Programmierrichtlinien, statische Analyse-Tools und defensive Programmierungstechniken an, um Schwachstellen zu beseitigen, die Eingabebereinigung durchzusetzen und eine gegen Cyberangriffe widerstandsfähige Software zu liefern.
Erweiterte Java-Sicherheit
21 StundenAuch erfahrene Java-Programmierer beherrschen nicht automatisch sämtliche von Java angebotenen Sicherheitsdienste und sind sich ebenfalls der verschiedenen Schwachstellen, die für in Java geschriebene Webanwendungen relevant sind, oft nicht bewusst.
Der Kurs – neben der Einführung der Sicherheitskomponenten der Standard Java Edition (SE) – befasst sich mit Sicherheitsfragen der Java Enterprise Edition (JEE) und von Webdiensten. Der Diskussion spezifischer Dienste gehen Grundlagen der Kryptografie und sicherer Kommunikation voraus. Verschiedene Übungen befassen sich mit deklarativen und programmatischen Sicherheitstechniken in JEE, wobei sowohl die Sicherheitsmechanismen auf Transportebene als auch End-to-End-Sicherheit bei Webdiensten behandelt werden. Die Anwendung aller Komponenten wird durch mehrere praktische Übungen vorgestellt, bei denen die Teilnehmenden die diskutierten APIs und Tools selbst ausprobieren können.
Der Kurs durchleuchtet und erklärt zudem die häufigsten und schwerwiegendsten Programmierfehler der Java-Sprache und -Plattform sowie webbezogene Schwachstellen. Neben den typischen Fehlern, die von Java-Programmierern begangen werden, decken die vorgestellten Sicherheitslücken sowohl sprachen spezifische Probleme als auch Schwierigkeiten ab, die aus der Laufzeitumgebung resultieren. Alle Schwachstellen und die relevanten Angriffe werden anhand leicht verständlicher Übungen demonstriert, gefolgt von empfohlenen Coding-Richtlinien und möglichen Abschwächungstechniken.
Teilnehmende dieses Kurses werden
- Begriffe rund um Sicherheit, IT-Sicherheit und sicheres Programmieren verstehen
- Schadenspotenziale von Webanwendungen jenseits der OWASP Top Ten kennenlernen und wissen, wie man diesen ausweicht
- Sicherheitskonzepte von Webdiensten verstehen
- Lernen, verschiedene Sicherheitsfunktionen der Java-Entwicklungsumgebung zu nutzen
- Ein praktisches Verständnis von Kryptografie entwickeln
- Sicherheitslösungen von Java EE verstehen
- Sich über typische Programmierfehler informieren und lernen, wie man diese vermeidet
- Informationen zu einigen jüngsten Schwachstellen im Java-Framework erhalten
- Praktische Kenntnisse im Umgang mit Sicherheitstestwerkzeugen erwerben
- Quellen und weiterführende Literatur zu sicheren Programmierpraktiken erhalten
Zielgruppe
Entwickler/innen
Sicherheit in der .NET-, C#- und ASP.NET-Entwicklung
14 StundenHeute stehen zahlreiche Programmiersprachen zur Verfügung, um Code für die .NET- und ASP.NET-Frameworks zu kompilieren. Die Umgebung bietet mächtige Mittel für die Sicherheitsentwicklung, doch Entwickler müssen wissen, wie sie die programmtechnischen Konzepte auf Architektur- und Codierungsebene anwenden, um die gewünschte Sicherheitsfunktionalität zu implementieren, Schwachstellen zu vermeiden oder deren Ausnutzung einzuschränken.
Ziel dieses Kurses ist es, Entwicklern durch zahlreiche praktische Übungen nahezubringen, wie man unzuverlässigen Code daran hindert, privilegierte Aktionen auszuführen, Ressourcen durch starke Authentifizierung und Autorisierung schützt, Remote Procedure Calls bereitstellt, Sitzungen verwaltet, verschiedene Implementierungen für bestimmte Funktionalitäten einführt und vieles mehr.
Die Einführung verschiedener Schwachstellen beginnt mit der Präsentation typischer Programmierprobleme, die bei der Verwendung von .NET auftreten. Die Diskussion der Schwachstellen in ASP.NET befasst sich ebenfalls mit verschiedenen Umgebungseinstellungen und deren Auswirkungen. Das Thema spezifischer ASP.NET-Schwachstellen behandelt nicht nur allgemeine Herausforderungen der Webanwendungssicherheit, sondern auch spezielle Probleme und Angriffsmethoden wie das Angreifen der ViewState oder String-Terminierungsangriffe.
Teilnehmer dieses Kurses werden
- Grundlegende Konzepte der Sicherheit, IT-Sicherheit und sicheren Codierung verstehen
- Web-Schwachstellen jenseits der OWASP Top Ten kennenlernen und wissen, wie man sie vermeidet
- Lernen, verschiedene Sicherheitsfeatures der .NET-Entwicklungsumgebung zu nutzen
- Praktische Kenntnisse im Umgang mit Sicherheitstesttools erlangen
- Typische Codierungsfehler kennenlernen und erfahren, wie man sie vermeidet
- Informationen über einige aktuelle Schwachstellen in .NET und ASP.NET erhalten
- Quellen und weiterführende Literatur zu sicheren Codierungspraktiken erhalten
Zielgruppe
Entwickler
Microsoft SDL Core
14 StundenDie kombinierte Schulung zu den Kernthemen des Secure Development Lifecycle (SDL) gibt einen Einblick in das sichere Entwerfen, Entwickeln und Testen von Software anhand des Microsoft Secure Development Lifecycle (SDL). Sie bietet einen Überblick auf Ebene 100 über die grundlegenden Bausteine des SDL, gefolgt von Entwurfstechniken zur Erkennung und Behebung von Schwachstellen in frühen Phasen des Entwicklungsprozesses.
Im Hinblick auf die Entwicklungsphase vermittelt der Kurs einen Überblick über typische sicherheitsrelevante Programmierfehler sowohl bei verwaltetem als auch bei nativem Code. Für die behandelten Schwachstellen werden Angriffs Methoden sowie die entsprechenden Gegenmassnahmen vorgestellt, allesamt erklärt anhand zahlreicher praktischer Übungen, die den Teilnehmern Live-Hacking-Erlebnisse bieten. Die Einführung unterschiedlicher Sicherheits Testmethoden wird durch Demonstrationen der Effektivität verschiedener Testing Tools ergänzt. Die Teilnehmer können das Funktionsweisen dieser Tools in praktischen Übungen erlernen, indem sie diese auf die bereits besprochenen anfälligen Codebasen anwenden.
Die Teilnehmer dieser Schulung
Verstehen die grundlegenden Konzepte von Sicherheit, IT-Sicherheit und Secure Coding
Lernen die wesentlichen Schritte des Microsoft Secure Development Lifecycle kennen
Erwerben sichere Entwurfs- und Entwicklungspraktiken
Lernen sichere Implementierungsprinzipien kennen
Verstehen die Methodik des Sicherheits Testings
- Erhalten Quellen und weiterführende Literatur zu Secure Coding Praktiken
Zielgruppe
Entwickler, Manager
DevOps-Sicherheit: Erstellung einer DevOps-Sicherheitsstrategie
7 StundenIn diesem Dozentengeführten Live-Kurs in Schweiz lernen die Teilnehmer, wie sie eine geeignete Sicherheitsstrategie entwickeln können, um der DevOps-Sicherheitsherausforderung zu begegnen.
Design Patterns in PHP
14 StundenDieser instructor-led, live Schulung in Schweiz (online oder vor Ort) richtet sich an PHP-Entwickler auf mittlerem Niveau, die Design Patterns in ihren Projekten effektiv einsetzen möchten.
Nach Abschluss dieser Schulung werden die Teilnehmer folgende Fähigkeiten erworben haben:
- Das Ziel und den Nutzen von Design Patterns verstanden.
- Geeignete Design Patterns für häufige Szenarien identifiziert und implementiert.
- PHP-Anwendungen nach branchenüblichen Best Practices strukturiert.
- Patterns in moderne Frameworks wie Symfony oder Zend integriert.
EC-Council Certified DevSecOps Engineer (ECDE)
28 StundenDer Kurs «EC-Council Certified DevSecOps Engineer (ECDE)» ist eine praxisorientierte Schulung, die Fachleuten die notwendigen Fähigkeiten vermittelt, um Sicherheit nahtlos in den gesamten DevOps-Lebenszyklus zu integrieren und so eine sichere Softwareentwicklung von der Planung bis zum Deployment zu gewährleisten.
Diese Dozenten-gestützte, lebendige Schulung (online oder vor Ort) richtet sich an Software- und DevOps-Fachkräfte mit fortgeschrittenen Kenntnissen, die Sicherheitspraktiken in ihre CI/CD-Pipelines integrieren möchten, um eine sichere und konforme Auslieferung des Codes zu gewährleisten.
Nach Abschluss dieser Schulung werden die Teilnehmer in der Lage sein:
- Die Prinzipien und Praktiken von DevSecOps zu verstehen.
- Jede Phase der CI/CD-Pipeline mit automatisierten Tools abzusichern.
- Sichere Coding-Praktiken und Vulnerability-Scanning durchzuführen.
- Sich auf die ECDE-Zertifizierung vorzubereiten, dank praktischer Labore und Wiederholungen.
Kursformat
- Interaktive Vorträge und Diskussionen.
- Praktische Anwendung von DevSecOps-Tools in simulierten Pipelines.
- Geführte Übungen mit Fokus auf sichere Entwicklung und Deployment.
Möglichkeiten zur Kursanpassung
- Um eine maßgeschneiderte Schulung für diesen Kurs zu beantragen, die an die Workflows oder Tools Ihres Teams angepasst ist, kontaktieren Sie uns bitte zur Organisation.
Laravel PHP-Framework
14 StundenDieser Dozentengeleitete Live-Training in Schweiz stellt die Grundlagen von Laravel vor und führt die Teilnehmer durch die Erstellung einer Laravel-basierten Webanwendung.
Laravel Livewire
7 StundenDiese von einer Lehrperson geleitete Live-Schulung in <ort> (online oder vor Ort) richtet sich an Entwicklerinnen und Entwickler, die Livewire kennenlernen und nutzen möchten, um moderne und dynamische Anwendungsoberflächen zu entwickeln.
Am Ende dieser Schulung sind die Teilnehmenden in der Lage:
- Livewire-Komponenten zu erstellen und zu testen.
- Anwendungen mit der Livewire-Bibliothek zu entwickeln.
- dynamische Komponenten innerhalb von PHP zu erstellen.
Laravel und Vue.js
14 StundenDiese instruktorengestützte Live-Schulung in Schweiz (online oder vor Ort) richtet sich an Webentwickler, die Laravel und Vue JS für Fullstack-Webentwicklung einsetzen möchten.
Nach Abschluss dieser Schulung sind die Teilnehmer in der Lage:
- Webanwendungen mit Laravel und Vue JS zu entwickeln.
- Die Laravel-Backend-API in Vue JS zu integrieren.
- Eine Laravel-Anwendung bereitzustellen (Deploy).
Laravel: Middleware-Entwicklung
14 StundenDiese dozentengeführte Live-Schulung (online oder vor Ort) richtet sich an Webentwickler, die Middleware und Webservices in Laravel entwickeln möchten.
Nach Abschluss dieser Schulung können die Teilnehmenden:
- Laravel PHP Artisan verwenden, um Code und Komponenten zu generieren.
- RESTful APIs in Laravel erstellen, die durchsuchen, lesen, bearbeiten, hinzufügen und löschen können.
- Ergebnisse anhand von URL-Parametern filtern und sortieren, indem sie RESTful APIs nutzen.
Sicheren Code schreiben
35 StundenDieser Kurs in Schweiz zielt darauf ab, Folgendes zu unterstützen:
- Entwicklern dabei zu helfen, die Techniken des sicheren Programmierens zu meistern
- Softwaretestern dabei zu helfen, die Sicherheit der Anwendung vor der Veröffentlichung in der Produktionsumgebung zu testen
- Softwarearchitekten dabei zu helfen, die Risiken rund um die Anwendungen zu verstehen
- Teamleitern dabei zu helfen, die Sicherheitsgrundlagen für Entwickler festzulegen
- Webservicemanagern dabei zu helfen, Server so zu konfigurieren, dass Fehlkonfigurationen vermieden werden
Sicherer Developer Java (inkl. OWASP)
21 StundenDieser Kurs behandelt die Konzepte und Prinzipien des sicheren Codings mit Java anhand der Testmethodik des Open Web Application Security Project (OWASP). Das Open Web Application Security Project ist eine Online-Community, die kostenlos zugängliche Artikel, Methodologien, Dokumentationen, Tools und Technologien im Bereich der Sicherheit von Webanwendungen entwickelt.
Secure Developer .NET (inkl. OWASP)
21 StundenDieser Kurs vermittelt die Prinzipien und Konzepte des sicheren Codierens mit ASP.NET gemäss der Testmethodik des Open Web Application Security Project (OWASP). OWASP ist eine Online-Community, die frei zugängliche Artikel, Methodologien, Dokumentation, Tools und Technologien im Bereich der Webanwendungssicherheit bereitstellt.
Dieser Kurs beleuchtet die Sicherheitsfeatures des .NET-Frameworks und zeigt auf, wie Webanwendungen effektiv abgesichert werden können.