Icônes SCW
héros bg sans séparateur
Blog

En cas de défaillance des micro-ondes de haute qualité : pourquoi la sécurité des systèmes embarqués représente un défi majeur pour les développeurs

Dr Matthias Madu
Publié le 30 août 2021
Dernière mise à jour le 10 mars 2026

La culture populaire regorge de références à des IA malveillantes, des robots et des appareils électroménagers qui s'en prennent à leurs propriétaires humains. Bien que ces récits soient imprégnés de l'attrait de la science-fiction et de la fantaisie,à mesure que l'Internet des objets et les appareils connectés se généralisent dans les foyers, les discussions sur la cybersécurité et la sûreté devraient également se généraliser. Les logiciels sont omniprésents dans notre quotidien, et nous avons tendance à oublier à quel point nous dépendons des lignes de code pour réaliser toutes sortes d'opérations sophistiquées qui apportent innovation et commodité. Tout comme les logiciels basés sur le Web, les API et les appareils mobiles, les codes vulnérables dans les systèmes embarqués peuvent être exploités par des attaquants s'ils sont découverts.

Bien que la probabilité que des micro-ondes soient utilisées pour asservir l'humanité soit faible (cependant, les robots Tesla sont quelque peu préoccupants), il existe toujours un risque que des cyberattaques entraînent des événements malveillants. Certains de nos véhicules, avions et appareils médicaux dépendent de codes embarqués complexes pour exécuter des tâches critiques. La compromission de ces objets est non seulement préoccupante, mais peut également mettre des vies en danger.

Comme pour les autres types de logiciels disponibles sur le marché, les développeurs commencent par travailler sur le code dès les premières étapes de la création. Et comme pour tous les autres types de logiciels, ce code peut également devenir un terrain fertile pour des vulnérabilités insidieuses et courantes qui risquent de ne pas être détectées avant la sortie du produit.

Les développeurs ne sont pas des experts en sécurité, et aucune entreprise ne devrait attendre d'eux qu'ils assument ce rôle. Cependant, les développeurs peuvent acquérir des outils beaucoup plus puissants pour lutter contre les types de menaces qui les concernent. À mesure que les besoins technologiques évoluent, les systèmes embarqués (généralement écrits en C ou C++) sont de plus en plus utilisés, et il est essentiel que les développeurs reçoivent une formation spécialisée en sécurité sur les outils de cet environnement.

Une friteuse à air chaud qui explose, un véhicule suspect... Est-ce un canard assis à l'intérieur ?

