Apprenez en 3 jours à développer des programmes sécurisés sous Linux pour les objets connectés
Développeurs, Développeurs intégrateurs (DevOps), Éditeurs logiciels et Chefs de projets
À Paris Campus Cyber ou dans vos locaux
3 jours (21 heures)
CERTIFICATION : Attestation d’Acquisition des Compétences de l’EPITA
La formation en développement sécurisé IoT Linux en 2 mots
En 3 jours apprenez à développer des programmes sécurisés pour les objets connectés :
- En intégrant les best practices de sécurité numérique dès la conception des programmes (security by design)
- En prévenant les vulnérabilités
- En utilisant les mécanismes de sécurité offerts par Linux
Cette formation en développement sécurisé IoT Linux a été élaborée grâce à 40 ans d’expertise informatique de l’EPITA.
Elle est dispensée par des experts en cybersécurité et enseignants-chercheurs des plus grandes organisations du domaine.
Objectifs de la formation
Former les développeurs à l’intégration des bonnes pratiques cyber spécifiques à leur métier pour une programmation sécurisée en environnement Linux et IOT dès la conception.
Cette formation vous intéresse ? Contactez-nous !
La formation en développement sécurisé IoT Linux est-elle pour vous ?
- Sécuriser la conception des applications Linux afin d’éviter des intrusions et de limiter des failles dans les systèmes d’information en intégrant la sécurité dans les spécifications fonctionnelles et en implémentant les fonctions de sécurité dans les spécifications techniques
- Développer des logiciels et des applications capables d’écarter les intrusions dans les systèmes d’information en caractérisant les vulnérabilités
- Écarter les intrusions dans les systèmes d’information en développant des logiciels et des applications qui incluent les contre-mesures existantes dans les mécanismes intégrés aux noyaux spécifiques du développement sous Linux
- Tester le logiciel ou l’application pour éviter des intrusions et limiter des failles dans les systèmes d’information en mettant en œuvre des tests de robustesse sur les éléments développés
- Sécuriser le déploiement des applications pour éviter des intrusions et limiter des failles dans les systèmes d’information en vérifiant leur intégration dans l’environnement existant
- Utiliser les mécanismes de sécurité offerts par Linux pour éviter des intrusions et limiter des failles dans les systèmes d’information en étant capable de gérer les contrôles d’accès, les privilèges et les restrictions sur les fichiers
- La connaissance du langage de programmation système C ou C++ est nécessaire.
- Des notions dans le fonctionnement des systèmes d’exploitation et en cryptographie sont un plus.
Salle de formation équipée de postes de travail informatiques disposant de tous les logiciels nécessaires au déroulement de la formation.
Pédagogie immersive qui allie apports théoriques, retours d’expériences et cas pratiques pour un ancrage durable des compétences.
Les cas pratiques sont fournis sur un système vulnérable fourni par SECURESPHERE.
- Évaluation des acquis en cours de session au travers de cas pratiques et de questionnaires
- Une Attestation d’Acquisition des Compétences de l’EPITA vous est délivrée si vous validez l’ensemble des compétences visées par la formation
Pour les personnes en situation de handicap
La formation en développement sécurisé IoT Linux est accessible aux personnes en situation de handicap. Nous vous invitons à préciser dans le formulaire de renseignement si vous avez besoin d’un accompagnement particulier.
En savoir plus sur l’accessibilité PSH, les modalités et les délais d’accès à nos formations.
Programme de la formation en développement sécurisé IoT Linux
Concepts génériques liés aux vulnérabilités logicielles
- Exemples réels et conséquences
- Identification des vulnérabilités (CVE)
- Criticité des vulnérabilités (CVSS) et politique de communication par les éditeurs logiciels
Gestion de projets
- Principe de l’analyse de risques
- Intégration de la sécurité dans les projets
Spécificités des systèmes embarqués et IoT
Spécifications fonctionnelles
- Principe de sécurité par défaut
- Transparence vs sécurité par l’obscurité
- Protection des données sensibles
- Modèles DAC et MAC
- Concepts cryptographiques
- Traçabilité
- Fonctionnalités dangereuses
- Gestion des mises à jour
Spécifications techniques et implémentation des fonctions de sécurité
- Authentification
- Gestion des mots de passe
- Gestion des sessions
- Autorisation / Gestion des droits
- Cryptographie appliquée
- Gestion des erreurs
Problèmes spécifiques aux langages C et C++
- Buffer overflow
- String format bug
- Integer overflow
- Gestion des pointeurs et use-after-free
Problèmes liés aux systèmes
- Race conditions
- Shatter attacks
Outils et recette sécurité
- Protections offertes par les systèmes d’exploitation
- Options de compilation et configuration des interpréteurs
- Tests manuels de sécurité
- Tests unitaires, audit statique de code
- Tests automatisés de sécurité
- Fuzzing et tests d’intrusion applicatifs
Contrôle d’accès
- ACL POSIX
- Pare-feu iptables et nftables
Gestion des privilèges élevés
- Niveaux de droits
- Programmes privilégiés : ◦ Bits SetUID/SetGID ◦ Identifiants utilisateurs d’un processus
- Capabilities
Fonctionnalités avancées sur systèmes Linux
- Restrictions sur les Fichiers (Chroot)
- Espace de nommage (UTS, réseau, IPC, points de montage, processus, utilisateurs et cgroup)
- Cgroups et isolation de processus Seccomp (modes, filtres BPF et eBPF)
- Conteneurs : ◦ Docker ◦ LXC ◦ sVirt