Composants présentant des vulnérabilités connues
Le CVE est public. Votre arbre de dépendances est la seule inconnue.
Qu'est-ce que Composants présentant des vulnérabilités connues?
L'attaquant et le défenseur ont lu le même avis le même jour. L’attaquant a besoin que la version défectueuse soit exécutée au même endroit ; vous devez trouver chaque correspondance dans l'arborescence des dépendances, la corriger, la tester et la déployer. Vous allez tester une fonctionnalité d'importation, apprendre sa version de bibliothèque à partir de la réponse et envoyer un fichier qu'un CVE publié transforme en exécution de code. Ensuite, vous accédez à la version corrigée, passez à une reconstruction de données uniquement et connectez un scanner de fichier de verrouillage à CI afin que le prochain avis arrive comme un échec de construction.
Ce que vous apprendrez dans Composants présentant des vulnérabilités connues
- Reconnaître l'exposition aux vulnérabilités connues comme étant l'écart entre la publication du CVE et le déploiement de la dépendance corrigée, et l'analyse automatisée comme le contrôle qui la réduit
- Lire un avis CVE et mapper ses versions concernées par rapport à la dépendance épinglée d'un projet
- Appliquez l'augmentation des dépendances comme correctif immédiat et l'intégration OSV, Snyk, Dependabot ou npm-audit CI comme correctif systémique
- Comprendre qu'un composant vulnérable peut exécuter une entrée fournie par un attaquant même lorsque le code de l'application environnante est écrit correctement
- Ajoutez une défense en profondeur pour la désérialisation : reconstruisez les entrées non fiables sous forme de données simples, jamais sous forme d'objets typés riches, et exécutez le service avec le moindre privilège.
Composants présentant des vulnérabilités connues — Étapes de la formation
-
La fonctionnalité d'importation
Verric permet à un client d'exporter un tableau de bord enregistré sous forme de petit fichier et de l'importer dans un autre espace de travail. L'importation ne se fait pas dans le navigateur : les propres serveurs de Verric lisent le fichier téléchargé et reconstruisent le tableau de bord à partir de celui-ci. Bob ouvre la fonctionnalité pour voir comment elle fonctionne avant de la toucher.
-
Où le fichier est reconstruit
Une ligne sur cette page est la seule raison pour laquelle Bob est intéressé.
-
Importer un fichier normal
Tout d’abord, observez le comportement normal de la fonctionnalité. Bob joint un tableau de bord exporté ordinaire et l'importe. Le panneau Réseau du navigateur enregistre la demande et la réponse du serveur, exactement ce qu'un développeur voit dans DevTools.
-
Qu'est-ce qui a reconstruit le fichier
Le tableau de bord importé proprement. Un champ de la réponse est plus utile à Bob que l'importation elle-même.
-
Rechercher la bibliothèque
Bob ouvre un registre de packages public pour voir ce qui a été signalé concernant cette bibliothèque. Il saisit lui-même l’adresse du registre dans le navigateur, puis la recherche.
-
Vérifiez la version épinglée
La dernière version, 2.4.6, est propre. Bob a besoin de la version que Verric exécute réellement, 2.4.1, celle nommée dans la réponse d'importation. Il le sélectionne dans la liste des versions pour voir son état de sécurité.
-
Partir d'un fichier normal
Bob ouvre un tableau de bord exporté ordinaire dans son éditeur. Pour l’instant, c’est exactement à quoi cela ressemble : un titre et un graphique.
-
Armer le fichier
Bob modifie un champ. Il remplace le widget graphique par un type générateur de processus portant une commande shell, directement issu de la preuve de concept de l'avis. Le fichier est toujours analysé comme un tableau de bord.
-
Le gadget
Deux lignes suffisent.
-
Téléchargez le fichier contrefait
Bob importe son fichier contrefait via la même fonctionnalité. Pour le navigateur, il s'agit simplement d'un autre téléchargement.
Couverture des référentiels de sécurité
OWASP Top 10
- A03:2025 Software Supply Chain Failures
- A06:2021 Vulnerable and Outdated Components
CWE
- CWE-1104 Use of Unmaintained Third Party Components
- CWE-1395 Dependency on Vulnerable Third-Party Component
CIS Controls
- CIS 16 Application Software Security
- CIS 7 Continuous Vulnerability Management
NIST CSF
- PR.AT-02 Individuals in specialized roles are provided with awareness and training so that they possess the knowledge and skills to perform relevant tasks with cybersecurity risks in mind
- PR.PS Platform Security
- ID.RA Risk Assessment