Cependant, pour garantir notre sécurité, il est nécessaire de réaliser des progrès plus précis et significatifs dans tous les domaines de la sécurité logicielle, au-delà des normes et réglementations existantes en matière de développement sécurisé. Il peut sembler improbable d'envisager un scénario où quelqu'un piraterait un appareil de cuisson à air chaud, mais cela s'est produit. De même, une vulnérabilité permettant à un attaquant d'exécuter du code à distance (et ainsi d'augmenter la température à un niveau dangereux) peut conduire au piratage d'un véhicule.

Les véhicules sont particulièrement complexes, équipés de plusieurs systèmes embarqués qui gèrent chacun toutes sortes de fonctions minutieuses, des essuie-glaces automatiques au moteur en passant par les freins. Les véhicules connectés, qui s'intègrent à une pile de technologies de communication en constante augmentation (Wi-Fi, Bluetooth, GPS, etc.), constituent une infrastructure numérique complexe exposée à de multiples vecteurs d'attaque. d'ici 2023, 76,3 millions de véhicules connectés devraient circuler sur les routes du monde entier, ce qui représente un défi de taille pour la mise en place d'une base défensive permettant d'assurer une véritable sécurité.

MISRA est une organisation majeure qui élabore des directives visant à promouvoir la sécurité, la sûreté, la portabilité et la fiabilité du code dans les systèmes embarqués, et qui lutte activement contre les menaces pesant sur ces systèmes. Ces directives constituent la référence absolue que toutes les entreprises devraient viser dans leurs projets de systèmes embarqués.

Cependant, pour créer et exécuter du code conforme à cette norme d'excellence, il est indispensable de disposer d'ingénieurs en systèmes embarqués qui soient non seulement sensibilisés à la sécurité, mais également confiants dans les outils utilisés.

Pourquoi l'amélioration des compétences en matière de sécurité des systèmes embarqués est-elle si importante ?

Les langages de programmation C et C++ sont considérés comme des langages traditionnels selon les normes actuelles, mais ils restent largement utilisés. Le C/C++ embarqué constitue le cœur des fonctionnalités du code des systèmes embarqués et continue de jouer un rôle important dans le monde des appareils connectés.

Ces langages ont des origines assez anciennes et présentent des comportements de vulnérabilité similaires en ce qui concerne les problèmes courants tels que les failles d'injection et les dépassements de tampon. Cependant, pour que les développeurs puissent réellement réduire les bogues de sécurité des systèmes embarqués, ils doivent utiliser du code qui imite leur environnement de travail.La formation générale au langage C dans le cadre des pratiques de sécurité courantes n'est pas aussi efficace et mémorable que lorsqu'elle implique de consacrer du temps et des efforts supplémentaires au travail dans un contexte C embarqué.

Les véhicules modernes intègrent des dizaines, voire plus d'une centaine de systèmes embarqués. Il est donc essentiel que les développeurs reçoivent une formation précise sur ce qu'ils doivent rechercher dans l'IDE et sur la manière de procéder aux corrections nécessaires.

Quels sont les défauts de la logique métier du C/C++ embarqué ? Voyons si nous pouvons identifier et corriger les problèmes comme des professionnels.

Il est de la responsabilité de chacun de protéger le système intégré dès le premier étage.

Dans de nombreuses organisations, la priorité est donnée à la rapidité de développement plutôt qu'à la sécurité, du moins en ce qui concerne les responsabilités des développeurs. La capacité à créer un code sécurisé est rarement valorisée, tandis que le développement rapide de fonctionnalités exceptionnelles est considéré comme la norme. La demande en logiciels ne cesse d'augmenter, mais cette culture nous rend vulnérables aux cyberattaques.

Même si les développeurs n'ont pas reçu de formation, cela ne relève pas de leur responsabilité. Il est nécessaire qu'un membre de l'équipe AppSec contribue à combler cette lacune en recommandant à l'ensemble de la communauté des développeurs un programme de perfectionnement des compétences approprié, accessible (et bien sûr évaluable). Au début d'un projet de développement logiciel, la sécurité doit être une priorité absolue, et tous les acteurs, en particulier les développeurs, doivent disposer des outils nécessaires pour remplir leur rôle.

Expérimenter concrètement les problèmes de sécurité des systèmes embarqués

Les débordements de tampon, les failles d'injection et les bogues de logique métier constituent des pièges courants dans le développement de systèmes embarqués. Une fois enfouis dans les méandres d'un microcontrôleur installé dans un véhicule ou un appareil, ils peuvent entraîner des conséquences désastreuses en matière de sécurité.

Les débordements de tampon sont particulièrement fréquents. Si vous souhaitez en savoir plus sur la manière dont l'Airflyer décrit précédemment a été compromis (permettant l'exécution de code à distance), veuillez consulter le rapport CVE-2020-28592.

Nous vous invitons à découvrir concrètement la vulnérabilité de débordement de tampon dans le code C/C++ embarqué. Nous vous encourageons à relever ce défi afin d'identifier, de localiser et de corriger les modèles de codage inadéquats à l'origine de ce bug complexe.

Veuillez créer l'historique des dépassements de mémoire tampon.



. Comment était-ce ? Visitez www.securecodewarrior.com. Nous proposons des formations précises et efficaces sur la sécurité des systèmes embarqués.

Afficher les ressources
Afficher les ressources

Tout comme les logiciels Web, les API et les appareils mobiles, les codes vulnérables dans les systèmes embarqués peuvent être exploités par des attaquants s'ils sont effectivement découverts.

Souhaitez-vous en savoir davantage ?

Le Dr Matias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu un doctorat en sécurité des applications, axé sur les solutions d'analyse statique, à l'université de Gand.Il a ensuite rejoint Fortify aux États-Unis, où il a réalisé qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. Cela l'a amené à développer des produits qui aident les développeurs, allègent la charge de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de Team Awesome, il apprécie de faire des présentations sur scène lors de conférences telles que RSA, BlackHat et DefCon.

En savoir plus

Secure Code Warrior vous assiste dans la protection de votre code tout au long du cycle de vie du développement logiciel et dans la création d'une culture qui accorde la priorité à la cybersécurité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité des systèmes d'information ou professionnel de la sécurité, nous vous aidons à réduire les risques liés au code non sécurisé.

Veuillez réserver une démonstration.
Partager :
marques LinkedInSocialLogo x
Auteur
Dr Matthias Madu
Publié le 30 août 2021

