
Quand les micro-ondes performantes deviennent problématiques : pourquoi la sécurité des systèmes embarqués représente le prochain défi majeur pour les développeurs
Dans la culture populaire, il existe de nombreuses références à des IA et des robots rebelles, ainsi qu'à des appareils qui se retournent contre leurs maîtres humains. Ces références sont fortement imprégnées de science-fiction et de fantaisie, mais à mesure que l'Internet des objets et les appareils connectés prennent de plus en plus d'importance dans nos foyers, il convient également d'aborder la question de la cybersécurité et de la sécurité. Les logiciels sont omniprésents dans notre environnement, et il est facile d'oublier à quel point nous dépendons des lignes de code pour accomplir toutes ces tâches intelligentes qui nous apportent tant d'innovation et de confort. À l'instar des logiciels basés sur le Web, des API et des appareils mobiles, les codes vulnérables des systèmes embarqués peuvent être exploités s'ils sont découverts par un attaquant.
Il est certes peu probable qu'une armée de micro-ondes asservisse l'humanité (bien que Tesla-Bot soit quelque peu préoccupant), mais des cyberattaques malveillantes restent possibles. Certaines de nos voitures, avions et appareils médicaux dépendent également de codes informatiques embarqués complexes pour exécuter des tâches importantes. La perspective que ces objets soient compromis est non seulement alarmante, mais aussi potentiellement mortelle.
Comme pour tout autre type de logiciel, les développeurs sont parmi les premiers à manipuler le code dès le début de la phase de création. Et comme pour tout autre type de logiciel, cela peut constituer un terrain propice à l'apparition de failles de sécurité insidieuses et fréquentes, qui pourraient passer inaperçues avant la mise sur le marché du produit.
Les développeurs ne sont pas des experts en sécurité, et une entreprise ne devrait pas s'attendre à ce qu'ils jouent ce rôle, mais ils peuvent être équipés d'un arsenal beaucoup plus puissant pour lutter contre les types de menaces qui les concernent. Les systèmes embarqués, généralement écrits en C et C++, seront de plus en plus utilisés à mesure que nos exigences techniques évolueront. Il est donc essentiel que les développeurs suivent des formations spécialisées en matière de sécurité concernant les outils utilisés dans cet environnement.
Friteuses à air chaud qui explosent, véhicules malveillants... Sommes-nous des proies faciles ?
Bien qu'il existe certaines normes et réglementations relatives au développement sécurisé dans son ensemble, nous devons réaliser des progrès beaucoup plus précis et significatifs en matière de sécurité logicielle afin de nous protéger. Il peut sembler exagéré d'envisager un problème pouvant être causé par le piratage d'une friteuse à air chaud, mais cela s'est produit sous la forme d'une attaque par exécution de code à distance (permettant à l'auteur de la menace d'augmenter la température à un niveau dangereux), ainsi que de failles de sécurité conduisant à la prise de contrôle de véhicules.
Les véhicules sont particulièrement complexes, car ils embarquent plusieurs systèmes embarqués, chacun étant responsable de microfonctions, des essuie-glaces automatiques aux fonctions du moteur et des freins. Le véhicule connecté est relié à un nombre croissant de technologies de communication telles que le Wi-Fi, le Bluetooth et le GPS, et constitue une infrastructure numérique complexe exposée à de nombreux vecteurs d'attaque. D'ici 2023, on estime que 76,3 millions de véhicules connectés circuleront sur les routes du monde entier, ce qui représente un ensemble de bases de défense qui garantissent une sécurité réelle.
MISRA est une organisation importante qui lutte activement contre les menaces pesant sur les systèmes embarqués et qui a élaboré des directives visant à faciliter la sécurité, la portabilité et la fiabilité des codes liés aux systèmes embarqués. Ces directives constituent un élément essentiel des normes que chaque entreprise doit s'efforcer de respecter dans le cadre de ses projets liés aux systèmes embarqués.
Cependant, pour créer et exécuter un code conforme à cette norme d'excellence, il est nécessaire de disposer d'ingénieurs en systèmes embarqués qui maîtrisent les outils, sans oublier les outils de sécurité.
Pourquoi l'amélioration de la sécurité des systèmes embarqués est-elle si spécifique ?
Les langages de programmation C et C++ sont considérés comme anciens selon les normes actuelles, mais ils sont toujours largement utilisés. Ils constituent le cœur fonctionnel de la base de code des systèmes embarqués, et le C/C++ embarqué connaît une nouvelle vie dans le monde des appareils connectés.
Bien que ces langages aient des origines assez anciennes et présentent un comportement similaire en matière de sécurité par rapport à des problèmes courants tels que les erreurs d'injection et les dépassements de tampon, les développeurs doivent acquérir une expérience pratique du code qui imite les environnements dans lesquels ils travaillent afin de corriger efficacement les failles de sécurité dans les systèmes embarqués. Une formation générique en C sur les pratiques générales de sécurité ne sera tout simplement pas aussi efficace et mémorable que si l'on consacrait davantage de temps et d'attention au travail dans un contexte C embarqué.
Avec une douzaine, voire plus d'une centaine de systèmes embarqués dans un véhicule moderne, il est essentiel que les développeurs soient formés directement dans l'IDE sur les points auxquels ils doivent prêter attention et sur la manière de résoudre les problèmes.

