Ouvrir le menu Fermer le menu

Qu'est-ce que la cybersécurité pour les systèmes embarqués ?

trait de séparation
Temps de lecture : 6 minutes

La connectivité a entraîné des changements majeurs dans les applications embarquées. Le passage d'applications spécifiques à un appareil, fixes et statiques, à un monde connecté au « cloud » a apporté une multitude d'opportunités pour faciliter la surveillance, la mise à jour, l'amélioration et le complément des fonctionnalités.

En revanche, les vulnérabilités dans n'importe quel point d'un système connecté accessible aux utilisateurs non autorisés (appelées collectivement la « surface d'attaque ») peuvent potentiellement permettre à des acteurs malveillants de le compromettre. Pire encore, ces agresseurs n'ont souvent aucun intérêt particulier pour vous ou votre système. La plupart du temps, ils scrutent tout et n'importe quoi à la recherche de vulnérabilités, motivés par divers objectifs allant du gain financier au simple frisson de la chasse. Leur succès et votre malchance peuvent causer un tort incommensurable à vos produits et à votre entreprise – pouvant mener à des réclamations en responsabilité, des amendes de conformité, des dommages à la réputation, et des clients en panique cherchant du soutien.
 

Qu'est-ce que la cybersécurité ?

Le terme « cybersécurité » (parfois cyber-sécurité) désigne la pratique visant à protéger les systèmes, les réseaux et les données contre les attaques numériques, l'accès non autorisé, les dommages ou le vol. Cela implique la mise en place de mesures et de technologies destinées à préserver l'intégrité, la confidentialité et la disponibilité de l'information. Les aspects clés incluent l'identification des vulnérabilités, la surveillance des menaces et la réponse aux incidents.

La cybersécurité dans le contexte des systèmes embarqués concerne la protection des dispositifs informatiques spécialisés qui sont dédiés à des fonctions spécifiques au sein de systèmes mécaniques ou électriques plus vastes. Ces systèmes, que l'on trouve dans des applications telles que les contrôles automobiles, les dispositifs médicaux, les machines industrielles et les objets connectés (IoT), sont souvent contraints en ressources et fonctionnent dans des environnements en temps réel. Garantir leur sécurité implique de relever des défis uniques tels que la puissance de traitement limitée, la mémoire restreinte et la nécessité d'une opération en temps réel.

Qu'est-ce que la défense en profondeur ?

Aucune défense unique d'un système connecté ne peut garantir l'imperméabilité totale ; cependant, l'application de plusieurs niveaux de sécurité assure que si un niveau échoue, d'autres restent en place pour protéger. Une analogie populaire pour cette approche de la défense en profondeur est celle du château médiéval, conçu pour défendre ses habitants contre les sièges grâce à une multitude de tours, de murs d'enceinte, de douves, de mottes, de herses, de ponts-levis, de mâchicoulis et d'autres mécanismes ingénieux. Et pourtant, malgré toutes ces défenses, des châteaux ont été compromis par des assaillants.

Il existe également de nombreuses défenses disponibles pour les développeurs de systèmes embarqués connectés. Tout comme les défenses des châteaux, toutes sont utiles, mais aucune n'est impénétrable. Elles incluent :
  • La protection des données au repos
  • Le démarrage sécurisé (Secure Boot)
  • La séparation des domaines
  • Les principes de conception des niveaux de sécurité multiples et indépendants (MILS)
  • La réduction de la surface d'attaque
  • Le codage sécurisé

La contribution principale de LDRA à la cybersécurité concerne le codage sécurisé, bien que les capacités de test des outils LDRA puissent également être utilisées pour mettre en œuvre d'autres mécanismes de défense.


Qu'est-ce que le codage sécurisé ?

Le codage sécurisé fait référence au principe de conception du code qui respecte les normes de sécurité les plus élevées et les meilleures pratiques. Il donne la priorité à la sécurité et aide à protéger le code contre les vulnérabilités connues et inconnues.
Le codage sécurisé place la responsabilité de la sécurité du code sur le développeur plutôt que sur une équipe de sécurité.

À mesure que la connectivité se développe dans les secteurs critiques pour la sécurité, le besoin de directives sur l'application des défenses appropriées a augmenté de manière proportionnelle.

Les normes de codage

Les normes de codage sécurisé visent à garantir que les logiciels sont développés de manière à minimiser les vulnérabilités et à se protéger contre les menaces potentielles. En fournissant des lignes directrices et des meilleures pratiques, ces normes aident à prévenir les défauts de codage courants, à améliorer la qualité générale du code et à garantir la conformité avec les exigences réglementaires. Elles jouent un rôle crucial dans la protection de l'intégrité et de la confidentialité des données en promouvant des pratiques sécurisées tout au long du cycle de développement du logiciel.

Exemples de normes de codage sécurisé :

Cybersécurité et outils LDRA pour

  • Établir les exigences dès le départ
  • Fournir une traçabilité bidirectionnelle
  • Utiliser un sous-ensemble de langage sécurisé
  • Adhérer à une norme de processus axée sur la sécurité
  • Automatiser les processus de test SAST (statique) et DAST (dynamique)
  • Utiliser l'analyse de propagation (taint analysis) pour tester les mécanismes de défense
  • Tester tôt et souvent

0

Ces articles peuvent vous intéresser

image blog article

Cybersécurité des Dispositifs Médicaux

Comment protéger la Santé Connectée ?

image blog article

Améliorer la cybersécurité des logiciels automobiles

Atteindre la conformité ISO21434/ISO26262 avec Siemens Polarion pour l'automobile et la Tools Suite LDRA

image blog article

Exigences horizontales de cybersécurité pour les produits numériques UE

Proposition de règlement Européen relatif à la cybersécurité des produits circulant dans le marché intérieur (EU)

Vous cherchez
des solutions ?

Retrouvez des réponses à vos besoins les plus fréquents

En savoir plus