Le Dr Matias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu un doctorat en sécurité des applications, axé sur les solutions d'analyse statique, à l'université de Gand.Il a ensuite rejoint Fortify aux États-Unis, où il a réalisé qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. Cela l'a amené à développer des produits qui aident les développeurs, allègent la charge de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de Team Awesome, il apprécie de faire des présentations sur scène lors de conférences telles que RSA, BlackHat et DefCon.

Matias est un chercheur et développeur qui possède plus de 15 ans d'expérience pratique dans le domaine de la sécurité logicielle. Il a développé des solutions pour des entreprises telles que Fortify Software et sa propre société, Sensei Security. Tout au long de sa carrière, Matias a dirigé plusieurs projets de recherche sur la sécurité des applications, qui ont abouti à la création de produits commerciaux et à l'obtention de plus de 10 brevets.Lorsqu'il n'est pas à son bureau, Matias enseigne dans le cadre de formations avancées sur la sécurité des applications et intervient régulièrement lors de conférences internationales telles que RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec et BruCon.

Matthias a obtenu un doctorat en génie informatique à l'université de Gand, où il a étudié la sécurité des applications grâce à l'obfuscation des programmes visant à masquer le fonctionnement interne des applications.

Partager :
marques LinkedInSocialLogo x

La culture populaire regorge de références à des IA malveillantes, des robots et des appareils électroménagers qui s'en prennent à leurs propriétaires humains. Bien que ces récits soient imprégnés de l'attrait de la science-fiction et de la fantaisie,à mesure que l'Internet des objets et les appareils connectés se généralisent dans les foyers, les discussions sur la cybersécurité et la sûreté devraient également se généraliser. Les logiciels sont omniprésents dans notre quotidien, et nous avons tendance à oublier à quel point nous dépendons des lignes de code pour réaliser toutes sortes d'opérations sophistiquées qui apportent innovation et commodité. Tout comme les logiciels basés sur le Web, les API et les appareils mobiles, les codes vulnérables dans les systèmes embarqués peuvent être exploités par des attaquants s'ils sont découverts.

Bien que la probabilité que des micro-ondes soient utilisées pour asservir l'humanité soit faible (cependant, les robots Tesla sont quelque peu préoccupants), il existe toujours un risque que des cyberattaques entraînent des événements malveillants. Certains de nos véhicules, avions et appareils médicaux dépendent de codes embarqués complexes pour exécuter des tâches critiques. La compromission de ces objets est non seulement préoccupante, mais peut également mettre des vies en danger.

Comme pour les autres types de logiciels disponibles sur le marché, les développeurs commencent par travailler sur le code dès les premières étapes de la création. Et comme pour tous les autres types de logiciels, ce code peut également devenir un terrain fertile pour des vulnérabilités insidieuses et courantes qui risquent de ne pas être détectées avant la sortie du produit.

Les développeurs ne sont pas des experts en sécurité, et aucune entreprise ne devrait attendre d'eux qu'ils assument ce rôle. Cependant, les développeurs peuvent acquérir des outils beaucoup plus puissants pour lutter contre les types de menaces qui les concernent. À mesure que les besoins technologiques évoluent, les systèmes embarqués (généralement écrits en C ou C++) sont de plus en plus utilisés, et il est essentiel que les développeurs reçoivent une formation spécialisée en sécurité sur les outils de cet environnement.

Une friteuse à air chaud qui explose, un véhicule suspect... Est-ce un canard assis à l'intérieur ?