La protection des systèmes intégrés au rez-de-chaussée relève de la responsabilité de tous.
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 la responsabilité des développeurs. Ceux-ci sont rarement évalués sur leur capacité à créer un code sécurisé, mais le développement rapide de fonctionnalités exceptionnelles est considéré comme la norme. La demande en logiciels ne fera qu'augmenter, mais cette culture nous a préparés à un combat difficile contre les failles de sécurité et les cyberattaques qui en découlent.
Si les développeurs ne sont pas formés, ce n'est pas de leur faute, et c'est une lacune que quelqu'un de l'équipe AppSec doit combler en recommandant à l'ensemble de la communauté des développeurs des programmes de formation continue adaptés, accessibles (sans oublier évaluables). Dès le début d'un projet de développement logiciel, la sécurité doit être une priorité absolue, et chacun, en particulier les développeurs, doit savoir ce dont il a besoin pour apporter sa contribution.
Gestion pratique des problèmes de sécurité des systèmes embarqués
Les dépassements de tampon, les erreurs d'injection et les erreurs dans la logique métier sont tous des pièges courants dans le développement de systèmes embarqués. Lorsqu'ils sont profondément enfouis dans un labyrinthe de microcontrôleurs dans un seul véhicule ou appareil, cela peut constituer un problème de sécurité.
Les débordements de tampon sont particulièrement fréquents. Si vous souhaitez en savoir plus sur la manière dont ils ont contribué à compromettre la friteuse à air chaud dont nous avons parlé précédemment (permettant l'exécution de code à distance), veuillez consulter ce rapport sur CVE-2020-28592.
Il est maintenant temps de mettre en pratique une vulnérabilité de type débordement de tampon dans du code C/C++ embarqué réel. Relevez ce défi pour voir si vous pouvez localiser, identifier et corriger les mauvaises pratiques de codage qui ont conduit à cette erreur insidieuse :
.png)
Wie hast du dich geschlagen? Besuchen www.securecodewarrior.com für präzise und effektive Schulungen zur Sicherheit eingebetteter Systeme.


À l'instar des logiciels basés sur le Web, des API et des appareils mobiles, le code vulnérable des systèmes embarqués peut être exploité s'il est découvert par un attaquant dans la nature.
Matias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu son doctorat en sécurité des applications à l'université de Gand, en se concentrant sur les solutions d'analyse statique. Il a ensuite rejoint Fortify aux États-Unis, où il s'est rendu compte qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. C'est ce qui l'a incité à développer des produits qui aident les développeurs, allègent le fardeau de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de l'équipe Awesome, il aime être sur scène pour présenter des conférences, notamment RSA Conference, BlackHat et DefCon.

Secure Code Warrior là pour aider votre entreprise à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture où la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité des systèmes d'information ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre entreprise à réduire les risques liés à un code non sécurisé.
Réserver une démonstrationMatias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu son doctorat en sécurité des applications à l'université de Gand, en se concentrant sur les solutions d'analyse statique. Il a ensuite rejoint Fortify aux États-Unis, où il s'est rendu compte qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. C'est ce qui l'a incité à développer des produits qui aident les développeurs, allègent le fardeau de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de l'équipe Awesome, il aime être sur scène pour présenter des conférences, notamment RSA Conference, BlackHat et DefCon.
Matias est un chercheur et un développeur qui possède plus de 15 ans d'expérience pratique dans le domaine de la sécurité des logiciels. Il a développé des solutions pour des entreprises telles que Fortify Software et sa propre entreprise Sensei Security. Au cours de sa carrière, Matias a dirigé de nombreux projets de recherche sur la sécurité des applications qui ont débouché sur des produits commerciaux et peut se targuer d'avoir déposé plus de 10 brevets. Lorsqu'il n'est pas à son bureau, Matias a été instructeur pour des formations avancées en matière de sécurité des applications ( courses ) et intervient régulièrement lors de conférences mondiales telles que RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec et BruCon.
Matias est titulaire d'un doctorat en ingénierie informatique de l'Université de Gand, où il a étudié la sécurité des applications par le biais de l'obscurcissement des programmes afin de dissimuler le fonctionnement interne d'une application.


