Formation Sécurité Web côté client

Apprenez à renforcer la sécurité de vos applications Web en utilisant les mécanismes prévus par les navigateurs lors de cette formation de 3 jours !

Prix (Formation inter-entreprise)

1700€ HT / personne

Durée

3 jours

Dates

Nous pouvons organiser des sessions à d'autres dates ou dans d'autres villes (Bordeaux, Lille, Lyon, Marseille, Montpellier, Nantes, Nice, Paris, Strasbourg, Toulouse...)

Cette formation Sécurité Web côté client s’adresse à des développeur·se·s (frontend, backend, ou full-stack) souhaitant apprendre (ou approfondir sur) la sécurisation d'apps Web.
Elle complémente et se distingue de la formation Hacking et Sécurité des Applications Web par son emphase sur le côté client et par son orientation plus défensive qu'offensive.

On oublie parfois que la sécurité sur le Web ne se résume pas à sécuriser le backend. Toutefois, les navigateurs Web modernes disposent de nombreux mécanismes visant à renforcer la sécurité de vos utilisateurs/utilisatrices côté client. Certains de ces mécanismes ont fait leurs preuves et se sont imposés, alors que d'autres ont été reconnus comme des expériences ratées.
Devant une telle pléthore d'options, il est facile de se sentir dépassé·e. Pourtant, il serait dommage de ne pas se familiariser avec ces mécanismes, car une utilisation judicieuse de ceux-ci participe du principe de défense en profondeur et peut vous sauver la mise.

Quelques exemples viennent à l'esprit :

  • Une Content-Security Policy (CSP) efficace peut empêcher l'exploitation d'une faille de cross-site scripting qui aurait échappé à votre vigilance.
  • Le Subresource Integrity (SRI) protége vos utilisateurs et utilisatrices dans le cas, certes improbable (mais désastreux), où une ressource externe chargée sur votre site venait à être compromise.

A l'inverse, des mécanismes tels que le Cross-Origin Resource Sharing (CORS), qui permet d'assouplir les restrictions imposées par la Same-Origin Policy, peuvent être mal configurés et mettre en péril la confidentialité de vos données.

Bien que les frameworks Web puissent vous soulager d'une partie de ce fardeau, leur configuration par défaut n'est pas toujours bonne et une partie de leur configuration nécessite de toute façon une intervention manuelle.

A l’issue de cette formation Sécurité Web côté client, qui sera ponctuée d'études de cas et de travaux pratiques, vous serez capable de renforcer la sécurité de vos apps Web et serez autonome en termes de veille technologique sur la sécurité côté client.

Installations nécessaires sur votre machine : des versions récente de Firefox et Chrome et votre éditeur de texte ou IDE (orienté Web) préféré.

Covid-19 : Nous nous adaptons dans ces moments difficiles. Nous avons mis en place des outils permettant l'organisation de formations à distance.

Les objectifs

  • Découvrir les mécanismes de sécurité offerts par les navigateurs
  • Evaluer la posture de sécurité de votre app Web côté client
  • Connaître les bonnes pratiques, et discerner les mauvaises
  • Utiliser ces outils pour défendre ses utilisateurs/utilisatrices dans le navigateur

Pré-requis

  • Bases de HTTP, utilisation régulière de HTML et JavaScript
  • Ordinateur portable à apporter

Le programme de la formation Sécurité Web côté client

Jour 1 : cookies et CORS

Introduction
  • La sécurité sur le Web : pas seulement une affaire côté serveur
  • Le navigateur : le premier rempart
  • Rapide passage en revue des navigateurs
X-Content-Type-Options
  • Content sniffing
  • Exercice : semer la confusion chez le navigateur et causer du XSS
  • Mise en pratique : résolution à l'aide de la directive nosniff
  • De l'importance de choisir un bon Content-Type
Cookies
  • Scoping : bonnes et mauvaises pratiques
  • HttpOnly et Secure : les attributs incontournables
  • Etude de cas : conséquences de cookies mal configurés
  • SameSite : le petit nouveau
Cross-Origin Resource Sharing (CORS)
  • La Same-Origin Policy en deux mots
  • Motivations d'assouplir la SOP
  • JSONP : la méthode "old school" et dangereuse
  • CORS : la méthode moderne
  • Etude de cas : mauvaise configuration de CORS
  • Exercice : exploitation d'un CORS mal configuré
  • Bonnes pratiques

Jour 2 : CSP et SRI

Content Security Policy (CSP)
  • Le couteau Suisse de la sécurité au sein du navigateur
  • Restreindre l'origine des resources
  • Restreindre le cross-origin framing
  • Quid des entêtes X-Frame-Options et X-XSS-Protection ?
  • Autres directives utiles de la CSP
  • Bonnes pratiques
  • Etude de cas : critique d'une CSP existante