Cependant, pour garantir notre sécurité, il est nécessaire de réaliser des progrès plus précis et significatifs dans tous les domaines de la sécurité logicielle, au-delà des normes et réglementations existantes en matière de développement sécurisé. Il peut sembler improbable d'envisager un scénario où quelqu'un piraterait un appareil de cuisson à air chaud, mais cela s'est produit. De même, une vulnérabilité permettant à un attaquant d'exécuter du code à distance (et ainsi d'augmenter la température à un niveau dangereux) peut conduire au piratage d'un véhicule.

Les véhicules sont particulièrement complexes, équipés de plusieurs systèmes embarqués qui gèrent chacun toutes sortes de fonctions minutieuses, des essuie-glaces automatiques au moteur en passant par les freins. Les véhicules connectés, qui s'intègrent à une pile de technologies de communication en constante augmentation (Wi-Fi, Bluetooth, GPS, etc.), constituent une infrastructure numérique complexe exposée à de multiples vecteurs d'attaque. d'ici 2023, 76,3 millions de véhicules connectés devraient circuler sur les routes du monde entier, ce qui représente un défi de taille pour la mise en place d'une base défensive permettant d'assurer une véritable sécurité.

MISRA est une organisation majeure qui élabore des directives visant à promouvoir la sécurité, la sûreté, la portabilité et la fiabilité du code dans les systèmes embarqués, et qui lutte activement contre les menaces pesant sur ces systèmes. Ces directives constituent la référence absolue que toutes les entreprises devraient viser dans leurs projets de systèmes embarqués.

Cependant, pour créer et exécuter du code conforme à cette norme d'excellence, il est indispensable de disposer d'ingénieurs en systèmes embarqués qui soient non seulement sensibilisés à la sécurité, mais également confiants dans les outils utilisés.

Pourquoi l'amélioration des compétences en matière de sécurité des systèmes embarqués est-elle si importante ?

Les langages de programmation C et C++ sont considérés comme des langages traditionnels selon les normes actuelles, mais ils restent largement utilisés. Le C/C++ embarqué constitue le cœur des fonctionnalités du code des systèmes embarqués et continue de jouer un rôle important dans le monde des appareils connectés.

Ces langages ont des origines assez anciennes et présentent des comportements de vulnérabilité similaires en ce qui concerne les problèmes courants tels que les failles d'injection et les dépassements de tampon. Cependant, pour que les développeurs puissent réellement réduire les bogues de sécurité des systèmes embarqués, ils doivent utiliser du code qui imite leur environnement de travail.La formation générale au langage C dans le cadre des pratiques de sécurité courantes n'est pas aussi efficace et mémorable que lorsqu'elle implique de consacrer du temps et des efforts supplémentaires au travail dans un contexte C embarqué.

Les véhicules modernes intègrent des dizaines, voire plus d'une centaine de systèmes embarqués. Il est donc essentiel que les développeurs reçoivent une formation précise sur ce qu'ils doivent rechercher dans l'IDE et sur la manière de procéder aux corrections nécessaires.

Quels sont les défauts de la logique métier du C/C++ embarqué ? Voyons si nous pouvons identifier et corriger les problèmes comme des professionnels.

Il est de la responsabilité de chacun de protéger le système intégré dès le premier étage.

Dans de nombreuses organisations, la priorité est donnée à la rapidité de développement plutôt qu'à la sécurité, du moins en ce qui concerne les responsabilités des développeurs. La capacité à créer un code sécurisé est rarement valorisée, tandis que le développement rapide de fonctionnalités exceptionnelles est considéré comme la norme. La demande en logiciels ne cesse d'augmenter, mais cette culture nous rend vulnérables aux cyberattaques.

Même si les développeurs n'ont pas reçu de formation, cela ne relève pas de leur responsabilité. Il est nécessaire qu'un membre de l'équipe AppSec contribue à combler cette lacune en recommandant à l'ensemble de la communauté des développeurs un programme de perfectionnement des compétences approprié, accessible (et bien sûr évaluable). Au début d'un projet de développement logiciel, la sécurité doit être une priorité absolue, et tous les acteurs, en particulier les développeurs, doivent disposer des outils nécessaires pour remplir leur rôle.

Expérimenter concrètement les problèmes de sécurité des systèmes embarqués

Les débordements de tampon, les failles d'injection et les bogues de logique métier constituent des pièges courants dans le développement de systèmes embarqués. Une fois enfouis dans les méandres d'un microcontrôleur installé dans un véhicule ou un appareil, ils peuvent entraîner des conséquences désastreuses en matière de sécurité.

Les débordements de tampon sont particulièrement fréquents. Si vous souhaitez en savoir plus sur la manière dont l'Airflyer décrit précédemment a été compromis (permettant l'exécution de code à distance), veuillez consulter le rapport CVE-2020-28592.

Nous vous invitons à découvrir concrètement la vulnérabilité de débordement de tampon dans le code C/C++ embarqué. Nous vous encourageons à relever ce défi afin d'identifier, de localiser et de corriger les modèles de codage inadéquats à l'origine de ce bug complexe.

Veuillez créer l'historique des dépassements de mémoire tampon.



. Comment était-ce ? Visitez www.securecodewarrior.com. Nous proposons des formations précises et efficaces sur la sécurité des systèmes embarqués.

Afficher les ressources
Afficher les ressources

Pour télécharger le rapport, veuillez remplir le formulaire ci-dessous.

Nous vous prions de bien vouloir nous autoriser à vous envoyer des informations sur nos produits et/ou sur des sujets liés au codage sécurisé. Nous traitons vos informations personnelles avec le plus grand soin et ne les vendons jamais à des tiers à des fins marketing.

