Les codeurs conquièrent la sécurité Série "Infrastructure as Code" : Cryptographie non sécurisée
Les organisations avisées adoptent le concept d'infrastructure en tant que code, et ce sont des développeurs comme vous qui peuvent contribuer de manière significative à l'élaboration d'un code sécurisé, même en dehors de la construction d'une application. Le chemin à parcourir peut sembler long au début, mais il en vaut la peine si vous voulez vous démarquer de vos pairs.
Avant de commencer ce nouveau chapitre de notre dernière série Coders Conquer Security, j'aimerais vous inviter à jouer à un défi gamifié de la vulnérabilité du stockage des données sensibles ; jouez maintenant et choisissez entre Kubernetes, Terraform, Ansible, Docker ou CloudFormation :
Comment cela s'est-il passé ? Si vos connaissances ont besoin d'être approfondies, lisez ce qui suit :
De nos jours, la protection des données critiques telles que les mots de passe, les informations personnelles et les dossiers financiers est la pierre angulaire de toute défense en matière de cybersécurité. À bien des égards, il s'agit à la fois d'une dernière ligne de défense et de l'un des meilleurs types de protection. En effet, même si un attaquant parvient à franchir d'autres défenses et à obtenir des fichiers critiques, cela ne lui servira pas à grand-chose tant qu'ils sont correctement hachés et stockés.
Il s'agit également d'une solide protection secondaire contre les initiés malveillants, car les fichiers cryptés peuvent avoir des clés ou des mots de passe distincts de ceux du reste du réseau. Dans ce cas, un administrateur système ou un pirate informatique ayant compromis les informations d'identification d'un administrateur peut être en mesure de naviguer dans un répertoire protégé, mais pas de déverrouiller les fichiers cryptés qu'il y trouve si la clé de cryptage est détenue ailleurs.
Bien entendu, toutes les méthodes de protection par cryptage reposent sur des normes de cryptage solides qui ne peuvent pas être transgressées par les ordinateurs les plus puissants.
Pourquoi la cryptographie non sécurisée est-elle dangereuse ?
En matière de technologie informatique, la capacité à créer des algorithmes de cryptage puissants et la capacité à les casser sont en concurrence depuis longtemps. En 1977, le gouvernement fédéral des États-Unis a mis au point la norme de cryptage des données (DES), un algorithme de 56 bits qui était considéré comme sûr à l'époque compte tenu de la puissance relative des ordinateurs.
Mais les ordinateurs ont évolué et les gens ont trouvé des moyens de les mettre en réseau de manière collaborative afin d'accroître encore leur puissance. En 1999, l'Electronic Frontier Foundation et Distributed.net ont collaboré pour casser publiquement le cryptage d'un document protégé par DES en seulement 22 heures. Soudain, tout document protégé par le cryptage DES n'était plus sûr.
Croyez-le ou non, certaines organisations protègent encore leurs fichiers critiques à l'aide de l'algorithme DES ou d'une protection de chiffrement aussi faible. Et alors qu'il fallait un réseau distribué pour casser le cryptage 56 bits en 1999, aujourd'hui, presque n'importe quel ordinateur autonome suffisamment puissant peut le faire avec un peu de temps. Les pirates ont également créé des machines dédiées au craquage, construites à partir de banques de processeurs graphiques (GPU). Ces GPU sont exceptionnellement performants pour cette tâche, sont relativement peu coûteux à obtenir et à mettre en réseau localement.
Si vous choisissez aujourd'hui de protéger vos fichiers critiques à l'aide d'un algorithme cryptographique peu sûr ou faible, il ne faudra pas longtemps pour que la plupart des pirates informatiques puissent décrypter ces fichiers et les rendre lisibles. Si vous êtes victime d'une violation de données, vous devez partir du principe que les fichiers seront finalement compromis s'ils n'ont pas été suffisamment protégés.
Par exemple, l'extrait de code Kubernetes suivant utilise un algorithme de chiffrement faible pour protéger les informations au niveau du contrôleur d'entrée NGINX :
apiVersion : v1
kind : ConfigMap
metadata :
name : nginx-load-balancer-conf
namespace : kube-system
data :
ssl-ciphers : DES-CBC3-SHA
ssl-protocols : "TLSv1.2"
Dans cet exemple, la suite de chiffrement DES a été utilisée pour protéger les informations. Toutefois, un pirate pourrait facilement la déchiffrer et accéder à des informations sensibles.
Il est recommandé d'utiliser des algorithmes de chiffrement puissants. Dans l'exemple Kubernetes suivant, des suites de chiffrement fortes ont été utilisées pour protéger les informations au niveau du contrôleur d'entrée NGINX :
apiVersion : v1
kind : ConfigMap
metadata :
name : nginx-load-balancer-conf
namespace : kube-system
data :
ssl-ciphers : |
ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384 :
ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305 :
ECDHE-ECDSA-AES128-GCM-SHA256 :ECDHE-RSA-AES128-GCM-SHA256 :
ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256 :
ECDHE-RSA-AES128-SHA256
ssl-protocols : "TLSv1.2"
Dans cet exemple, une série de chiffrements puissants a été utilisée afin d'éviter que des attaquants n'aient un accès potentiel à des informations sensibles.
Protéger les informations critiques grâce à un cryptage fort
Il existe aujourd'hui un système de cryptage fort qui est pratiquement inviolable. En 2001, le National Institute of Standards and Technology (NIST) a créé une nouvelle technologie de cryptage pour remplacer le DES. Appelée Advanced Encryption Standard (AES), elle utilise trois longueurs de clé différentes, soit 128, 192 ou 256 bits. Le cryptage AES 256 bits est le plus sûr, bien que les trois soient considérés comme presque totalement incassables compte tenu de la technologie actuelle. Des tests effectués avec des superordinateurs ont montré qu'il faudrait des milliers d'années de travail constant pour déchiffrer la plupart des documents protégés par AES.
Pour protéger correctement les fichiers critiques, les développeurs doivent d'abord les identifier. Il n'est pas nécessaire de tout crypter sur un réseau, car cela pourrait ralentir les opérations en raison du processus constant de cryptage et de décryptage. En revanche, les fichiers critiques tels que les dossiers du personnel, les données des clients et les informations financières doivent être protégés de manière adéquate. En fait, il s'agit de trouver un équilibre entre la sécurité et l'efficacité du système.
Ces données doivent être cryptées selon l'une des normes AES, voire 256 bits pour les informations réellement critiques qui ne doivent jamais tomber entre de mauvaises mains.
Un autre élément à prendre en compte est le fait que l'ajout du cryptage revient à ajouter des mots de passe à un site. Cela signifie que les utilisateurs autorisés devront assurer le suivi des clés de chiffrement. Pour éviter que cela ne devienne un goulot d'étranglement dans le flux de travail, envisagez de mettre en œuvre une plateforme de gestion des clés pour assurer le suivi de ces clés et les garder en sécurité. Et même si vous n'utilisez pas la gestion centralisée des clés, veillez à ce que toutes les clés et tous les mots de passe soient protégés afin que les utilisateurs non autorisés ne puissent pas accéder à vos coffres-forts les plus sécurisés.
Consultez les pages du Secure Code Warrior pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients des ravages causés par d'autres failles de sécurité. Vous pouvez également essayer une démo d'un défi IaC sur la plateforme de formation Secure Code Warrior pour maintenir vos compétences en cybersécurité à jour.
De nos jours, la pierre angulaire de toute défense en matière de cybersécurité consiste à hacher les données critiques telles que les mots de passe, les informations personnelles et les dossiers financiers lorsqu'ils sont au repos.
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 est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.
Réservez 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.
Les organisations avisées adoptent le concept d'infrastructure en tant que code, et ce sont des développeurs comme vous qui peuvent contribuer de manière significative à l'élaboration d'un code sécurisé, même en dehors de la construction d'une application. Le chemin à parcourir peut sembler long au début, mais il en vaut la peine si vous voulez vous démarquer de vos pairs.
Avant de commencer ce nouveau chapitre de notre dernière série Coders Conquer Security, j'aimerais vous inviter à jouer à un défi gamifié de la vulnérabilité du stockage des données sensibles ; jouez maintenant et choisissez entre Kubernetes, Terraform, Ansible, Docker ou CloudFormation :
Comment cela s'est-il passé ? Si vos connaissances ont besoin d'être approfondies, lisez ce qui suit :
De nos jours, la protection des données critiques telles que les mots de passe, les informations personnelles et les dossiers financiers est la pierre angulaire de toute défense en matière de cybersécurité. À bien des égards, il s'agit à la fois d'une dernière ligne de défense et de l'un des meilleurs types de protection. En effet, même si un attaquant parvient à franchir d'autres défenses et à obtenir des fichiers critiques, cela ne lui servira pas à grand-chose tant qu'ils sont correctement hachés et stockés.
Il s'agit également d'une solide protection secondaire contre les initiés malveillants, car les fichiers cryptés peuvent avoir des clés ou des mots de passe distincts de ceux du reste du réseau. Dans ce cas, un administrateur système ou un pirate informatique ayant compromis les informations d'identification d'un administrateur peut être en mesure de naviguer dans un répertoire protégé, mais pas de déverrouiller les fichiers cryptés qu'il y trouve si la clé de cryptage est détenue ailleurs.
Bien entendu, toutes les méthodes de protection par cryptage reposent sur des normes de cryptage solides qui ne peuvent pas être transgressées par les ordinateurs les plus puissants.
Pourquoi la cryptographie non sécurisée est-elle dangereuse ?
En matière de technologie informatique, la capacité à créer des algorithmes de cryptage puissants et la capacité à les casser sont en concurrence depuis longtemps. En 1977, le gouvernement fédéral des États-Unis a mis au point la norme de cryptage des données (DES), un algorithme de 56 bits qui était considéré comme sûr à l'époque compte tenu de la puissance relative des ordinateurs.
Mais les ordinateurs ont évolué et les gens ont trouvé des moyens de les mettre en réseau de manière collaborative afin d'accroître encore leur puissance. En 1999, l'Electronic Frontier Foundation et Distributed.net ont collaboré pour casser publiquement le cryptage d'un document protégé par DES en seulement 22 heures. Soudain, tout document protégé par le cryptage DES n'était plus sûr.
Croyez-le ou non, certaines organisations protègent encore leurs fichiers critiques à l'aide de l'algorithme DES ou d'une protection de chiffrement aussi faible. Et alors qu'il fallait un réseau distribué pour casser le cryptage 56 bits en 1999, aujourd'hui, presque n'importe quel ordinateur autonome suffisamment puissant peut le faire avec un peu de temps. Les pirates ont également créé des machines dédiées au craquage, construites à partir de banques de processeurs graphiques (GPU). Ces GPU sont exceptionnellement performants pour cette tâche, sont relativement peu coûteux à obtenir et à mettre en réseau localement.
Si vous choisissez aujourd'hui de protéger vos fichiers critiques à l'aide d'un algorithme cryptographique peu sûr ou faible, il ne faudra pas longtemps pour que la plupart des pirates informatiques puissent décrypter ces fichiers et les rendre lisibles. Si vous êtes victime d'une violation de données, vous devez partir du principe que les fichiers seront finalement compromis s'ils n'ont pas été suffisamment protégés.
Par exemple, l'extrait de code Kubernetes suivant utilise un algorithme de chiffrement faible pour protéger les informations au niveau du contrôleur d'entrée NGINX :
apiVersion : v1
kind : ConfigMap
metadata :
name : nginx-load-balancer-conf
namespace : kube-system
data :
ssl-ciphers : DES-CBC3-SHA
ssl-protocols : "TLSv1.2"
Dans cet exemple, la suite de chiffrement DES a été utilisée pour protéger les informations. Toutefois, un pirate pourrait facilement la déchiffrer et accéder à des informations sensibles.
Il est recommandé d'utiliser des algorithmes de chiffrement puissants. Dans l'exemple Kubernetes suivant, des suites de chiffrement fortes ont été utilisées pour protéger les informations au niveau du contrôleur d'entrée NGINX :
apiVersion : v1
kind : ConfigMap
metadata :
name : nginx-load-balancer-conf
namespace : kube-system
data :
ssl-ciphers : |
ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384 :
ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305 :
ECDHE-ECDSA-AES128-GCM-SHA256 :ECDHE-RSA-AES128-GCM-SHA256 :
ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256 :
ECDHE-RSA-AES128-SHA256
ssl-protocols : "TLSv1.2"
Dans cet exemple, une série de chiffrements puissants a été utilisée afin d'éviter que des attaquants n'aient un accès potentiel à des informations sensibles.
Protéger les informations critiques grâce à un cryptage fort
Il existe aujourd'hui un système de cryptage fort qui est pratiquement inviolable. En 2001, le National Institute of Standards and Technology (NIST) a créé une nouvelle technologie de cryptage pour remplacer le DES. Appelée Advanced Encryption Standard (AES), elle utilise trois longueurs de clé différentes, soit 128, 192 ou 256 bits. Le cryptage AES 256 bits est le plus sûr, bien que les trois soient considérés comme presque totalement incassables compte tenu de la technologie actuelle. Des tests effectués avec des superordinateurs ont montré qu'il faudrait des milliers d'années de travail constant pour déchiffrer la plupart des documents protégés par AES.
Pour protéger correctement les fichiers critiques, les développeurs doivent d'abord les identifier. Il n'est pas nécessaire de tout crypter sur un réseau, car cela pourrait ralentir les opérations en raison du processus constant de cryptage et de décryptage. En revanche, les fichiers critiques tels que les dossiers du personnel, les données des clients et les informations financières doivent être protégés de manière adéquate. En fait, il s'agit de trouver un équilibre entre la sécurité et l'efficacité du système.
Ces données doivent être cryptées selon l'une des normes AES, voire 256 bits pour les informations réellement critiques qui ne doivent jamais tomber entre de mauvaises mains.
Un autre élément à prendre en compte est le fait que l'ajout du cryptage revient à ajouter des mots de passe à un site. Cela signifie que les utilisateurs autorisés devront assurer le suivi des clés de chiffrement. Pour éviter que cela ne devienne un goulot d'étranglement dans le flux de travail, envisagez de mettre en œuvre une plateforme de gestion des clés pour assurer le suivi de ces clés et les garder en sécurité. Et même si vous n'utilisez pas la gestion centralisée des clés, veillez à ce que toutes les clés et tous les mots de passe soient protégés afin que les utilisateurs non autorisés ne puissent pas accéder à vos coffres-forts les plus sécurisés.
Consultez les pages du Secure Code Warrior pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients des ravages causés par d'autres failles de sécurité. Vous pouvez également essayer une démo d'un défi IaC sur la plateforme de formation Secure Code Warrior pour maintenir vos compétences en cybersécurité à jour.
Les organisations avisées adoptent le concept d'infrastructure en tant que code, et ce sont des développeurs comme vous qui peuvent contribuer de manière significative à l'élaboration d'un code sécurisé, même en dehors de la construction d'une application. Le chemin à parcourir peut sembler long au début, mais il en vaut la peine si vous voulez vous démarquer de vos pairs.
Avant de commencer ce nouveau chapitre de notre dernière série Coders Conquer Security, j'aimerais vous inviter à jouer à un défi gamifié de la vulnérabilité du stockage des données sensibles ; jouez maintenant et choisissez entre Kubernetes, Terraform, Ansible, Docker ou CloudFormation :
Comment cela s'est-il passé ? Si vos connaissances ont besoin d'être approfondies, lisez ce qui suit :
De nos jours, la protection des données critiques telles que les mots de passe, les informations personnelles et les dossiers financiers est la pierre angulaire de toute défense en matière de cybersécurité. À bien des égards, il s'agit à la fois d'une dernière ligne de défense et de l'un des meilleurs types de protection. En effet, même si un attaquant parvient à franchir d'autres défenses et à obtenir des fichiers critiques, cela ne lui servira pas à grand-chose tant qu'ils sont correctement hachés et stockés.
Il s'agit également d'une solide protection secondaire contre les initiés malveillants, car les fichiers cryptés peuvent avoir des clés ou des mots de passe distincts de ceux du reste du réseau. Dans ce cas, un administrateur système ou un pirate informatique ayant compromis les informations d'identification d'un administrateur peut être en mesure de naviguer dans un répertoire protégé, mais pas de déverrouiller les fichiers cryptés qu'il y trouve si la clé de cryptage est détenue ailleurs.
Bien entendu, toutes les méthodes de protection par cryptage reposent sur des normes de cryptage solides qui ne peuvent pas être transgressées par les ordinateurs les plus puissants.
Pourquoi la cryptographie non sécurisée est-elle dangereuse ?
En matière de technologie informatique, la capacité à créer des algorithmes de cryptage puissants et la capacité à les casser sont en concurrence depuis longtemps. En 1977, le gouvernement fédéral des États-Unis a mis au point la norme de cryptage des données (DES), un algorithme de 56 bits qui était considéré comme sûr à l'époque compte tenu de la puissance relative des ordinateurs.
Mais les ordinateurs ont évolué et les gens ont trouvé des moyens de les mettre en réseau de manière collaborative afin d'accroître encore leur puissance. En 1999, l'Electronic Frontier Foundation et Distributed.net ont collaboré pour casser publiquement le cryptage d'un document protégé par DES en seulement 22 heures. Soudain, tout document protégé par le cryptage DES n'était plus sûr.
Croyez-le ou non, certaines organisations protègent encore leurs fichiers critiques à l'aide de l'algorithme DES ou d'une protection de chiffrement aussi faible. Et alors qu'il fallait un réseau distribué pour casser le cryptage 56 bits en 1999, aujourd'hui, presque n'importe quel ordinateur autonome suffisamment puissant peut le faire avec un peu de temps. Les pirates ont également créé des machines dédiées au craquage, construites à partir de banques de processeurs graphiques (GPU). Ces GPU sont exceptionnellement performants pour cette tâche, sont relativement peu coûteux à obtenir et à mettre en réseau localement.
Si vous choisissez aujourd'hui de protéger vos fichiers critiques à l'aide d'un algorithme cryptographique peu sûr ou faible, il ne faudra pas longtemps pour que la plupart des pirates informatiques puissent décrypter ces fichiers et les rendre lisibles. Si vous êtes victime d'une violation de données, vous devez partir du principe que les fichiers seront finalement compromis s'ils n'ont pas été suffisamment protégés.
Par exemple, l'extrait de code Kubernetes suivant utilise un algorithme de chiffrement faible pour protéger les informations au niveau du contrôleur d'entrée NGINX :
apiVersion : v1
kind : ConfigMap
metadata :
name : nginx-load-balancer-conf
namespace : kube-system
data :
ssl-ciphers : DES-CBC3-SHA
ssl-protocols : "TLSv1.2"
Dans cet exemple, la suite de chiffrement DES a été utilisée pour protéger les informations. Toutefois, un pirate pourrait facilement la déchiffrer et accéder à des informations sensibles.
Il est recommandé d'utiliser des algorithmes de chiffrement puissants. Dans l'exemple Kubernetes suivant, des suites de chiffrement fortes ont été utilisées pour protéger les informations au niveau du contrôleur d'entrée NGINX :
apiVersion : v1
kind : ConfigMap
metadata :
name : nginx-load-balancer-conf
namespace : kube-system
data :
ssl-ciphers : |
ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384 :
ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305 :
ECDHE-ECDSA-AES128-GCM-SHA256 :ECDHE-RSA-AES128-GCM-SHA256 :
ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256 :
ECDHE-RSA-AES128-SHA256
ssl-protocols : "TLSv1.2"
Dans cet exemple, une série de chiffrements puissants a été utilisée afin d'éviter que des attaquants n'aient un accès potentiel à des informations sensibles.
Protéger les informations critiques grâce à un cryptage fort
Il existe aujourd'hui un système de cryptage fort qui est pratiquement inviolable. En 2001, le National Institute of Standards and Technology (NIST) a créé une nouvelle technologie de cryptage pour remplacer le DES. Appelée Advanced Encryption Standard (AES), elle utilise trois longueurs de clé différentes, soit 128, 192 ou 256 bits. Le cryptage AES 256 bits est le plus sûr, bien que les trois soient considérés comme presque totalement incassables compte tenu de la technologie actuelle. Des tests effectués avec des superordinateurs ont montré qu'il faudrait des milliers d'années de travail constant pour déchiffrer la plupart des documents protégés par AES.
Pour protéger correctement les fichiers critiques, les développeurs doivent d'abord les identifier. Il n'est pas nécessaire de tout crypter sur un réseau, car cela pourrait ralentir les opérations en raison du processus constant de cryptage et de décryptage. En revanche, les fichiers critiques tels que les dossiers du personnel, les données des clients et les informations financières doivent être protégés de manière adéquate. En fait, il s'agit de trouver un équilibre entre la sécurité et l'efficacité du système.
Ces données doivent être cryptées selon l'une des normes AES, voire 256 bits pour les informations réellement critiques qui ne doivent jamais tomber entre de mauvaises mains.
Un autre élément à prendre en compte est le fait que l'ajout du cryptage revient à ajouter des mots de passe à un site. Cela signifie que les utilisateurs autorisés devront assurer le suivi des clés de chiffrement. Pour éviter que cela ne devienne un goulot d'étranglement dans le flux de travail, envisagez de mettre en œuvre une plateforme de gestion des clés pour assurer le suivi de ces clés et les garder en sécurité. Et même si vous n'utilisez pas la gestion centralisée des clés, veillez à ce que toutes les clés et tous les mots de passe soient protégés afin que les utilisateurs non autorisés ne puissent pas accéder à vos coffres-forts les plus sécurisés.
Consultez les pages du Secure Code Warrior pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients des ravages causés par d'autres failles de sécurité. Vous pouvez également essayer une démo d'un défi IaC sur la plateforme de formation Secure Code Warrior pour maintenir vos compétences en cybersécurité à jour.
Cliquez sur le lien ci-dessous et téléchargez le PDF de cette ressource.
Secure Code Warrior est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.
Voir le rapportRéservez 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.
Les organisations avisées adoptent le concept d'infrastructure en tant que code, et ce sont des développeurs comme vous qui peuvent contribuer de manière significative à l'élaboration d'un code sécurisé, même en dehors de la construction d'une application. Le chemin à parcourir peut sembler long au début, mais il en vaut la peine si vous voulez vous démarquer de vos pairs.
Avant de commencer ce nouveau chapitre de notre dernière série Coders Conquer Security, j'aimerais vous inviter à jouer à un défi gamifié de la vulnérabilité du stockage des données sensibles ; jouez maintenant et choisissez entre Kubernetes, Terraform, Ansible, Docker ou CloudFormation :
Comment cela s'est-il passé ? Si vos connaissances ont besoin d'être approfondies, lisez ce qui suit :
De nos jours, la protection des données critiques telles que les mots de passe, les informations personnelles et les dossiers financiers est la pierre angulaire de toute défense en matière de cybersécurité. À bien des égards, il s'agit à la fois d'une dernière ligne de défense et de l'un des meilleurs types de protection. En effet, même si un attaquant parvient à franchir d'autres défenses et à obtenir des fichiers critiques, cela ne lui servira pas à grand-chose tant qu'ils sont correctement hachés et stockés.
Il s'agit également d'une solide protection secondaire contre les initiés malveillants, car les fichiers cryptés peuvent avoir des clés ou des mots de passe distincts de ceux du reste du réseau. Dans ce cas, un administrateur système ou un pirate informatique ayant compromis les informations d'identification d'un administrateur peut être en mesure de naviguer dans un répertoire protégé, mais pas de déverrouiller les fichiers cryptés qu'il y trouve si la clé de cryptage est détenue ailleurs.
Bien entendu, toutes les méthodes de protection par cryptage reposent sur des normes de cryptage solides qui ne peuvent pas être transgressées par les ordinateurs les plus puissants.
Pourquoi la cryptographie non sécurisée est-elle dangereuse ?
En matière de technologie informatique, la capacité à créer des algorithmes de cryptage puissants et la capacité à les casser sont en concurrence depuis longtemps. En 1977, le gouvernement fédéral des États-Unis a mis au point la norme de cryptage des données (DES), un algorithme de 56 bits qui était considéré comme sûr à l'époque compte tenu de la puissance relative des ordinateurs.
Mais les ordinateurs ont évolué et les gens ont trouvé des moyens de les mettre en réseau de manière collaborative afin d'accroître encore leur puissance. En 1999, l'Electronic Frontier Foundation et Distributed.net ont collaboré pour casser publiquement le cryptage d'un document protégé par DES en seulement 22 heures. Soudain, tout document protégé par le cryptage DES n'était plus sûr.
Croyez-le ou non, certaines organisations protègent encore leurs fichiers critiques à l'aide de l'algorithme DES ou d'une protection de chiffrement aussi faible. Et alors qu'il fallait un réseau distribué pour casser le cryptage 56 bits en 1999, aujourd'hui, presque n'importe quel ordinateur autonome suffisamment puissant peut le faire avec un peu de temps. Les pirates ont également créé des machines dédiées au craquage, construites à partir de banques de processeurs graphiques (GPU). Ces GPU sont exceptionnellement performants pour cette tâche, sont relativement peu coûteux à obtenir et à mettre en réseau localement.
Si vous choisissez aujourd'hui de protéger vos fichiers critiques à l'aide d'un algorithme cryptographique peu sûr ou faible, il ne faudra pas longtemps pour que la plupart des pirates informatiques puissent décrypter ces fichiers et les rendre lisibles. Si vous êtes victime d'une violation de données, vous devez partir du principe que les fichiers seront finalement compromis s'ils n'ont pas été suffisamment protégés.
Par exemple, l'extrait de code Kubernetes suivant utilise un algorithme de chiffrement faible pour protéger les informations au niveau du contrôleur d'entrée NGINX :
apiVersion : v1
kind : ConfigMap
metadata :
name : nginx-load-balancer-conf
namespace : kube-system
data :
ssl-ciphers : DES-CBC3-SHA
ssl-protocols : "TLSv1.2"
Dans cet exemple, la suite de chiffrement DES a été utilisée pour protéger les informations. Toutefois, un pirate pourrait facilement la déchiffrer et accéder à des informations sensibles.
Il est recommandé d'utiliser des algorithmes de chiffrement puissants. Dans l'exemple Kubernetes suivant, des suites de chiffrement fortes ont été utilisées pour protéger les informations au niveau du contrôleur d'entrée NGINX :
apiVersion : v1
kind : ConfigMap
metadata :
name : nginx-load-balancer-conf
namespace : kube-system
data :
ssl-ciphers : |
ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384 :
ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305 :
ECDHE-ECDSA-AES128-GCM-SHA256 :ECDHE-RSA-AES128-GCM-SHA256 :
ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256 :
ECDHE-RSA-AES128-SHA256
ssl-protocols : "TLSv1.2"
Dans cet exemple, une série de chiffrements puissants a été utilisée afin d'éviter que des attaquants n'aient un accès potentiel à des informations sensibles.
Protéger les informations critiques grâce à un cryptage fort
Il existe aujourd'hui un système de cryptage fort qui est pratiquement inviolable. En 2001, le National Institute of Standards and Technology (NIST) a créé une nouvelle technologie de cryptage pour remplacer le DES. Appelée Advanced Encryption Standard (AES), elle utilise trois longueurs de clé différentes, soit 128, 192 ou 256 bits. Le cryptage AES 256 bits est le plus sûr, bien que les trois soient considérés comme presque totalement incassables compte tenu de la technologie actuelle. Des tests effectués avec des superordinateurs ont montré qu'il faudrait des milliers d'années de travail constant pour déchiffrer la plupart des documents protégés par AES.
Pour protéger correctement les fichiers critiques, les développeurs doivent d'abord les identifier. Il n'est pas nécessaire de tout crypter sur un réseau, car cela pourrait ralentir les opérations en raison du processus constant de cryptage et de décryptage. En revanche, les fichiers critiques tels que les dossiers du personnel, les données des clients et les informations financières doivent être protégés de manière adéquate. En fait, il s'agit de trouver un équilibre entre la sécurité et l'efficacité du système.
Ces données doivent être cryptées selon l'une des normes AES, voire 256 bits pour les informations réellement critiques qui ne doivent jamais tomber entre de mauvaises mains.
Un autre élément à prendre en compte est le fait que l'ajout du cryptage revient à ajouter des mots de passe à un site. Cela signifie que les utilisateurs autorisés devront assurer le suivi des clés de chiffrement. Pour éviter que cela ne devienne un goulot d'étranglement dans le flux de travail, envisagez de mettre en œuvre une plateforme de gestion des clés pour assurer le suivi de ces clés et les garder en sécurité. Et même si vous n'utilisez pas la gestion centralisée des clés, veillez à ce que toutes les clés et tous les mots de passe soient protégés afin que les utilisateurs non autorisés ne puissent pas accéder à vos coffres-forts les plus sécurisés.
Consultez les pages du Secure Code Warrior pour en savoir plus sur cette vulnérabilité et sur la manière de protéger votre organisation et vos clients des ravages causés par d'autres failles de sécurité. Vous pouvez également essayer une démo d'un défi IaC sur la plateforme de formation Secure Code Warrior pour maintenir vos compétences en cybersécurité à jour.
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 est là pour vous aider à sécuriser le code tout au long du cycle de vie du développement logiciel et à créer une culture dans laquelle la cybersécurité est une priorité. Que vous soyez responsable AppSec, développeur, CISO ou toute autre personne impliquée dans la sécurité, nous pouvons aider votre organisation à réduire les risques associés à un code non sécurisé.
Réservez une démonstrationTéléchargerRessources pour vous aider à démarrer
Évaluation comparative des compétences en matière de sécurité : Rationalisation de la conception sécurisée dans l'entreprise
Le mouvement "Secure-by-Design" (conception sécurisée) est l'avenir du développement de logiciels sécurisés. Découvrez les éléments clés que les entreprises doivent garder à l'esprit lorsqu'elles envisagent une initiative de conception sécurisée.
DigitalOcean réduit sa dette de sécurité avec Secure Code Warrior
L'utilisation par DigitalOcean de la formation Secure Code Warrior a considérablement réduit la dette de sécurité, permettant aux équipes de se concentrer davantage sur l'innovation et la productivité. L'amélioration de la sécurité a renforcé la qualité des produits et l'avantage concurrentiel de l'entreprise. À l'avenir, le score de confiance SCW les aidera à améliorer leurs pratiques de sécurité et à continuer à stimuler l'innovation.
Ressources pour vous aider à démarrer
La note de confiance révèle la valeur des initiatives d'amélioration de la sécurité par la conception
Nos recherches ont montré que la formation au code sécurisé fonctionne. Le Trust Score, qui utilise un algorithme s'appuyant sur plus de 20 millions de points de données d'apprentissage issus du travail de plus de 250 000 apprenants dans plus de 600 organisations, révèle son efficacité à réduire les vulnérabilités et la manière de rendre l'initiative encore plus efficace.
Sécurité réactive contre sécurité préventive : La prévention est un meilleur remède
L'idée d'apporter une sécurité préventive aux codes et systèmes existants en même temps qu'aux applications plus récentes peut sembler décourageante, mais une approche "Secure-by-Design", mise en œuvre en améliorant les compétences des développeurs, permet d'appliquer les meilleures pratiques de sécurité à ces systèmes. C'est la meilleure chance qu'ont de nombreuses organisations d'améliorer leur sécurité.
Les avantages de l'évaluation des compétences des développeurs en matière de sécurité
L'importance croissante accordée au code sécurisé et aux principes de conception sécurisée exige que les développeurs soient formés à la cybersécurité dès le début du cycle de développement durable, et que des outils tels que le Trust Score de Secure Code Warriorles aident à mesurer et à améliorer leurs progrès.
Assurer le succès des initiatives de conception sécurisée de l'entreprise
Notre dernier document de recherche, Benchmarking Security Skills : Streamlining Secure-by-Design in the Enterprise est le résultat d'une analyse approfondie d'initiatives réelles de conception sécurisée au niveau de l'entreprise, et de l'élaboration d'approches de meilleures pratiques basées sur des conclusions fondées sur des données.