Dans la culture populaire, il existe de nombreuses références à des IA et des robots rebelles, ainsi qu'à des appareils qui se retournent contre leurs maîtres humains. Ces références sont fortement imprégnées de science-fiction et de fantaisie, mais à mesure que l'Internet des objets et les appareils connectés prennent de plus en plus d'importance dans nos foyers, il convient également d'aborder la question de la cybersécurité et de la sécurité. Les logiciels sont omniprésents dans notre environnement, et il est facile d'oublier à quel point nous dépendons des lignes de code pour accomplir toutes ces tâches intelligentes qui nous apportent tant d'innovation et de confort. À l'instar des logiciels basés sur le Web, des API et des appareils mobiles, les codes vulnérables des systèmes embarqués peuvent être exploités s'ils sont découverts par un attaquant.
Il est certes peu probable qu'une armée de micro-ondes asservisse l'humanité (bien que Tesla-Bot soit quelque peu préoccupant), mais des cyberattaques malveillantes restent possibles. Certaines de nos voitures, avions et appareils médicaux dépendent également de codes informatiques embarqués complexes pour exécuter des tâches importantes. La perspective que ces objets soient compromis est non seulement alarmante, mais aussi potentiellement mortelle.
Comme pour tout autre type de logiciel, les développeurs sont parmi les premiers à manipuler le code dès le début de la phase de création. Et comme pour tout autre type de logiciel, cela peut constituer un terrain propice à l'apparition de failles de sécurité insidieuses et fréquentes, qui pourraient passer inaperçues avant la mise sur le marché du produit.
Les développeurs ne sont pas des experts en sécurité, et une entreprise ne devrait pas s'attendre à ce qu'ils jouent ce rôle, mais ils peuvent être équipés d'un arsenal beaucoup plus puissant pour lutter contre les types de menaces qui les concernent. Les systèmes embarqués, généralement écrits en C et C++, seront de plus en plus utilisés à mesure que nos exigences techniques évolueront. Il est donc essentiel que les développeurs suivent des formations spécialisées en matière de sécurité concernant les outils utilisés dans cet environnement.
Friteuses à air chaud qui explosent, véhicules malveillants... Sommes-nous des proies faciles ?
Bien qu'il existe certaines normes et réglementations relatives au développement sécurisé dans son ensemble, nous devons réaliser des progrès beaucoup plus précis et significatifs en matière de sécurité logicielle afin de nous protéger. Il peut sembler exagéré d'envisager un problème pouvant être causé par le piratage d'une friteuse à air chaud, mais cela s'est produit sous la forme d'une attaque par exécution de code à distance (permettant à l'auteur de la menace d'augmenter la température à un niveau dangereux), ainsi que de failles de sécurité conduisant à la prise de contrôle de véhicules.
Les véhicules sont particulièrement complexes, car ils embarquent plusieurs systèmes embarqués, chacun étant responsable de microfonctions, des essuie-glaces automatiques aux fonctions du moteur et des freins. Le véhicule connecté est relié à un nombre croissant de technologies de communication telles que le Wi-Fi, le Bluetooth et le GPS, et constitue une infrastructure numérique complexe exposée à de nombreux vecteurs d'attaque. D'ici 2023, on estime que 76,3 millions de véhicules connectés circuleront sur les routes du monde entier, ce qui représente un ensemble de bases de défense qui garantissent une sécurité réelle.
MISRA est une organisation importante qui lutte activement contre les menaces pesant sur les systèmes embarqués et qui a élaboré des directives visant à faciliter la sécurité, la portabilité et la fiabilité des codes liés aux systèmes embarqués. Ces directives constituent un élément essentiel des normes que chaque entreprise doit s'efforcer de respecter dans le cadre de ses projets liés aux systèmes embarqués.
Cependant, pour créer et exécuter un code conforme à cette norme d'excellence, il est nécessaire de disposer d'ingénieurs en systèmes embarqués qui maîtrisent les outils, sans oublier les outils de sécurité.
Pourquoi l'amélioration de la sécurité des systèmes embarqués est-elle si spécifique ?
Les langages de programmation C et C++ sont considérés comme anciens selon les normes actuelles, mais ils sont toujours largement utilisés. Ils constituent le cœur fonctionnel de la base de code des systèmes embarqués, et le C/C++ embarqué connaît une nouvelle vie dans le monde des appareils connectés.
Bien que ces langages aient des origines assez anciennes et présentent un comportement similaire en matière de sécurité par rapport à des problèmes courants tels que les erreurs d'injection et les dépassements de tampon, les développeurs doivent acquérir une expérience pratique du code qui imite les environnements dans lesquels ils travaillent afin de corriger efficacement les failles de sécurité dans les systèmes embarqués. Une formation générique en C sur les pratiques générales de sécurité ne sera tout simplement pas aussi efficace et mémorable que si l'on consacrait davantage de temps et d'attention au travail dans un contexte C embarqué.
Avec une douzaine, voire plus d'une centaine de systèmes embarqués dans un véhicule moderne, il est essentiel que les développeurs soient formés directement dans l'IDE sur les points auxquels ils doivent prêter attention et sur la manière de résoudre les problèmes.

