
Utilisation de composants présentant des vulnérabilités connues
La plupart des applications utilisent un grand nombre de composants tiers. Ces composants fournissent tout, de la journalisation à la création de modèles, en passant par l'accès aux bases de données.
Cela facilite considérablement le développement de logiciels et permet un gain de temps considérable. Cependant, ces composants sont également créés par des personnes et certains d'entre eux comportent inévitablement des vulnérabilités. En d'autres termes, vous pourriez être exposé à des vulnérabilités susceptibles d'être exploitées à votre insu.
Maintenir les composants à jour
Il est généralement recommandé de maintenir régulièrement à jour les frameworks, bibliothèques et autres composants. Cela peut être réalisé de différentes manières, notamment :
- De nombreux logiciels de contrôle de source sont capables d'analyser les référentiels et d'émettre des alertes lorsque des vulnérabilités sont détectées dans les dépendances.
- De nombreux gestionnaires de paquets peuvent analyser les applications et identifier les dépendances vulnérables que les utilisateurs pourraient avoir.
- Il existe de nombreuses solutions d'analyse de la composition logicielle (SCA) permettant d'identifier les dépendances vulnérables.
Réduction des risques liés à la dette technique
L'un des aspects complexes de la mise à niveau d'une bibliothèque réside dans la possibilité de modifications susceptibles d'entraîner des ruptures de code. Bien que ces modifications soient souvent documentées, certaines peuvent ne pas être documentées et n'apparaître qu'une fois le code exécuté dans l'environnement de production.
Si l'application exécute plusieurs versions antérieures à la dernière version, la mise à niveau vers la dernière version peut nécessiter un travail considérable. Lorsque des vulnérabilités sensibles au facteur temps apparaissent, il est important de maintenir les composants tiers relativement à jour afin d'éviter que la mise à niveau ne prenne plusieurs jours.
De plus, bien que cela ne soit pas clairement indiqué, le package peut contenir des informations importantes concernant des modifications susceptibles d'affecter le fonctionnement de l'application. Il est donc déconseillé de procéder à la mise à niveau du package sans avoir préalablement lu les notes de mise à jour.
La mise à jour pourrait-elle compromettre la sécurité ?
Bien que cela soit rare, les vulnérabilités suivantes peuvent parfois survenir.
- Non disponible dans les versions précédentes.
- Prévu pour être introduit lors de la correction des vulnérabilités
Dans ce cas, il peut sembler préférable de ne pas mettre à jour régulièrement les paquets. Bien entendu, cette approche conduit à une accumulation de dette technique et doit donc être évitée autant que possible.
Ce scénario étant relativement rare, les avantages liés à la mise à jour fréquente des paquets l'emportent largement sur les risques liés à l'introduction de nouvelles vulnérabilités. En maintenant régulièrement vos systèmes à jour, vous pourrez facilement atténuer ces risques.
De plus, nous supposons que les fournisseurs ne corrigent pas discrètement les vulnérabilités sans les divulguer. Malheureusement, cela reste très courant.
Exemples notables
Vous trouverez ci-dessous quelques exemples notables que vous avez peut-être récemment observés. Vous comprendrez pourquoi il est important de vérifier la bibliothèque et de la maintenir à jour.