Retrouvez LOOTUS au catalogue de formation 2021 de Cap’tronic du 23 au 24 juin 2021

Objectifs

La cryptographie est la discipline de la cryptologie s’attachant à protéger des messages afin d’assurer la confidentialité, l’authenticité et l’intégrité à l’aide de clés. Le fait de coder un message de telle façon à le rendre secret s’appelle le chiffrement. Les applications principales dans les systèmes embarqués sont la mise à jour du logiciel à distance et la protection des données transmises dans l’IoT. La formation à distance se déroulant sous 2 jours vise à fournir aux participants les clés et les connaissances pour identifier les algorithmes et comprendre la cryptographie, mettre en place une chaîne de communication sécurisée mais aussi un système de mise à jour de logiciel à distance.

Prérequis

Il est fortement recommandé d’avoir une base de connaissance d’un langage interprété tel que Python afin de tirer un enseignement maximum de cette formation. Les stagiaires devront idéalement disposer d’une expérience minimum en développement de logiciel embarqué. Une machine virtuelle sera fournie avec l’ensemble des outils déjà installés.

Avoir un PC/Mac portable avec :

    • VMware Player, VMware Workstation, VMware Fusion (ou Virtual Box le cas échéant)
    • Minimum 20GB d’espace libre sur le disque dur
    • 4Go de RAM minimum, 6Go de RAM recommandés
    • 2 cœurs de CPU minimum (Intel, I3, I5, I7 ou AMD équivalent)
    • 2 ports USB libres
    • Système 64 bits avec les droits d’administrations (Windows, Linux ou Mac OS)
      Webcam, haut-parleurs, micro et liaison Internet stable

Public concerné

Ingénieurs et techniciens en charge du développement du logiciel des systèmes embarqués, en charge de la conception d’un produit ou système communicant sécurisé.

Moyens pédagogiques

    • QCM (en début et fin de session)
    • Support de cours PowerPoint (en français)
    • Travaux pratiques (en cours de formation)

Programme – 2 jours

Introduction à la cryptographie

    • Notion d’aléatoire, utilisation de l’entropie
    • Entropie, deux types de générateurs (PRNG / TRNG)
    • Algorithmes, protocoles et un vaste domaine d’expertise
    • De nombreux risques d’implémentation

Les algorithmes

    • Différence entre chiffrement asymétrique et symétrique
    • Les modes d’opération (ECB, CBC, XTS)
    • Chiffrement et signature par bloc
    • Chiffrement asymétrique RSA et ECC
    • Chiffrement symétrique AES
    • HASH DIGEST (Empreinte)
    • Codes d’authentifications de message

Infrastructure à clés publiques (PKI) et communication TLS

    • Définition
    • Cycle de vie d’un certificat
    • Format de fichier pour le stockage des certificats (X.509…)
    • Algorithme de signature
    • Notion de bourrage / remplissage (padding)
    • Comment bien utiliser et contrôler une communication TLS
    • La notion de certificat autosigné
    • Présentation des autorités de confiance publiques payantes et d’une solution gratuite comme letsencrypt

TP : Mettre en place une communication TLS client-serveur

    • Création de sa propre PKI avec openSSL
    • Mise en place d’un certificat coté serveur
    • Mise en place d’une communication TLS

Attaque par force brute

    • Types d’attaques
    • Notion de tables précalculées
    • Notion d’effort
    • Recommandation sur la manière de mémoriser un mot de passe

Démonstration d’attaque par la force brute

    • Types d’attaques
    • Notion de tables précalculées
    • Notion d’effort
    • Recommandation sur la manière de mémoriser un mot de passe

Chaîne de démarrage sécurisée

    • Chaîne de confiance, usage d’un TPM / Secure Element, l’intérêt d’un programme d’amorçage sécurisé
    • La notion de Bootloader et de mise à jour à distance (programme d’amorçage)

TP : Mettre en place les contrôles nécessaires à la vérification d’une mise à jour

    • Démonstration des éléments à prendre en compte afin de vérifier qu’un Firmware authentique sera exécuté

Les fondements d’une mise à jour à distance sécurisée

    • Les enjeux de la mise à jour à distance

    • Comment gérer le processus de mise à jour en production

    • Le rôle du Bootloader

    • Les biens à protéger ?

    • Niveau de protection de la FLASH / RAM RDP / CRP

    • Comment mettre en place un système de mise à jour sécurisé ?

    • Chiffrement / signature d’un Firmware, est-ce toujours nécessaire ?

    • Mise à disposition du Firmware depuis le cloud ?

    • Les risques de cybersécurité liés à l’utilisation de circuits externes gérant les communications

    • L’intérêt du chiffrement de bout en bout

TP : Mettre en place les contrôles nécessaires à la vérification d’une mise à jour

    • Chiffrer, signer et mettre à disposition son propre Firmware
    • Prendre en compte et implémenter les contrôles nécessaires dans le cloud et l’objet connecté