La protection des systèmes intégrés au rez-de-chaussée relève de la responsabilité de tous.
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 la responsabilité des développeurs. Ceux-ci sont rarement évalués sur leur capacité à créer un code sécurisé, mais le développement rapide de fonctionnalités exceptionnelles est considéré comme la norme. La demande en logiciels ne fera qu'augmenter, mais cette culture nous a préparés à un combat difficile contre les failles de sécurité et les cyberattaques qui en découlent.
Si les développeurs ne sont pas formés, ce n'est pas de leur faute, et c'est une lacune que quelqu'un de l'équipe AppSec doit combler en recommandant à l'ensemble de la communauté des développeurs des programmes de formation continue adaptés, accessibles (sans oublier évaluables). Dès le début d'un projet de développement logiciel, la sécurité doit être une priorité absolue, et chacun, en particulier les développeurs, doit savoir ce dont il a besoin pour apporter sa contribution.
Gestion pratique des problèmes de sécurité des systèmes embarqués
Les dépassements de tampon, les erreurs d'injection et les erreurs dans la logique métier sont tous des pièges courants dans le développement de systèmes embarqués. Lorsqu'ils sont profondément enfouis dans un labyrinthe de microcontrôleurs dans un seul véhicule ou appareil, cela peut constituer un problème de sécurité.
Les débordements de tampon sont particulièrement fréquents. Si vous souhaitez en savoir plus sur la manière dont ils ont contribué à compromettre la friteuse à air chaud dont nous avons parlé précédemment (permettant l'exécution de code à distance), veuillez consulter ce rapport sur CVE-2020-28592.
Il est maintenant temps de mettre en pratique une vulnérabilité de type débordement de tampon dans du code C/C++ embarqué réel. Relevez ce défi pour voir si vous pouvez localiser, identifier et corriger les mauvaises pratiques de codage qui ont conduit à cette erreur insidieuse :
.png)
Wie hast du dich geschlagen? Besuchen www.securecodewarrior.com für präzise und effektive Schulungen zur Sicherheit eingebetteter Systeme.

