Formation #DEV62

Formation Sécurité Java

Formation avec Restauration incluse
(Déjeuner, Petit Déjeuner et Pauses Cafés)

Durée : 5 jours

Code : DEV62


Sessions programmées :

Du 15 au 19 Fév. 2021

Du 19 au 23 Avril 2021

Du 14 au 18 Juin 2021

Du 20 au 24 Sept. 2021

Du 15 au 19 Nov. 2021

Fin d'Inscription :
Le Bulletin d'Inscription doit être rempli, cacheté, signé et envoyé par email :
  • Pour les entreprises AU MAROC :
    Au minimum 10 JOURS OUVRÉS avant la date de formation
  • Pour les entreprises HORS MAROC :
    Au minimum 15 JOURS OUVRÉS avant la date de formation

Formation dans votre entreprise.

Durée : 5 jours

Code : DEV62


Vous souhaitez réaliser cette formation en vos locaux avec le même programme ?

Vous souhaitez personnaliser le programme de cette formation pour qu'elle réponde aux spécificités de votre entreprise ?

Objectifs

  • Identifier le périmètre de la sécurité des applications Java
  • Contrôler les actions de tout code java sur votre système (fichier .policy)
  • Mettre en oeuvre les API de cryptographie : JCA/JCE
  • Sécuriser l’accès à vos écrans web et vos EJB avec JAAS
  • Utiliser l’outil keytool pour manipuler des certificats
  • Sécuriser via SSL la communication entre client/serveur
Programme
1/ Les concepts clés
  • L'authentification et méthodes d'authentification
  • L'autorisation
  • La confidentialité
  • L'intégrité
  • L'empreinte
  • Le chiffrement
  • La signature
2/ Les failles et les remèdes
  • Les injections SQL
  • Cross Site Scripting (XSS)
  • Le détournement de sessions
  • La référence directe par URL
  • Cross Site Request Forgery (CSRF)
3/ Sécurisation de la JVM
  • Limites naturelles imposées par Java
  • Gestion mémoire
  • Contrôle du bytecode par la machine virtuelle
4/ La sécurité Plateforme
  • Exécution protégée
  • ClassLoader
  • SecurityManager
  • AccessController
  • Le fichier java.policy
  • Le fichier security.policy
  • L'outil PolicyTool
  • Surcharge des méthodes d'accès
  • Lecture, écriture, exécution, ouverture de socket
5/ Le chiffrement avec Java
  • Les bases du chiffrement en Java
  • Librairie JCE
  • Classe Cipher
  • Les services d’un provider
  • Les algorithmes de Chiffrement
  • Les algorithmes symétriques type AES
  • Algorithme asymétrique RSA
  • Les fonctions à sens unique type SHA
  • La génération de clés
  • La génération de certificats
  • Les outils GnuGPG, GPG4Win, Keytool
6/ La sécurité conteneur web et EJB
  • Sécurité Java EE
  • Authentification Web
  • Spécification JAAS
  • Realm DB, LDAP, LoginModule
  • HTTP BASIC, FORM, CLIENT-CERT
  • HTTPS et JSSE
  • Spécificités Tomcat / WILDFLY / GLASSFISH
  • @ServletSecurity, @HttpConstraint
  • @RunAs,DeclareRoles,@RolesAllowed
  • @DenyAll, @PermitAll...
  • Les limites de JAAS
  • Les outils : Apache Shiro, Spring Security
  • 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
7/ 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)
  • 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
8/ Contrôle
  • Rappel sur les ACL
  • Le paquetage java.security.acl
  • Ajout d'entrée, vérification d'accès
9/ Obfuscation
  • Principe
  • Techniques d'obfuscation
  • Solutions commerciales
10/ Mettre en place du secure code
  • Checklist des bonnes pratiques pour son application
  • Analyse des risques
  • Durcir son application avec OWASP ASVS
  • Les bons outils
  • DAST (Dynamic Application Security Testing)
  • SAST (Static Application Security Testing)
  • WAF (Web Application Firewall)
11/ L'audit Sécurité
  • Les scanners réseau / Ports
  • Les scanners de Vulnérabilité
  • La base de données d’exploits
  • Les normes PCI/DSS
  • Les normes CERT JAVA
  • Les outils : Nmap, OpenVAS, WebGoat
Approche Pédagogique

Approche Pédagogique

  • Pédagogie très opérationnelle fondée sur l'alternance entre théorie et pratique
  • Cas pratiques
  • Remise d’outils
  • Echanges d’expériences
Public Cible

Personnes Visées

  • Développeurs
  • Analystes programmeurs
  • Chefs de projets
Dates

Dates

  • Du 15 au 19 Fév. 2021
  • Du 19 au 23 Avril 2021
  • Du 14 au 18 Juin 2021
  • Du 20 au 24 Sept. 2021
  • Du 15 au 19 Nov. 2021
  • Fin d'Inscription :
    Le Bulletin d'Inscription doit être rempli, cacheté, signé et envoyé par email :
    • Pour les entreprises AU MAROC : Au minimum 10 JOURS OUVRÉS avant la date de formation
    • Pour les entreprises HORS MAROC : Au minimum 15 JOURS OUVRÉS avant la date de formation