Cette formation Hacking et Sécurisation des applications Node.js vous permettra de maîtriser les bonnes pratiques pour sécuriser vos applications web basée sur Node.js.
À travers des ateliers pratiques, vous apprendrez :
- à identifier les vulnérabilités courantes (telles que les failles OWASP),
- à sécuriser vos API et
- à protéger vos données sensibles.
Par ailleurs, vous maîtriserez l’utilisation de différents outils vous permettant d’auditer et renforcer la sécurité de vos projets Node.js.
Cette formation est destinée aux développeur·euse·s web souhaitant approfondir leurs compétences en sécurité afin de construire des applications robustes et sécurisées, prêtes à affronter les menaces actuelles.
Intéressé·e par la sécurité des applications web ?
Alors la formation hacking et sécurité des applications web est faite pour vous !
Les objectifs
- Comprendre les principales menaces de sécurité dans les applications Node.js
- Maîtriser les bonnes pratiques de développement sécurisé
- Appliquer des techniques de protection contre les vulnérabilités courantes (OWASP)
- Configurer et utiliser des outils pour auditer et renforcer la sécurité des applications
Pré-requis
- Connaissances de bases de Node.js
- Ordinateur portable à apporter
Le programme de la formation Hacking et sécurité avec Node.js
Jour 1 : Principes fondamentaux et vulnérabilités courantes
-
Introduction à la sécurité des applications Node.js
- Contexte et enjeux de la sécurité des applications web
- Risques spécifiques aux applications Node.js
- Exemples d’attaques et impacts associés
- Architecture Node.js et implications sur la sécurité
- Modèle d’événements et de non-blocking I/O
- Gestion des dépendances et risques liés à npm
- Les bases des failles de sécurité
- Principes d'authentification et d'autorisation
- Introduction aux référentiels de sécurité (OWASP Top 10 et WSTG)
-
Vulnérabilités courantes et leurs corrections
- Injection de code et command injection
- Identifier les failles d’injection dans Node.js
- Protection contre les injections SQL/NoSQL et d'autres commandes
- Cross-Site Scripting (XSS)
- Types de XSS et leur détection
- Techniques de prévention
- escape
- Content Security Policy (CSP)
- Gestion des sessions et des tokens
- Sécurisation des cookies et des JWT
- Risques liés au stockage client/serveur
- Autres vulnérabilités courantes
- Injections SQL (et NoSQL)
- Exécution de code distant (RCE)
- Cross-Site Request Forgery (CSRF)
- Exposition des données sensibles
Mise en pratique
- Analyse d’une application vulnérable (ou de différents codes source) pour identifier des problèmes courants
- Identification et correction de vulnérabilités dans une application Node.js préparée
Jour 2 : Bonnes pratiques et outils de sécurité
-
Sécurisation des API et des données
- Bonnes pratiques pour sécuriser les API REST et GraphQL
- Implémentation d'authentification et d'autorisation robustes
- Limitation des accès
- rate limiting (protection contre brute-force)
- IP whitelisting
- Validation des entrées utilisateurs avec des outils comme Joi ou Zod
- Chiffrement et protection des données
- Utilisation de HTTPS (SSL/TLS) et la gestion des certificats
- Stockage sécurisé des mots de passe (bcrypt, Argon2)
- Chiffrement des données sensibles avec Node.js (crypto module)
- Gestion des erreurs et logs
- Ne pas exposer d’informations sensibles dans les logs
- Centralisation et surveillance des logs pour détecter les attaques
-
Audit, Tests et Surveillance
- Audit de sécurité des dépendances npm
- Identifier et corriger les dépendances vulnérables avec npm audit, snyk, ou OWASP Dependency-Check
- Tests de sécurité automatisés
- Mise en place de tests de sécurité avec des frameworks comme Mocha ou Chai
- Utilisation de scanners de sécurité pour API et web apps (ZAP, Burp Suite Community)
- Surveillance et monitoring en production
- Détection et réponse aux attaques avec des outils comme WAF (Web Application Firewall)
- Introduction à l’observabilité en sécurité (logs, métriques, traces)
- Planification d’un processus de sécurité continu
- Automatisation des mises à jour et des audits
- Bonnes pratiques CI/CD pour intégrer la sécurité dès le développement
Mise en pratique
- Mise en place d’une API REST sécurisée avec JWT et protection des données
- Audit complet d’une application Node.js existante avec des outils de sécurité
Télécharger le programme
Le(s) formateur(s)
Anthony DESSIATNIKOFF
Anthony est titulaire d'un doctorat en cybersécurité et réalise depuis 2014 des audits de sécurité pour des entreprises de petites et grandes tailles. Ses domaines de prédilections sont la sécurité des applications web, le pentest avec Python et le hacking avancé.
Son approche pédagogique repose sur un équilibre entre théorie et pratique, avec des exercices interactifs et des quizz pour consolider les acquis. Pour enrichir l’expérience de ses stagiaires, Anthony a d'ailleurs développé sa propre plateforme d’exercices.
Passionné par les tests d’intrusion, l’audit de code et le développement sécurisé (PHP, Python, Node.js), il adapte ses formations aux besoins des développeurs souhaitant renforcer la sécurité de leurs projets.
Que ce soit en présentiel ou en distanciel, Anthony propose des formations accessibles, idéales pour acquérir des compétences concrètes en cybersécurité.
Voir son profil détaillé
FAQ
Nos formations sont éligibles à plusieurs dispositifs de financement, selon votre situation. Human Coders est certifié
Qualiopi, ce qui permet la prise en charge par des organismes comme
Pôle emploi, votre OPCO ou encore le
CPF (Compte Personnel de Formation) pour certaines formations.
Pour en savoir plus, veuillez consulter notre page : Comment financer votre formation ?
Oui, la formation peut être proposée en présentiel ou en distanciel. Pour les inter-entreprises, les modalités (présentiel ou à distance) sont fonction de la session.
Nous pouvons organiser des sessions à d'autres dates ou dans d'autres villes (Bordeaux, Lille, Lyon, Marseille, Montpellier, Nantes, Nice, Paris, Strasbourg, Toulouse...)
Les formations se déroulent toujours en petit groupe de 3 à 6 stagiaires. Nous souhaitons que les formateurs et formatrices puissent passer un maximum de temps avec chacun·e.
Voici une journée type :
- 9h : vous êtes accueillis par votre formateur·rice autour d'un petit déjeuner (croissants, pains au chocolat, jus de fruit, thé ou café...)
- 9h30 : la formation commence
- 12h30 : pause de midi. Le·a formateur·rice mangera avec vous. C'est l'occasion d'avoir des discussions plus informelles.
- 14h : reprise de la formation
- 18h : fin de la journée
A propos de Human Coders
Human Coders c'est un centre de formation pour développeurs avec :
- une certification Qualiopi, 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...
- 162 formations au catalogue, 1636 sessions depuis nos débuts en 2012 avec une moyenne de satisfaction de 4,6/5
- 99% des participants qui se disent satisfaits de nos formations
- la possibilité de vous proposer un accompagnement personnalisé, du conseil ou un suivi après la formation