Dans la culture populaire, il existe de nombreuses références à des IA et des robots rebelles, ainsi qu'à des appareils qui se retournent contre leurs maîtres humains. Ces références sont fortement imprégnées de science-fiction et de fantaisie, mais à mesure que l'Internet des objets et les appareils connectés prennent de plus en plus d'importance dans nos foyers, il convient également d'aborder la question de la cybersécurité et de la sécurité. Les logiciels sont omniprésents dans notre environnement, et il est facile d'oublier à quel point nous dépendons des lignes de code pour accomplir toutes ces tâches intelligentes qui nous apportent tant d'innovation et de confort. À l'instar des logiciels basés sur le Web, des API et des appareils mobiles, les codes vulnérables des systèmes embarqués peuvent être exploités s'ils sont découverts par un attaquant.
Il est certes peu probable qu'une armée de micro-ondes asservisse l'humanité (bien que Tesla-Bot soit quelque peu préoccupant), mais des cyberattaques malveillantes restent possibles. Certaines de nos voitures, avions et appareils médicaux dépendent également de codes informatiques embarqués complexes pour exécuter des tâches importantes. La perspective que ces objets soient compromis est non seulement alarmante, mais aussi potentiellement mortelle.
Comme pour tout autre type de logiciel, les développeurs sont parmi les premiers à manipuler le code dès le début de la phase de création. Et comme pour tout autre type de logiciel, cela peut constituer un terrain propice à l'apparition de failles de sécurité insidieuses et fréquentes, qui pourraient passer inaperçues avant la mise sur le marché du produit.
Les développeurs ne sont pas des experts en sécurité, et une entreprise ne devrait pas s'attendre à ce qu'ils jouent ce rôle, mais ils peuvent être équipés d'un arsenal beaucoup plus puissant pour lutter contre les types de menaces qui les concernent. Les systèmes embarqués, généralement écrits en C et C++, seront de plus en plus utilisés à mesure que nos exigences techniques évolueront. Il est donc essentiel que les développeurs suivent des formations spécialisées en matière de sécurité concernant les outils utilisés dans cet environnement.
Friteuses à air chaud qui explosent, véhicules malveillants... Sommes-nous des proies faciles ?
Bien qu'il existe certaines normes et réglementations relatives au développement sécurisé dans son ensemble, nous devons réaliser des progrès beaucoup plus précis et significatifs en matière de sécurité logicielle afin de nous protéger. Il peut sembler exagéré d'envisager un problème pouvant être causé par le piratage d'une friteuse à air chaud, mais cela s'est produit sous la forme d'une attaque par exécution de code à distance (permettant à l'auteur de la menace d'augmenter la température à un niveau dangereux), ainsi que de failles de sécurité conduisant à la prise de contrôle de véhicules.
Les véhicules sont particulièrement complexes, car ils embarquent plusieurs systèmes embarqués, chacun étant responsable de microfonctions, des essuie-glaces automatiques aux fonctions du moteur et des freins. Le véhicule connecté est relié à un nombre croissant de technologies de communication telles que le Wi-Fi, le Bluetooth et le GPS, et constitue une infrastructure numérique complexe exposée à de nombreux vecteurs d'attaque. D'ici 2023, on estime que 76,3 millions de véhicules connectés circuleront sur les routes du monde entier, ce qui représente un ensemble de bases de défense qui garantissent une sécurité réelle.
MISRA est une organisation importante qui lutte activement contre les menaces pesant sur les systèmes embarqués et qui a élaboré des directives visant à faciliter la sécurité, la portabilité et la fiabilité des codes liés aux systèmes embarqués. Ces directives constituent un élément essentiel des normes que chaque entreprise doit s'efforcer de respecter dans le cadre de ses projets liés aux systèmes embarqués.
Cependant, pour créer et exécuter un code conforme à cette norme d'excellence, il est nécessaire de disposer d'ingénieurs en systèmes embarqués qui maîtrisent les outils, sans oublier les outils de sécurité.
Pourquoi l'amélioration de la sécurité des systèmes embarqués est-elle si spécifique ?
Les langages de programmation C et C++ sont considérés comme anciens selon les normes actuelles, mais ils sont toujours largement utilisés. Ils constituent le cœur fonctionnel de la base de code des systèmes embarqués, et le C/C++ embarqué connaît une nouvelle vie dans le monde des appareils connectés.
Bien que ces langages aient des origines assez anciennes et présentent un comportement similaire en matière de sécurité par rapport à des problèmes courants tels que les erreurs d'injection et les dépassements de tampon, les développeurs doivent acquérir une expérience pratique du code qui imite les environnements dans lesquels ils travaillent afin de corriger efficacement les failles de sécurité dans les systèmes embarqués. Une formation générique en C sur les pratiques générales de sécurité ne sera tout simplement pas aussi efficace et mémorable que si l'on consacrait davantage de temps et d'attention au travail dans un contexte C embarqué.
Avec une douzaine, voire plus d'une centaine de systèmes embarqués dans un véhicule moderne, il est essentiel que les développeurs soient formés directement dans l'IDE sur les points auxquels ils doivent prêter attention et sur la manière de résoudre les problèmes.