Envoi
icône de réussite scw
icône d'erreur scw
Pour envoyer le formulaire, veuillez activer le cookie « Analytics ». Une fois le paramétrage terminé, vous pouvez le désactiver à nouveau.

La culture populaire regorge de références à des IA malveillantes, des robots et des appareils électroménagers qui s'en prennent à leurs propriétaires humains. Bien que ces récits soient imprégnés de l'attrait de la science-fiction et de la fantaisie,à mesure que l'Internet des objets et les appareils connectés se généralisent dans les foyers, les discussions sur la cybersécurité et la sûreté devraient également se généraliser. Les logiciels sont omniprésents dans notre quotidien, et nous avons tendance à oublier à quel point nous dépendons des lignes de code pour réaliser toutes sortes d'opérations sophistiquées qui apportent innovation et commodité. Tout comme les logiciels basés sur le Web, les API et les appareils mobiles, les codes vulnérables dans les systèmes embarqués peuvent être exploités par des attaquants s'ils sont découverts.

Bien que la probabilité que des micro-ondes soient utilisées pour asservir l'humanité soit faible (cependant, les robots Tesla sont quelque peu préoccupants), il existe toujours un risque que des cyberattaques entraînent des événements malveillants. Certains de nos véhicules, avions et appareils médicaux dépendent de codes embarqués complexes pour exécuter des tâches critiques. La compromission de ces objets est non seulement préoccupante, mais peut également mettre des vies en danger.

Comme pour les autres types de logiciels disponibles sur le marché, les développeurs commencent par travailler sur le code dès les premières étapes de la création. Et comme pour tous les autres types de logiciels, ce code peut également devenir un terrain fertile pour des vulnérabilités insidieuses et courantes qui risquent de ne pas être détectées avant la sortie du produit.

Les développeurs ne sont pas des experts en sécurité, et aucune entreprise ne devrait attendre d'eux qu'ils assument ce rôle. Cependant, les développeurs peuvent acquérir des outils beaucoup plus puissants pour lutter contre les types de menaces qui les concernent. À mesure que les besoins technologiques évoluent, les systèmes embarqués (généralement écrits en C ou C++) sont de plus en plus utilisés, et il est essentiel que les développeurs reçoivent une formation spécialisée en sécurité sur les outils de cet environnement.

Une friteuse à air chaud qui explose, un véhicule suspect... Est-ce un canard assis à l'intérieur ?

