Sécurisé par Conception : Que Signifie-t-Il et Comment l'Implémenter Raisonnablement
Au deuxième trimestre 2023, les organisations ont fait face à une moyenne de 1 258 attaques par semaine, marquant le nombre le plus élevé d'attaques mondiales hebdomadaires en deux ans.
Alors que les cybermenaces continuent d'augmenter et d'évoluer, les agences fédérales américaines CISA, NSA et FBI ainsi que des partenaires internationaux en Australie, au Canada, au Royaume-Uni, en Allemagne, aux Pays-Bas, en Nouvelle-Zélande, en République tchèque, en Israël, à Singapour, en Corée, en Norvège et au Japon appellent les fournisseurs de technologie à assumer davantage de responsabilités quant à la sécurité de leurs produits plutôt que de compter sur les clients pour effectuer constamment la surveillance, les mises à jour de routine et le contrôle des dommages sur ces produits.
En transférant la charge des consommateurs et des petites organisations qui utilisent la technologie vers les fournisseurs et développeurs de technologies, ces agences croient que le monde sera mieux à même de comprendre, gérer et réduire le risque pour l'infrastructure cyber et physique sur laquelle les gens comptent au quotidien.
Pour réaliser cet avenir, la CISA et ses partenaires internationaux appellent chaque fournisseur de technologie à assumer la responsabilité au niveau exécutif pour s'assurer que leurs produits sont sécurisés par conception. Ci-dessous, nous examinerons de plus près ce que ce concept implique et comment il peut être raisonnablement et efficacement mis en œuvre.
Que signifie sécurisé par conception ?
Sécurisé par conception est une approche du développement logiciel qui priorise la sécurité en tant qu'exigence commerciale de base plutôt qu'en tant que caractéristique technique ou réflexion après coup. En adoptant cette approche, les fournisseurs de technologies intègrent la sécurité dans le processus de conception ainsi que dans chaque autre étape du cycle de vie de développement d'un produit afin d'identifier et d'atténuer les vulnérabilités potentielles avant qu'elles ne soient introduites sur le marché. L'objectif ultime est de réaliser un avenir où les consommateurs peuvent faire confiance à la sécurité et à l'intégrité de la technologie qu'ils utilisent chaque jour.
Pour y parvenir, les organisations doivent créer des produits à la fois sécurisés par conception et par défaut.
Les produits sécurisés par conception sont délibérément conçus, construits, testés et maintenus pour réduire le nombre de failles exploitables avant qu'ils ne soient introduits sur le marché pour une utilisation générale. Les produits sécurisés par défaut sont des produits sécurisés à utiliser dès leur sortie de la boîte. Cela signifie qu'ils sont conçus pour être résilients contre les menaces, vulnérabilités et techniques d'exploitation courantes sans que les utilisateurs finaux aient à prendre des mesures supplémentaires pour les sécuriser. Ces produits ont des configurations de sécurité activées par défaut et des fonctionnalités de sécurité telles que l'authentification multi-facteurs (AMF), la journalisation et la connexion unique (SSO) disponibles sans coût supplémentaire ou licence supplémentaire requise.
La livraison de produits sécurisés par conception et par défaut réduira considérablement le nombre de failles exploitables qui peuvent entraîner des cyberattaques et des violations. Examinons de plus près pourquoi cela est important ci-dessous.
Pourquoi est-il important d'être sécurisé par conception ?
Alors que la menace d'activités cybernétiques malveillantes, tant de la part d'acteurs criminels que d'acteurs étatiques, continue de croître, il est plus important que jamais pour les fabricants de technologies de produire des produits plus sûrs afin d'aider à protéger les clients.
Historiquement, les fabricants de technologies ont compté sur les clients pour identifier les vulnérabilités après avoir déployé leurs produits. Les fabricants cherchent ensuite comment corriger les vulnérabilités, publient des patchs, et demandent aux clients d'appliquer ces patchs à leurs propres frais et le plus rapidement possible. Cela laisse les clients vulnérables aux incidents de sécurité qui peuvent affecter leur prospérité économique, leur subsistance, et même leur santé. À titre d'exemple, la technologie non sécurisée dans l'infrastructure de santé a conduit les hôpitaux et autres organisations de santé à annuler des chirurgies, détourner des patients vers d'autres établissements, et ne pas pouvoir remplir les prescriptions.
La sécurité par conception change cette dynamique. Plutôt que d'attendre des clients qu'ils appliquent continuellement des patchs, surveillent les journaux, déploient des guides de sécurisation, et achètent des produits de sécurité pour sécuriser les produits qu'ils achètent, les fabricants de technologies sont censés créer et livrer des produits sécurisés dès le départ. Cela exige qu'ils intègrent la sécurité dans les produits dès le début, même avant le lancement du processus de développement, afin d'éliminer les classes de vulnérabilités, ou de défauts de produit, qui peuvent affecter la sécurité de leurs clients.
En éliminant systématiquement les vulnérabilités avant le déploiement plutôt que de gérer les conséquences de leur présence post-déploiement, les fabricants de technologies qui adoptent la sécurité par conception peuvent aider à défendre les infrastructures critiques et améliorer la sécurité mondiale.
Maintenant que nous comprenons son importance, plongeons dans les principes de la sécurité par conception ci-dessous.
Lectures recommandées
12 raisons pour lesquelles la cybersécurité est importante
Principes de sécurité par conception
Dans une directive conjointe initialement publiée en avril 2023 et mise à jour en octobre de la même année, la CISA et d'autres agences auteures définissent trois principes pour guider les fabricants de technologies à transformer leurs processus de conception et de développement pour créer et fournir des produits plus sécurisés.
1. Prendre en charge les résultats de sécurité des clients
Un principe fondamental de la sécurité par conception est de transférer le fardeau de la sécurité des « moins compétents », y compris les clients, petites entreprises, écoles, gouvernements locaux et d'État, aux plus compétents - à savoir, ces grands fabricants de technologies. Ces fabricants devraient assumer pleinement la responsabilité des résultats de sécurité de l'achat de leurs clients et faire évoluer leurs produits en conséquence.
2. Adopter une transparence et une responsabilité radicales
Un autre principe fondamental de la sécurité par conception est que les fabricants de logiciels doivent montrer la voie avec une transparence et une responsabilité radicales en partageant les informations qu'ils apprennent de leurs déploiements de produits et des vulnérabilités. Cela peut inclure la publication de statistiques et de tendances sur leurs produits (comme le pourcentage de clients utilisant la dernière version du produit) et des avis de vulnérabilité détaillés et des enregistrements communs de vulnérabilités et d'expositions (CVE) associés. Le but de ce partage d'informations est d'aider d'autres fabricants à savoir quoi faire, ou ne pas faire.
3. Diriger depuis le sommet
Le dernier principe est d'obtenir un engagement au niveau exécutif pour s'assurer que la sécurité est traitée comme une priorité commerciale et une exigence critique de la conception et du développement des produits. Les cadres devraient jouer un rôle clé dans :
- Élever la responsabilité de la sécurité au-delà du département informatique
- Allouer des ressources pour s'assurer que la sécurité des logiciels est une priorité commerciale dès le départ
- Créer des incitations internes pour faire de la sécurité une exigence de conception
- Favoriser une culture dans laquelle la sécurité est une impérative commerciale
- Maintenir une ligne de communication ouverte pour les retours internes et externes concernant les problèmes de sécurité des produits
Mettre en œuvre des principes de sécurisation par conception
Maintenant que nous comprenons les principes fondamentaux de la sécurisation par conception, examinons certaines méthodes tactiques que vous pouvez mettre en œuvre dans votre organisation. Nous nous sommes concentrés sur les points clés de la liste exhaustive trouvée dans la publication officielle de la CISA.
1. Établir une culture de la sécurité et un système de responsabilité
La sécurisation par conception nécessite un changement de mentalité au sein de votre organisation pour prioriser la sécurité en parallèle avec d'autres objectifs commerciaux tels que la rapidité de mise sur le marché et l'expansion des fonctionnalités. Cela nécessite l'adhésion des parties prenantes à tous les niveaux, des dirigeants aux développeurs, ainsi qu'un système de responsabilité pour les résultats en matière de sécurité des clients.
Voici quelques moyens de promouvoir une culture de sécurité et de responsabilité :
- Organiser des réunions de routine avec la direction exécutive de l'entreprise pour promouvoir l'importance de la sécurisation par conception au sein de l'organisation.
- Établir des politiques et des procédures pour récompenser les équipes de production qui développent des produits conformes aux principes de sécurisation par conception et par défaut.
- Investir dans la formation à la sécurité pour les employés.
- Désigner un leader ou une équipe de sécurité logicielle qui maintient les pratiques commerciales et informatiques afin de relier directement les normes de sécurité logicielle et la responsabilité du fabricant.
- La direction supérieure doit tenir les équipes responsables de la livraison de produits sécurisés, la sécurité étant clairement caractérisée comme une sous-catégorie de la qualité du produit.
2. Intégrer la sécurité dans les exigences avant le développement
Les exigences de sécurité doivent être clairement définies aux côtés des exigences fonctionnelles dès le début du processus de développement. Cela garantit que les considérations de sécurité soient intégrées à la conception et au développement du logiciel dès le départ, ce qui aidera à augmenter la qualité du produit, l'efficacité de l'équipe de développement et la sécurité des clients.
3. Utiliser un modèle de menace personnalisé lors du développement
La modélisation des menaces est un processus structuré et répétable utilisé pour obtenir des informations exploitables sur la sécurité d'un système. Elle permet aux équipes de développement de comprendre comment les adversaires pourraient exploiter les faiblesses d'un système et de déterminer les réponses et les moyens de renforcer le système en conséquence. La modélisation des menaces doit être effectuée tôt dans le cycle de vie du développement logiciel, comme pendant la phase de conception, tout au long du cycle de vie, et revue au moins annuellement afin que le modèle de menace soit maintenu et affiné parallèlement au système.
Utiliser un modèle de menace adapté à un produit spécifique et à son cas d'utilisation permettra à votre équipe de prioriser les fonctionnalités de sécurité les plus critiques et à fort impact.
4. Utiliser des pratiques de codage sécurisées
Les développeurs jouent un rôle crucial dans la mise en œuvre des principes de sécurisation par conception. Ils doivent être formés aux pratiques de codage sécurisées et aux tests de vulnérabilité et disposer d'outils et de frameworks facilitant le développement sécurisé.
Quelques bonnes pratiques sont :
- Utiliser des requêtes paramétrées
- Utiliser un langage de programmation sûr pour la mémoire
- Utiliser une gestion cryptographique des clés soutenue par le matériel
5. Mettre en œuvre plusieurs couches de défense
Mettre en œuvre plusieurs couches de mécanismes de défense, plutôt que de se fier à une seule couche de sécurité, peut aider à empêcher les acteurs malveillants de compromettre les systèmes ou d'obtenir un accès non autorisé aux données sensibles. Cette stratégie de sécurité est connue sous le nom de défense en profondeur et peut impliquer l'application des contre-mesures suivantes :
- Pare-feux
- Systèmes de détection d'intrusion
- Chiffrement
- Mises à jour de sécurité régulières
6. Définir des paramètres de sécurité et des valeurs par défaut sécurisées
Plutôt que de compter sur les administrateurs pour avoir le temps, l'expertise et la connaissance de renforcer les paramètres des applications pour rendre un produit plus sécurisé, les composants et configurations du système doivent être sécurisés par défaut. Cela signifie désactiver les services inutiles, activer le chiffrement et suivre les meilleures pratiques en matière d'authentification et de contrôle d'accès, y compris les principes de moindre privilège et de séparation des responsabilités.
En plus des paramètres sécurisés par défaut, les systèmes doivent également avoir des mécanismes de sécurité en place pour empêcher tout accès non autorisé ou perte de données en cas de violation de la sécurité. Cela pourrait inclure la mise en œuvre de contrôles d'accès basés sur les rôles, des procédures de sauvegarde des données et des plans de reprise après sinistre.
7. Automatiser les tests de sécurité
Les outils de test de sécurité automatisés peuvent aider à identifier les vulnérabilités dès le début du processus de développement, permettant aux développeurs de les corriger avant qu'elles ne se transforment en risques de sécurité graves. Cela inclut :
- Outils d'analyse statique pour la revue de code
- Outils d'analyse dynamique pour tester le comportement à l'exécution
- Outils de test de pénétration pour simuler des attaques réelles
- Analyse et surveillance continues pour assurer la conformité et l'adhésion aux configurations de base
8. Établir un programme de gestion des vulnérabilités robuste.
Un programme de gestion des vulnérabilités robuste peut aider votre organisation à prioriser les vulnérabilités en fonction du risque et de l'exposition, à prévenir l'introduction de vulnérabilités connues, à maintenir la conformité aux normes et réglementations de sécurité, à minimiser la surface d'attaque globale et à comprendre et améliorer votre posture de sécurité.
Votre programme de gestion des vulnérabilités ne doit pas seulement se concentrer sur la correction des vulnérabilités découvertes en interne ou en externe. Au lieu de cela, il doit se concentrer sur l'analyse des vulnérabilités et de leurs causes profondes, puis sur la prise des mesures nécessaires pour éliminer des classes entières de vulnérabilités afin d'améliorer la sécurité de leur produit et de l'industrie du logiciel dans son ensemble.
9. Mettre en place un suivi et des alertes en continu
La sécurité est un processus continu qui nécessite un suivi continu et une amélioration constante. Les organisations devraient mettre en place des processus pour surveiller leur infrastructure informatique, leurs systèmes et leurs applications afin de détecter en temps réel les menaces et vulnérabilités potentielles. Une combinaison de processus manuels et automatisés est recommandée, car l'automatisation peut rendre la surveillance continue plus rentable, cohérente et efficace.
10. Publier une politique de divulgation des vulnérabilités.
Les adversaires continueront d'exploiter les vulnérabilités technologiques et les produits qui sont
sécurisés par conception continueront de présenter des vulnérabilités. Cependant, les fabricants de technologies peuvent aider à identifier et documenter les causes profondes qui entraînent un ensemble relativement large de vulnérabilités afin qu'elles puissent être corrigées. Une des principales façons de le faire est de publier une politique de divulgation des vulnérabilités. Celle-ci devrait
- autoriser les tests sur tous les produits proposés par le fabricant et les conditions de ces tests
- fournir un refuge légal pour les actions effectuées conformément à la politique
- permettre la divulgation publique des vulnérabilités après une période de temps définie
- s'intégrer à leur processus de gestion des vulnérabilités afin de réellement éliminer la cause profonde des vulnérabilités identifiées
Lectures recommandées
7 avantages de la surveillance continue et comment l'automatisation peut maximiser l'impact
Défis et considérations lors de la mise en œuvre des principes de sécurité par conception
Bien que la sécurité par conception offre de nombreux avantages en termes de réduction des risques de sécurité et de minimisation de l'impact des incidents de sécurité, elle présente également certains défis et considérations que les organisations doivent résoudre
1. Équilibrer la sécurité avec la convivialité
Il y a souvent un compromis entre la sécurité et d'autres exigences commerciales, en particulier la convivialité. La mise en œuvre de certaines mesures de sécurité comme l'authentification multifacteur ou les mises à jour automatisées peut gêner les utilisateurs ou entraver leur flux de travail. Trouver le bon équilibre entre sécurité et convivialité est crucial pour garantir que le logiciel soit sûr et fonctionnel.
2. Augmentation des coûts de développement
La CISA et ses partenaires reconnaissent que la mise en œuvre des principes de sécurité par conception peut augmenter les coûts de développement. Ce point sensible sera particulièrement aigu pour les petites organisations. Cependant, ils estiment que l'investissement dans les pratiques de sécurité par conception pour développer de nouveaux produits technologiques et maintenir les existants en vaudra la peine en raison des coûts initiaux, car cela peut :
- Améliorer considérablement la posture de sécurité des clients et réduire la probabilité de compromission
- Renforcer la réputation de la marque pour les développeurs
- Réduire les coûts de maintenance et de correction pour les fabricants à long terme
3. Contraintes de ressources
Au-delà du budget, la mise en œuvre de principes de sécurité dès la conception nécessite des ressources dédiées, notamment du temps, de l'expertise et le soutien de la direction. Les startups et les petites et moyennes entreprises ayant des ressources limitées peuvent avoir du mal à donner la priorité à la sécurité parmi d'autres priorités concurrentes.
Cependant, la sécurité dès la conception deviendra un standard attendu, les clients venant à exiger des produits sûrs de la part de leurs fournisseurs technologiques. De plus, garantir la sécurité dès la conception lors de la construction de votre infrastructure vous fera gagner du temps et des ressources une fois votre produit lancé et lorsque vous devrez vous concentrer sur des besoins commerciaux plus urgents. Tous les fournisseurs devraient commencer à mettre en œuvre ces principes, même s'ils ne peuvent pas égaler la vitesse et l'échelle des plus grands fournisseurs.
4. Suivre le rythme des menaces évolutives
Les menaces cybernétiques évoluent constamment, rendant difficile pour les organisations de suivre le rythme des risques émergents. La mise en œuvre des principes de sécurité dès la conception nécessite une approche proactive. Les organisations doivent se tenir au courant des dernières tendances et technologies en matière de sécurité et mettre régulièrement à jour leurs mesures de sécurité pour s'adapter aux menaces évolutives. L'automatisation peut aider les organisations à relever ce défi.
5. Systèmes hérités et dette technique
Les organisations disposant de systèmes hérités peuvent rencontrer des difficultés dans la mise en œuvre des principes de sécurité dès la conception en raison de la dette technique, des technologies obsolètes et des problèmes de compatibilité. Dans de tels cas, les organisations peuvent avoir besoin de privilégier les efforts de modernisation ou de mettre en place des contrôles compensatoires et des couches de sécurité supplémentaires pour atténuer les risques.
Lectures recommandées
Les 5 choses les plus difficiles en matière de conformité de sécurité et comment la technologie peut aider
FAQ
Qu'entend-on par sécurisé dès la conception ?
Sécurisé dès la conception signifie que les produits technologiques sont conçus, construits, testés et maintenus de manière à réduire le nombre de vulnérabilités que les cyberacteurs malveillants peuvent utiliser pour accéder aux appareils, aux données et à l'infrastructure connectée.
Quelle est la différence entre sécurisé dès la conception et sécurisé par défaut ?
Les produits sécurisés dès la conception sont des produits qui ont été conceptualisés avec la sécurité des clients comme objectif avant et tout au long du cycle de développement. Les produits sécurisés par défaut sont aussi sécurisés que possible dès leur sortie de la boîte, sans configurations de sécurité supplémentaires ni coûts supplémentaires. Il est important de noter que le guide conjoint de la CISA et d'autres partenaires indique que sécurisé dès la conception englobe sécurisé dès la conception et sécurisé par défaut.
Quels sont les principes de sécurité dès la conception ?
Les trois principaux principes de sécurité dès la conception sont :
- Assumer la responsabilité des résultats de la sécurité des clients.
- Adopter une transparence et une responsabilité radicales.
- Construire une structure organisationnelle et un leadership pour atteindre ces objectifs.
Comment Secureframe peut aider
La sécurité dès la conception représente un changement de paradigme dans le développement de logiciels, mettant l'accent sur l'importance d'intégrer les principes et pratiques de sécurité à chaque étape du cycle de développement. En adoptant une approche proactive en matière de sécurité, les organisations peuvent réduire le risque de violations de la sécurité, protéger les données sensibles et sauvegarder leur réputation et leur résultat net.
Secureframe peut simplifier la mise en œuvre des pratiques de sécurité dès la conception. Avec notre plateforme d'automatisation et notre équipe interne d'experts en conformité et en sécurité, vous pouvez :
En savoir plus sur la façon dont Secureframe peut vous aider à construire et à maintenir des produits sécurisés et conformes en planifiant une démonstration personnalisée dès aujourd'hui.