La protection des systèmes intégrés au rez-de-chaussée relève de la responsabilité de tous.
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 la responsabilité des développeurs. Ceux-ci sont rarement évalués sur leur capacité à créer un code sécurisé, mais le développement rapide de fonctionnalités exceptionnelles est considéré comme la norme. La demande en logiciels ne fera qu'augmenter, mais cette culture nous a préparés à un combat difficile contre les failles de sécurité et les cyberattaques qui en découlent.
Si les développeurs ne sont pas formés, ce n'est pas de leur faute, et c'est une lacune que quelqu'un de l'équipe AppSec doit combler en recommandant à l'ensemble de la communauté des développeurs des programmes de formation continue adaptés, accessibles (sans oublier évaluables). Dès le début d'un projet de développement logiciel, la sécurité doit être une priorité absolue, et chacun, en particulier les développeurs, doit savoir ce dont il a besoin pour apporter sa contribution.
Gestion pratique des problèmes de sécurité des systèmes embarqués
Les dépassements de tampon, les erreurs d'injection et les erreurs dans la logique métier sont tous des pièges courants dans le développement de systèmes embarqués. Lorsqu'ils sont profondément enfouis dans un labyrinthe de microcontrôleurs dans un seul véhicule ou appareil, cela peut constituer un problème de sécurité.
Les débordements de tampon sont particulièrement fréquents. Si vous souhaitez en savoir plus sur la manière dont ils ont contribué à compromettre la friteuse à air chaud dont nous avons parlé précédemment (permettant l'exécution de code à distance), veuillez consulter ce rapport sur CVE-2020-28592.
Il est maintenant temps de mettre en pratique une vulnérabilité de type débordement de tampon dans du code C/C++ embarqué réel. Relevez ce défi pour voir si vous pouvez localiser, identifier et corriger les mauvaises pratiques de codage qui ont conduit à cette erreur insidieuse :
.png)
Wie hast du dich geschlagen? Besuchen www.securecodewarrior.com für präzise und effektive Schulungen zur Sicherheit eingebetteter Systeme.