Cependant, pour garantir notre sécurité, il est nécessaire de réaliser des progrès plus précis et significatifs dans tous les domaines de la sécurité logicielle, au-delà des normes et réglementations existantes en matière de développement sécurisé. Il peut sembler improbable d'envisager un scénario où quelqu'un piraterait un appareil de cuisson à air chaud, mais cela s'est produit. De même, une vulnérabilité permettant à un attaquant d'exécuter du code à distance (et ainsi d'augmenter la température à un niveau dangereux) peut conduire au piratage d'un véhicule.

Les véhicules sont particulièrement complexes, équipés de plusieurs systèmes embarqués qui gèrent chacun toutes sortes de fonctions minutieuses, des essuie-glaces automatiques au moteur en passant par les freins. Les véhicules connectés, qui s'intègrent à une pile de technologies de communication en constante augmentation (Wi-Fi, Bluetooth, GPS, etc.), constituent une infrastructure numérique complexe exposée à de multiples vecteurs d'attaque. d'ici 2023, 76,3 millions de véhicules connectés devraient circuler sur les routes du monde entier, ce qui représente un défi de taille pour la mise en place d'une base défensive permettant d'assurer une véritable sécurité.

MISRA est une organisation majeure qui élabore des directives visant à promouvoir la sécurité, la sûreté, la portabilité et la fiabilité du code dans les systèmes embarqués, et qui lutte activement contre les menaces pesant sur ces systèmes. Ces directives constituent la référence absolue que toutes les entreprises devraient viser dans leurs projets de systèmes embarqués.

Cependant, pour créer et exécuter du code conforme à cette norme d'excellence, il est indispensable de disposer d'ingénieurs en systèmes embarqués qui soient non seulement sensibilisés à la sécurité, mais également confiants dans les outils utilisés.

Pourquoi l'amélioration des compétences en matière de sécurité des systèmes embarqués est-elle si importante ?

Les langages de programmation C et C++ sont considérés comme des langages traditionnels selon les normes actuelles, mais ils restent largement utilisés. Le C/C++ embarqué constitue le cœur des fonctionnalités du code des systèmes embarqués et continue de jouer un rôle important dans le monde des appareils connectés.

Ces langages ont des origines assez anciennes et présentent des comportements de vulnérabilité similaires en ce qui concerne les problèmes courants tels que les failles d'injection et les dépassements de tampon. Cependant, pour que les développeurs puissent réellement réduire les bogues de sécurité des systèmes embarqués, ils doivent utiliser du code qui imite leur environnement de travail.La formation générale au langage C dans le cadre des pratiques de sécurité courantes n'est pas aussi efficace et mémorable que lorsqu'elle implique de consacrer du temps et des efforts supplémentaires au travail dans un contexte C embarqué.

Les véhicules modernes intègrent des dizaines, voire plus d'une centaine de systèmes embarqués. Il est donc essentiel que les développeurs reçoivent une formation précise sur ce qu'ils doivent rechercher dans l'IDE et sur la manière de procéder aux corrections nécessaires.

Quels sont les défauts de la logique métier du C/C++ embarqué ? Voyons si nous pouvons identifier et corriger les problèmes comme des professionnels.

Il est de la responsabilité de chacun de protéger le système intégré dès le premier étage.

Dans de nombreuses organisations, la priorité est donnée à la rapidité de développement plutôt qu'à la sécurité, du moins en ce qui concerne les responsabilités des développeurs. La capacité à créer un code sécurisé est rarement valorisée, tandis que le développement rapide de fonctionnalités exceptionnelles est considéré comme la norme. La demande en logiciels ne cesse d'augmenter, mais cette culture nous rend vulnérables aux cyberattaques.

Même si les développeurs n'ont pas reçu de formation, cela ne relève pas de leur responsabilité. Il est nécessaire qu'un membre de l'équipe AppSec contribue à combler cette lacune en recommandant à l'ensemble de la communauté des développeurs un programme de perfectionnement des compétences approprié, accessible (et bien sûr évaluable). Au début d'un projet de développement logiciel, la sécurité doit être une priorité absolue, et tous les acteurs, en particulier les développeurs, doivent disposer des outils nécessaires pour remplir leur rôle.

Expérimenter concrètement les problèmes de sécurité des systèmes embarqués

Les débordements de tampon, les failles d'injection et les bogues de logique métier constituent des pièges courants dans le développement de systèmes embarqués. Une fois enfouis dans les méandres d'un microcontrôleur installé dans un véhicule ou un appareil, ils peuvent entraîner des conséquences désastreuses en matière de sécurité.

Les débordements de tampon sont particulièrement fréquents. Si vous souhaitez en savoir plus sur la manière dont l'Airflyer décrit précédemment a été compromis (permettant l'exécution de code à distance), veuillez consulter le rapport CVE-2020-28592.

Nous vous invitons à découvrir concrètement la vulnérabilité de débordement de tampon dans le code C/C++ embarqué. Nous vous encourageons à relever ce défi afin d'identifier, de localiser et de corriger les modèles de codage inadéquats à l'origine de ce bug complexe.

Veuillez créer l'historique des dépassements de mémoire tampon.



. Comment était-ce ? Visitez www.securecodewarrior.com. Nous proposons des formations précises et efficaces sur la sécurité des systèmes embarqués.

Veuillez consulter le séminaire en ligne.
Commençons
En savoir plus

Veuillez cliquer sur le lien ci-dessous pour télécharger le PDF de cette ressource.

Secure Code Warrior vous assiste dans la protection de votre code tout au long du cycle de vie du développement logiciel et dans la création d'une culture qui accorde la priorité à la cybersécurité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité des systèmes d'information ou professionnel de la sécurité, nous vous aidons à réduire les risques liés au code non sécurisé.

Afficher le rapportVeuillez réserver une démonstration.
Télécharger le PDF
Afficher les ressources
Partager :
marques LinkedInSocialLogo x
Souhaitez-vous en savoir davantage ?

Partager :
marques LinkedInSocialLogo x
Auteur
Dr Matthias Madu
Publié le 30 août 2021

Le Dr Matias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu un doctorat en sécurité des applications, axé sur les solutions d'analyse statique, à l'université de Gand.Il a ensuite rejoint Fortify aux États-Unis, où il a réalisé qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. Cela l'a amené à développer des produits qui aident les développeurs, allègent la charge de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de Team Awesome, il apprécie de faire des présentations sur scène lors de conférences telles que RSA, BlackHat et DefCon.