Subresource Integrity (SRI)
  • Problèmes liés au chargement de ressources externes
  • Quelques exemples tristement célèbres de Web skimming
  • Etude de cas : attaques Magecart
  • Garantir l'intégrité de resources externes
  • Obstacles à l'adoption du SRI

Jour 3 : HTTPS et autres mécanismes de sécurité

HTTPS et certificats
  • HTTPS pour les nul.le.s
  • HTTP Strict Transport Security
  • Certificate Transparency et ses conséquences
  • HTTP Public-Key Pinning : le villain petit canard
  • Expect-CT : un ami de passage
  • Signed Certificate Timestamps
noopener et noreferrer
  • Reverse tabnabbing : une attaque méconnue
  • Exercice : exploitation d'une faille de type reverse tabnabbing
  • Mise en pratique : noopener et noreferrer à la rescousse
Referrer Policy
  • L'entête de requête Referer
  • Exercice : exfiltration de jetons sensibles via l'entête Referer
  • Mise en pratique : resolution à l'aide d'une Referrer Policy
Feature Policy
  • Protéger les utilisatrices/utilisateurs sur mobile
  • Revue des différentes directives
Discussion

Télécharger le programme

Le(s) formateur(s)

Julien Cretel

Julien est développeur et chercheur en sécurité indépendant. Go, sécurité Web, bug bounty hunting, programmation fonctionnelle, technologies serverless... Julien a plusieurs amours, mais Go tient une place particulière dans son coeur et est devenu son outil de choix pour le backend. Il a un blog principalement dédié à Go et la sécurité informatique disponible sur https://jub0bs.com.

Voir son profil détaillé

A propos de Human Coders

Human Coders c'est un centre de formation pour développeurs avec :

  • une habilitation Datadock, indispensable pour que vous puissiez obtenir des aides au financement via votre OPCO
  • de nombreux clients qui nous font confiance depuis des années
  • un manifeste pour garantir des formations à taille humaine, des formateurs passionnés, de véritables workshops...
  • 74 formations au catalogue, 878 sessions depuis nos débuts en 2012 avec une moyenne de satisfaction de 4,6/5
  • la possibilité de vous proposer un accompagnement personnalisé ou du conseil après la formation

Besoin d'aide ?

Vous souhaitez discuter avec nous à propos de votre projet de formation ?
Vous voulez plus d'information sur une formation ou notre fonctionnement ?


Rappel Email

Nos forces

  • Des formations à taille humaine
  • Des formateurs passionnés
  • Des véritables workshop
Accéder au Manifeste

Nos clients

Voyage SNCF
Orange
Boursorama
Axa
Banque Postale
Air France

Formation Sécurité Web côté client

Apprenez à renforcer la sécurité de vos applications Web en utilisant les mécanismes prévus par les navigateurs lors de cette formation de 3 jours !

Cette formation Sécurité Web côté client s’adresse à des développeur·se·s (frontend, backend, ou full-stack) souhaitant apprendre (ou approfondir sur) la sécurisation d'apps Web.
Elle complémente et se distingue de la formation Hacking et Sécurité des Applications Web par son emphase sur le côté client et par son orientation plus défensive qu'offensive.

On oublie parfois que la sécurité sur le Web ne se résume pas à sécuriser le backend. Toutefois, les navigateurs Web modernes disposent de nombreux mécanismes visant à renforcer la sécurité de vos utilisateurs/utilisatrices côté client. Certains de ces mécanismes ont fait leurs preuves et se sont imposés, alors que d'autres ont été reconnus comme des expériences ratées.
Devant une telle pléthore d'options, il est facile de se sentir dépassé·e. Pourtant, il serait dommage de ne pas se familiariser avec ces mécanismes, car une utilisation judicieuse de ceux-ci participe du principe de défense en profondeur et peut vous sauver la mise.

Quelques exemples viennent à l'esprit :

  • Une Content-Security Policy (CSP) efficace peut empêcher l'exploitation d'une faille de cross-site scripting qui aurait échappé à votre vigilance.
  • Le Subresource Integrity (SRI) protége vos utilisateurs et utilisatrices dans le cas, certes improbable (mais désastreux), où une ressource externe chargée sur votre site venait à être compromise.

A l'inverse, des mécanismes tels que le Cross-Origin Resource Sharing (CORS), qui permet d'assouplir les restrictions imposées par la Same-Origin Policy, peuvent être mal configurés et mettre en péril la confidentialité de vos données.

Bien que les frameworks Web puissent vous soulager d'une partie de ce fardeau, leur configuration par défaut n'est pas toujours bonne et une partie de leur configuration nécessite de toute façon une intervention manuelle.