Veuillez cliquer sur le lien ci-dessous et télécharger le PDF de cette ressource.
Secure Code Warrior là pour aider votre entreprise à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture où la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité des systèmes d'information ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre entreprise à réduire les risques liés à un code non sécurisé.
Consulter le rapportRéserver une démonstrationMatias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu son doctorat en sécurité des applications à l'université de Gand, en se concentrant sur les solutions d'analyse statique. Il a ensuite rejoint Fortify aux États-Unis, où il s'est rendu compte qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. C'est ce qui l'a incité à développer des produits qui aident les développeurs, allègent le fardeau de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de l'équipe Awesome, il aime être sur scène pour présenter des conférences, notamment RSA Conference, BlackHat et DefCon.
Matias est un chercheur et un développeur qui possède plus de 15 ans d'expérience pratique dans le domaine de la sécurité des logiciels. Il a développé des solutions pour des entreprises telles que Fortify Software et sa propre entreprise Sensei Security. Au cours de sa carrière, Matias a dirigé de nombreux projets de recherche sur la sécurité des applications qui ont débouché sur des produits commerciaux et peut se targuer d'avoir déposé plus de 10 brevets. Lorsqu'il n'est pas à son bureau, Matias a été instructeur pour des formations avancées en matière de sécurité des applications ( courses ) et intervient régulièrement lors de conférences mondiales telles que RSA Conference, Black Hat, DefCon, BSIMM, OWASP AppSec et BruCon.
Matias est titulaire d'un doctorat en ingénierie informatique de l'Université de Gand, où il a étudié la sécurité des applications par le biais de l'obscurcissement des programmes afin de dissimuler le fonctionnement interne d'une application.
Dans la culture populaire, il existe de nombreuses références à des IA et des robots rebelles, ainsi qu'à des appareils qui se retournent contre leurs maîtres humains. Ces références sont fortement imprégnées de science-fiction et de fantaisie, mais à mesure que l'Internet des objets et les appareils connectés prennent de plus en plus d'importance dans nos foyers, il convient également d'aborder la question de la cybersécurité et de la sécurité. Les logiciels sont omniprésents dans notre environnement, et il est facile d'oublier à quel point nous dépendons des lignes de code pour accomplir toutes ces tâches intelligentes qui nous apportent tant d'innovation et de confort. À l'instar des logiciels basés sur le Web, des API et des appareils mobiles, les codes vulnérables des systèmes embarqués peuvent être exploités s'ils sont découverts par un attaquant.
Il est certes peu probable qu'une armée de micro-ondes asservisse l'humanité (bien que Tesla-Bot soit quelque peu préoccupant), mais des cyberattaques malveillantes restent possibles. Certaines de nos voitures, avions et appareils médicaux dépendent également de codes informatiques embarqués complexes pour exécuter des tâches importantes. La perspective que ces objets soient compromis est non seulement alarmante, mais aussi potentiellement mortelle.
Comme pour tout autre type de logiciel, les développeurs sont parmi les premiers à manipuler le code dès le début de la phase de création. Et comme pour tout autre type de logiciel, cela peut constituer un terrain propice à l'apparition de failles de sécurité insidieuses et fréquentes, qui pourraient passer inaperçues avant la mise sur le marché du produit.
Les développeurs ne sont pas des experts en sécurité, et une entreprise ne devrait pas s'attendre à ce qu'ils jouent ce rôle, mais ils peuvent être équipés d'un arsenal beaucoup plus puissant pour lutter contre les types de menaces qui les concernent. Les systèmes embarqués, généralement écrits en C et C++, seront de plus en plus utilisés à mesure que nos exigences techniques évolueront. Il est donc essentiel que les développeurs suivent des formations spécialisées en matière de sécurité concernant les outils utilisés dans cet environnement.
Friteuses à air chaud qui explosent, véhicules malveillants... Sommes-nous des proies faciles ?
Bien qu'il existe certaines normes et réglementations relatives au développement sécurisé dans son ensemble, nous devons réaliser des progrès beaucoup plus précis et significatifs en matière de sécurité logicielle afin de nous protéger. Il peut sembler exagéré d'envisager un problème pouvant être causé par le piratage d'une friteuse à air chaud, mais cela s'est produit sous la forme d'une attaque par exécution de code à distance (permettant à l'auteur de la menace d'augmenter la température à un niveau dangereux), ainsi que de failles de sécurité conduisant à la prise de contrôle de véhicules.
Les véhicules sont particulièrement complexes, car ils embarquent plusieurs systèmes embarqués, chacun étant responsable de microfonctions, des essuie-glaces automatiques aux fonctions du moteur et des freins. Le véhicule connecté est relié à un nombre croissant de technologies de communication telles que le Wi-Fi, le Bluetooth et le GPS, et constitue une infrastructure numérique complexe exposée à de nombreux vecteurs d'attaque. D'ici 2023, on estime que 76,3 millions de véhicules connectés circuleront sur les routes du monde entier, ce qui représente un ensemble de bases de défense qui garantissent une sécurité réelle.
MISRA est une organisation importante qui lutte activement contre les menaces pesant sur les systèmes embarqués et qui a élaboré des directives visant à faciliter la sécurité, la portabilité et la fiabilité des codes liés aux systèmes embarqués. Ces directives constituent un élément essentiel des normes que chaque entreprise doit s'efforcer de respecter dans le cadre de ses projets liés aux systèmes embarqués.
Cependant, pour créer et exécuter un code conforme à cette norme d'excellence, il est nécessaire de disposer d'ingénieurs en systèmes embarqués qui maîtrisent les outils, sans oublier les outils de sécurité.
Pourquoi l'amélioration de la sécurité des systèmes embarqués est-elle si spécifique ?
Les langages de programmation C et C++ sont considérés comme anciens selon les normes actuelles, mais ils sont toujours largement utilisés. Ils constituent le cœur fonctionnel de la base de code des systèmes embarqués, et le C/C++ embarqué connaît une nouvelle vie dans le monde des appareils connectés.
Bien que ces langages aient des origines assez anciennes et présentent un comportement similaire en matière de sécurité par rapport à des problèmes courants tels que les erreurs d'injection et les dépassements de tampon, les développeurs doivent acquérir une expérience pratique du code qui imite les environnements dans lesquels ils travaillent afin de corriger efficacement les failles de sécurité dans les systèmes embarqués. Une formation générique en C sur les pratiques générales de sécurité ne sera tout simplement pas aussi efficace et mémorable que si l'on consacrait davantage de temps et d'attention au travail dans un contexte C embarqué.
Avec une douzaine, voire plus d'une centaine de systèmes embarqués dans un véhicule moderne, il est essentiel que les développeurs soient formés directement dans l'IDE sur les points auxquels ils doivent prêter attention et sur la manière de résoudre les problèmes.