Matias est un chercheur et développeur qui possède plus de 15 ans d'expérience pratique dans le domaine de la sécurité logicielle. Il a développé des solutions pour des entreprises telles que Fortify Software et sa propre société, Sensei Security. Tout au long de sa carrière, Matias a dirigé plusieurs projets de recherche sur la sécurité des applications, qui ont abouti à la création de produits commerciaux et à l'obtention de plus de 10 brevets.Lorsqu'il n'est pas à son bureau, Matias enseigne dans le cadre de formations avancées sur la sécurité des applications et intervient régulièrement lors de conférences internationales telles que RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec et BruCon.

Matthias a obtenu un doctorat en génie informatique à l'université de Gand, où il a étudié la sécurité des applications grâce à l'obfuscation des programmes visant à masquer le fonctionnement interne des applications.

Partager :
marques LinkedInSocialLogo x

La culture populaire regorge de références à des IA malveillantes, des robots et des appareils électroménagers qui s'en prennent à leurs propriétaires humains. Bien que ces récits soient imprégnés de l'attrait de la science-fiction et de la fantaisie,à mesure que l'Internet des objets et les appareils connectés se généralisent dans les foyers, les discussions sur la cybersécurité et la sûreté devraient également se généraliser. Les logiciels sont omniprésents dans notre quotidien, et nous avons tendance à oublier à quel point nous dépendons des lignes de code pour réaliser toutes sortes d'opérations sophistiquées qui apportent innovation et commodité. Tout comme les logiciels basés sur le Web, les API et les appareils mobiles, les codes vulnérables dans les systèmes embarqués peuvent être exploités par des attaquants s'ils sont découverts.

Bien que la probabilité que des micro-ondes soient utilisées pour asservir l'humanité soit faible (cependant, les robots Tesla sont quelque peu préoccupants), il existe toujours un risque que des cyberattaques entraînent des événements malveillants. Certains de nos véhicules, avions et appareils médicaux dépendent de codes embarqués complexes pour exécuter des tâches critiques. La compromission de ces objets est non seulement préoccupante, mais peut également mettre des vies en danger.

Comme pour les autres types de logiciels disponibles sur le marché, les développeurs commencent par travailler sur le code dès les premières étapes de la création. Et comme pour tous les autres types de logiciels, ce code peut également devenir un terrain fertile pour des vulnérabilités insidieuses et courantes qui risquent de ne pas être détectées avant la sortie du produit.

Les développeurs ne sont pas des experts en sécurité, et aucune entreprise ne devrait attendre d'eux qu'ils assument ce rôle. Cependant, les développeurs peuvent acquérir des outils beaucoup plus puissants pour lutter contre les types de menaces qui les concernent. À mesure que les besoins technologiques évoluent, les systèmes embarqués (généralement écrits en C ou C++) sont de plus en plus utilisés, et il est essentiel que les développeurs reçoivent une formation spécialisée en sécurité sur les outils de cet environnement.

Une friteuse à air chaud qui explose, un véhicule suspect... Est-ce un canard assis à l'intérieur ?