A l’issue de cette formation Sécurité Web côté client, qui sera ponctuée d'études de cas et de travaux pratiques, vous serez capable de renforcer la sécurité de vos apps Web et serez autonome en termes de veille technologique sur la sécurité côté client.

Installations nécessaires sur votre machine : des versions récente de Firefox et Chrome et votre éditeur de texte ou IDE (orienté Web) préféré.

Covid-19: Nous restons ouverts. Cette formation est disponible à distance.

Les objectifs

  • Découvrir les mécanismes de sécurité offerts par les navigateurs
  • Evaluer la posture de sécurité de votre app Web côté client
  • Connaître les bonnes pratiques, et discerner les mauvaises
  • Utiliser ces outils pour défendre ses utilisateurs/utilisatrices dans le navigateur

Pré-requis

  • Bases de HTTP, utilisation régulière de HTML et JavaScript
  • Ordinateur portable à apporter

Le programme de la formation Sécurité Web côté client

Jour 1 : cookies et CORS

Introduction
  • La sécurité sur le Web : pas seulement une affaire côté serveur
  • Le navigateur : le premier rempart
  • Rapide passage en revue des navigateurs
X-Content-Type-Options
  • Content sniffing
  • Exercice : semer la confusion chez le navigateur et causer du XSS
  • Mise en pratique : résolution à l'aide de la directive nosniff
  • De l'importance de choisir un bon Content-Type
Cookies
  • Scoping : bonnes et mauvaises pratiques
  • HttpOnly et Secure : les attributs incontournables
  • Etude de cas : conséquences de cookies mal configurés
  • SameSite : le petit nouveau
Cross-Origin Resource Sharing (CORS)
  • La Same-Origin Policy en deux mots
  • Motivations d'assouplir la SOP
  • JSONP : la méthode "old school" et dangereuse
  • CORS : la méthode moderne
  • Etude de cas : mauvaise configuration de CORS
  • Exercice : exploitation d'un CORS mal configuré
  • Bonnes pratiques

Jour 2 : CSP et SRI

Content Security Policy (CSP)
  • Le couteau Suisse de la sécurité au sein du navigateur
  • Restreindre l'origine des resources
  • Restreindre le cross-origin framing
  • Quid des entêtes X-Frame-Options et X-XSS-Protection ?
  • Autres directives utiles de la CSP
  • Bonnes pratiques
  • Etude de cas : critique d'une CSP existante
Subresource Integrity (SRI)
  • Problèmes liés au chargement de ressources externes
  • Quelques exemples tristement célèbres de Web skimming
  • Etude de cas : attaques Magecart
  • Garantir l'intégrité de resources externes
  • Obstacles à l'adoption du SRI

Jour 3 : HTTPS et autres mécanismes de sécurité

HTTPS et certificats
  • HTTPS pour les nul.le.s
  • HTTP Strict Transport Security
  • Certificate Transparency et ses conséquences
  • HTTP Public-Key Pinning : le villain petit canard
  • Expect-CT : un ami de passage
  • Signed Certificate Timestamps
noopener et noreferrer
  • Reverse tabnabbing : une attaque méconnue
  • Exercice : exploitation d'une faille de type reverse tabnabbing
  • Mise en pratique : noopener et noreferrer à la rescousse
Referrer Policy
  • L'entête de requête Referer
  • Exercice : exfiltration de jetons sensibles via l'entête Referer
  • Mise en pratique : resolution à l'aide d'une Referrer Policy
Feature Policy
  • Protéger les utilisatrices/utilisateurs sur mobile
  • Revue des différentes directives
Discussion

Télécharger le programme

Le(s) formateur(s)

Julien Cretel

Julien est développeur et chercheur en sécurité indépendant. Go, sécurité Web, bug bounty hunting, programmation fonctionnelle, technologies serverless... Julien a plusieurs amours, mais Go tient une place particulière dans son coeur et est devenu son outil de choix pour le backend. Il a un blog principalement dédié à Go et la sécurité informatique disponible sur https://jub0bs.com.

Voir son profil détaillé

A propos de Human Coders

Human Coders c'est un centre de formation pour développeurs avec :

  • une habilitation Datadock, indispensable pour que vous puissiez obtenir des aides au financement via votre OPCO
  • de nombreux clients qui nous font confiance depuis des années
  • un manifeste pour garantir des formations à taille humaine, des formateurs passionnés, de véritables workshops...
  • 74 formations au catalogue, 878 sessions depuis nos débuts en 2012 avec une moyenne de satisfaction de 4,6/5
  • la possibilité de vous proposer un accompagnement personnalisé ou du conseil après la formation

* Nombre de personnes ayant répondu au questionnaire de satisfaction sur cette formation depuis 2012