M2i Formation

Sécurité applicative Java

Par M2i Formation

Objectifs

  • Reconnaître les mécanismes de sécurité du JDK
  • Décrire les principales failles de sécurité applicative
  • Distinguer sécurité applicative et sécurité réseau
  • Mettre en oeuvre les principales stratégies de sécurité en Java
  • Utiliser Java Cryptography Extension (JCE)
  • Authentifier et autoriser l'accès aux composants Java EE.

Programme

Jour 1

La sécurité sous Java

  • Sécurité Java SE
  • Vérification et Class Loader
  • Security Manager
  • Access Controller
  • Sandbox
  • Fichier Java policy
  • Package security

Le chiffrement avec Java

  • Chiffrement en Java
  • Bases du chiffrement
  • Librairie JCE
  • Classe Cipher
  • Algorithmes symétriques type AES
  • Algorithme asymétrique RSA
  • Fonctions à sens unique type SHA
  • Génération de clés
  • Génération de certificats
Exemple de travaux pratiques (à titre indicatif)
  • Challenge de cryptographie

Jour 2

La sécurité avec Java EE

  • Sécurité Java EE
  • Authentification Web
  • HTTP basic et form
  • HTTPS et JSSE
  • Modules JAAS
  • LoginModule
  • Rôles et domaines
  • Protection des URL
  • Protection des méthodes
  • Annotations de sécurité
  • Sécurité programmatique
  • Sécurité réseau et sécurité applicative
  • Firewall, proxy et DMZ
Exemple de travaux pratiques (à titre indicatif)
  • Mise en place d'une PKI

Tester les failles d'une application

  • Anatomie d'une faille applicative
  • Open Web Application Security Project
  • Le Top 10 OWASP
  • CVE (Common Vulnerabilities and Exposures)
  • CWE (Common Weakness Enumeration)
  • CVSS (Common Vulnerability Scoring System)
Exemple de travaux pratiques (à titre indicatif)
  • Installation de Web Goat et ESAPI

Jour 3

  • Failles et remèdes
  • Injections SQL
  • Cross Site Scripting
  • Détournement de sessions
  • Référence directe par URL
  • Cross Site Request Forgery
  • La faille sur les API
  • IDOR
  • SSRF
Exemple de travaux pratiques (à titre indicatif)
  • Challenge Client et Serveur

Mettre en place du secure code

  • Créer une checklist des bonnes pratiques pour son application
  • Ajouter un analyse des risques
  • Durcir son application avec OWASP ASVS
  • Utiliser les bons outils
    • DAST (Dynamic Application Security Testing)
    • SAST (Static Application Security Testing)
    • WAF (Web Application Firewall)

Pédagogie

  • En cours de formation, par des études de cas ou des travaux pratiques
  • Et, en fin de formation, par un questionnaire d'auto-évaluation ou une certification (M2i ou éditeur)

Partager cette formationTélécharger au format pdf Ajouter à mes favoris

Formations de la même catégories (5)

M2i Formation
Sécurité applicative JavaPar M2i Formation
  • Reconnaître les mécanismes de sécurité du JDK
  • Décrire les principales failles de sécurité applicative
  • Distinguer sécurité applicative et sécurité réseau
  • Mettre en oeuvre les principales stratégies de sécurité en Java
  • Utiliser Java Cryptography Extension (JCE)
  • Authentifier et autoriser l'accès aux composants Java EE.
Dawan
JSF + AJAXPar Dawan

Apprendre à utiliser JSF - Découvrir l'essentiel des possibilités de ce Framework - Construire des applications AJAX/JSF

Dawan
Java Initiation : Programmer en objetPar Dawan

Grands débutants : découvrir la programmation orientée objet au travers du langage Java Réaliser une première application complète

SQLI Institut
Bachotage Java - Certified JAVA SE8 ProgrammerPar SQLI Institut
  • Comprendre comment se déroule une certification Java
  • Garantir le taux de réussite maximal à la certification Java, niveau 1 développeur (1Z0-808)
  • Faire usage de l'ouvrage de référence afin de passer sereinement l'examen
M2i Formation
Approche fonctionnelle avec Java 8Par M2i Formation
  • Analyser les situations de projets Java où la programmation fonctionnelle est globalement supérieure à la programmation objet
  • Décrire les bases de la programmation fonctionnelle pour pouvoir l'appliquer dans vos projets
  • Ecrire des expressions lambda simples et complexes
  • Expliquer la notion d'interface fonctionnelle
  • Exploiter les streams.