Cependant, pour garantir notre sécurité, il est nécessaire de réaliser des progrès plus précis et significatifs dans tous les domaines de la sécurité logicielle, au-delà des normes et réglementations existantes en matière de développement sécurisé. Il peut sembler improbable d'envisager un scénario où quelqu'un piraterait un appareil de cuisson à air chaud, mais cela s'est produit. De même, une vulnérabilité permettant à un attaquant d'exécuter du code à distance (et ainsi d'augmenter la température à un niveau dangereux) peut conduire au piratage d'un véhicule.

Les véhicules sont particulièrement complexes, équipés de plusieurs systèmes embarqués qui gèrent chacun toutes sortes de fonctions minutieuses, des essuie-glaces automatiques au moteur en passant par les freins. Les véhicules connectés, qui s'intègrent à une pile de technologies de communication en constante augmentation (Wi-Fi, Bluetooth, GPS, etc.), constituent une infrastructure numérique complexe exposée à de multiples vecteurs d'attaque. d'ici 2023, 76,3 millions de véhicules connectés devraient circuler sur les routes du monde entier, ce qui représente un défi de taille pour la mise en place d'une base défensive permettant d'assurer une véritable sécurité.

MISRA est une organisation majeure qui élabore des directives visant à promouvoir la sécurité, la sûreté, la portabilité et la fiabilité du code dans les systèmes embarqués, et qui lutte activement contre les menaces pesant sur ces systèmes. Ces directives constituent la référence absolue que toutes les entreprises devraient viser dans leurs projets de systèmes embarqués.

Cependant, pour créer et exécuter du code conforme à cette norme d'excellence, il est indispensable de disposer d'ingénieurs en systèmes embarqués qui soient non seulement sensibilisés à la sécurité, mais également confiants dans les outils utilisés.

Pourquoi l'amélioration des compétences en matière de sécurité des systèmes embarqués est-elle si importante ?

Les langages de programmation C et C++ sont considérés comme des langages traditionnels selon les normes actuelles, mais ils restent largement utilisés. Le C/C++ embarqué constitue le cœur des fonctionnalités du code des systèmes embarqués et continue de jouer un rôle important dans le monde des appareils connectés.

Ces langages ont des origines assez anciennes et présentent des comportements de vulnérabilité similaires en ce qui concerne les problèmes courants tels que les failles d'injection et les dépassements de tampon. Cependant, pour que les développeurs puissent réellement réduire les bogues de sécurité des systèmes embarqués, ils doivent utiliser du code qui imite leur environnement de travail.La formation générale au langage C dans le cadre des pratiques de sécurité courantes n'est pas aussi efficace et mémorable que lorsqu'elle implique de consacrer du temps et des efforts supplémentaires au travail dans un contexte C embarqué.

Les véhicules modernes intègrent des dizaines, voire plus d'une centaine de systèmes embarqués. Il est donc essentiel que les développeurs reçoivent une formation précise sur ce qu'ils doivent rechercher dans l'IDE et sur la manière de procéder aux corrections nécessaires.

Quels sont les défauts de la logique métier du C/C++ embarqué ? Voyons si nous pouvons identifier et corriger les problèmes comme des professionnels.

Il est de la responsabilité de chacun de protéger le système intégré dès le premier étage.

Dans de nombreuses organisations, la priorité est donnée à la rapidité de développement plutôt qu'à la sécurité, du moins en ce qui concerne les responsabilités des développeurs. La capacité à créer un code sécurisé est rarement valorisée, tandis que le développement rapide de fonctionnalités exceptionnelles est considéré comme la norme. La demande en logiciels ne cesse d'augmenter, mais cette culture nous rend vulnérables aux cyberattaques.

Même si les développeurs n'ont pas reçu de formation, cela ne relève pas de leur responsabilité. Il est nécessaire qu'un membre de l'équipe AppSec contribue à combler cette lacune en recommandant à l'ensemble de la communauté des développeurs un programme de perfectionnement des compétences approprié, accessible (et bien sûr évaluable). Au début d'un projet de développement logiciel, la sécurité doit être une priorité absolue, et tous les acteurs, en particulier les développeurs, doivent disposer des outils nécessaires pour remplir leur rôle.

Expérimenter concrètement les problèmes de sécurité des systèmes embarqués

Les débordements de tampon, les failles d'injection et les bogues de logique métier constituent des pièges courants dans le développement de systèmes embarqués. Une fois enfouis dans les méandres d'un microcontrôleur installé dans un véhicule ou un appareil, ils peuvent entraîner des conséquences désastreuses en matière de sécurité.

Les débordements de tampon sont particulièrement fréquents. Si vous souhaitez en savoir plus sur la manière dont l'Airflyer décrit précédemment a été compromis (permettant l'exécution de code à distance), veuillez consulter le rapport CVE-2020-28592.

Nous vous invitons à découvrir concrètement la vulnérabilité de débordement de tampon dans le code C/C++ embarqué. Nous vous encourageons à relever ce défi afin d'identifier, de localiser et de corriger les modèles de codage inadéquats à l'origine de ce bug complexe.

Veuillez créer l'historique des dépassements de mémoire tampon.



. Comment était-ce ? Visitez www.securecodewarrior.com. Nous proposons des formations précises et efficaces sur la sécurité des systèmes embarqués.

Table des matières

Télécharger le PDF
Afficher les ressources
Souhaitez-vous en savoir davantage ?

Le Dr Matias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu un doctorat en sécurité des applications, axé sur les solutions d'analyse statique, à l'université de Gand.Il a ensuite rejoint Fortify aux États-Unis, où il a réalisé qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. Cela l'a amené à développer des produits qui aident les développeurs, allègent la charge de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de Team Awesome, il apprécie de faire des présentations sur scène lors de conférences telles que RSA, BlackHat et DefCon.

En savoir plus

Secure Code Warrior vous assiste dans la protection de votre code tout au long du cycle de vie du développement logiciel et dans la création d'une culture qui accorde la priorité à la cybersécurité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité des systèmes d'information ou professionnel de la sécurité, nous vous aidons à réduire les risques liés au code non sécurisé.

Veuillez réserver une démonstration.[Télécharger]
Partager :
marques LinkedInSocialLogo x
Centre de ressources

Ressources pour débuter

Autres publications
Centre de ressources

Ressources pour débuter

Autres publications