La protection des systèmes intégrés au rez-de-chaussée relève de la responsabilité de tous.
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 la responsabilité des développeurs. Ceux-ci sont rarement évalués sur leur capacité à créer un code sécurisé, mais le développement rapide de fonctionnalités exceptionnelles est considéré comme la norme. La demande en logiciels ne fera qu'augmenter, mais cette culture nous a préparés à un combat difficile contre les failles de sécurité et les cyberattaques qui en découlent.
Si les développeurs ne sont pas formés, ce n'est pas de leur faute, et c'est une lacune que quelqu'un de l'équipe AppSec doit combler en recommandant à l'ensemble de la communauté des développeurs des programmes de formation continue adaptés, accessibles (sans oublier évaluables). Dès le début d'un projet de développement logiciel, la sécurité doit être une priorité absolue, et chacun, en particulier les développeurs, doit savoir ce dont il a besoin pour apporter sa contribution.
Gestion pratique des problèmes de sécurité des systèmes embarqués
Les dépassements de tampon, les erreurs d'injection et les erreurs dans la logique métier sont tous des pièges courants dans le développement de systèmes embarqués. Lorsqu'ils sont profondément enfouis dans un labyrinthe de microcontrôleurs dans un seul véhicule ou appareil, cela peut constituer un problème de sécurité.
Les débordements de tampon sont particulièrement fréquents. Si vous souhaitez en savoir plus sur la manière dont ils ont contribué à compromettre la friteuse à air chaud dont nous avons parlé précédemment (permettant l'exécution de code à distance), veuillez consulter ce rapport sur CVE-2020-28592.
Il est maintenant temps de mettre en pratique une vulnérabilité de type débordement de tampon dans du code C/C++ embarqué réel. Relevez ce défi pour voir si vous pouvez localiser, identifier et corriger les mauvaises pratiques de codage qui ont conduit à cette erreur insidieuse :
.png)
Wie hast du dich geschlagen? Besuchen www.securecodewarrior.com für präzise und effektive Schulungen zur Sicherheit eingebetteter Systeme.
Table des matières
Matias Madou est expert en sécurité, chercheur, directeur technique et cofondateur de Secure Code Warrior. Matias a obtenu son doctorat en sécurité des applications à l'université de Gand, en se concentrant sur les solutions d'analyse statique. Il a ensuite rejoint Fortify aux États-Unis, où il s'est rendu compte qu'il ne suffisait pas de détecter les problèmes de code sans aider les développeurs à écrire du code sécurisé. C'est ce qui l'a incité à développer des produits qui aident les développeurs, allègent le fardeau de la sécurité et dépassent les attentes des clients. Lorsqu'il n'est pas à son bureau en tant que membre de l'équipe Awesome, il aime être sur scène pour présenter des conférences, notamment RSA Conference, BlackHat et DefCon.

Secure Code Warrior là pour aider votre entreprise à sécuriser le code tout au long du cycle de développement logiciel et à créer une culture où la cybersécurité est une priorité. Que vous soyez responsable de la sécurité des applications, développeur, responsable de la sécurité des systèmes d'information ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre entreprise à réduire les risques liés à un code non sécurisé.
Réserver une démonstrationTéléchargerRessources pour débuter
Thèmes et contenus de la formation Securecode
Nos contenus de pointe sont constamment développés afin de s'adapter à l'évolution constante du paysage du développement logiciel, en tenant compte de votre rôle. Les thèmes abordés couvrent tous les domaines, de l'IA à l'injection XQuery, et sont proposés pour une multitude de rôles, des architectes et ingénieurs aux chefs de produit et responsables assurance qualité. Nous vous invitons à découvrir un aperçu de notre catalogue de contenus classés par thème et par rôle.
La Chambre de commerce établit la norme en matière de sécurité à grande échelle axée sur les développeurs
La Chambre de commerce néerlandaise explique comment elle a intégré le codage sécurisé dans le développement quotidien grâce à des certifications basées sur les rôles, à l'évaluation comparative du Trust Score et à une culture de responsabilité partagée en matière de sécurité.
Modélisation des menaces avec l'IA : transformer chaque développeur en modélisateur de menaces
Vous repartirez mieux équipé pour aider les développeurs à combiner les idées et les techniques de modélisation des menaces avec les outils d'IA qu'ils utilisent déjà pour renforcer la sécurité, améliorer la collaboration et créer des logiciels plus résilients dès le départ.
Ressources pour débuter
Cybermon est de retour : les missions KI « Beat the Boss » sont désormais disponibles sur demande.
Cybermon 2025 Beat the Boss est désormais disponible toute l'année dans SCW. Il utilise des exigences de sécurité IA/LLM avancées pour renforcer le développement sécurisé de l'IA à grande échelle.
Explication de la loi sur la cyber-résilience : implications pour le développement de logiciels sécurisés dès la conception
Découvrez les exigences de la loi européenne sur la cyber-résilience (CRA), à qui elle s'applique et comment les équipes de développement peuvent s'y préparer en adoptant des méthodes sécurisées, en prévenant les failles de sécurité et en renforçant les compétences des développeurs.
Facteur 1 : Critères de réussite définis et mesurables
Le catalyseur n° 1 inaugure notre série en dix parties intitulée « Les catalyseurs de la réussite » et démontre comment un codage sécurisé peut être associé à des résultats commerciaux tels que la réduction des risques et la rapidité afin d'atteindre une maturité programmatique à long terme.




%20(1).avif)
.avif)
