Directives

Utilisation de composants présentant des vulnérabilités connues

La plupart des applications utilisent une grande quantité de composants tiers. Ces composants assurent diverses fonctions, allant de la journalisation et du templating à l'accès aux bases de données, et bien plus encore.

Cela facilite grandement le développement de logiciels et permet un gain de temps considérable. Cependant, ces composants étant créés par des humains, certains contiendront inévitablement des vulnérabilités. Vous pourriez donc être exposé, sans le savoir, à des failles exploitables.

Maintenir les composants à jour

En règle générale, il est fortement recommandé de maintenir régulièrement à jour vos frameworks, bibliothèques et autres composants. Plusieurs méthodes permettent d'y parvenir :

  • De nombreux logiciels de gestion de versions peuvent analyser vos dépôts et vous alerter lorsqu'une vulnérabilité est détectée dans une dépendance
  • Beaucoup de gestionnaires de paquets peuvent analyser votre application et identifier les dépendances vulnérables
  • Il existe de nombreuses solutions d'analyse de composition logicielle (SCA) capables d'identifier toute dépendance vulnérable

Atténuer le risque lié à la dette technique

Un problème assez insidieux lié à la mise à jour des bibliothèques est qu'elles peuvent introduire des changements cassant le code existant. Bien que ces modifications soient souvent documentées, il peut exister des changements non documentés qui n'apparaîtront qu'une fois votre code en production.

Si votre application accuse un retard important sur les versions les plus récentes, la mise à jour peut nécessiter un travail considérable. En cas de divulgation d'une vulnérabilité critique, il est essentiel d'être relativement à jour sur vos composants tiers pour éviter une situation où la mise à jour prendrait plusieurs jours.

Il est également déconseillé de mettre à jour les paquets aveuglément sans au moins lire les notes de version, car elles peuvent contenir des informations importantes sur des changements subtils susceptibles d'altérer le fonctionnement de votre application.

Les mises à jour peuvent-elles réduire votre sécurité ?

Bien que cela soit rare, il est arrivé que des vulnérabilités puissent :

  • Ne pas exister dans les versions antérieures
  • Être introduites lors de la correction d'une autre vulnérabilité

Ces cas peuvent laisser penser qu'il n'est pas souhaitable de mettre à jour les paquets régulièrement. Bien entendu, ce raisonnement doit être évité autant que possible, car il conduit à une accumulation de dette technique.

Compte tenu de la rareté relative de ce scénario, les avantages d'une mise à jour fréquente des paquets l'emportent largement sur le risque d'introduction d'une nouvelle vulnérabilité, laquelle devrait être facilement atténuée si vous maintenez vos systèmes à jour régulièrement.

Cela suppose également que les éditeurs ne corrigent pas silencieusement les vulnérabilités sans aucune divulgation, ce qui est malheureusement encore très courant.

Exemples notables

Quelques exemples notables dont vous avez probablement entendu parler récemment sont listés ci-dessous. Vous pourrez constater comment et pourquoi il est important de vérifier vos bibliothèques et de vous assurer qu'elles sont à jour.

‍

Slogan

Le codage sécurisé en pratique

Explorez nos directives de développement sécurisé pour comprendre et atténuer les vulnérabilités logicielles telles que l'OWASP Top 10, et plongez dans des missions de formation guidées pour vous exercer sur des simulations d'applications réelles.

Autres directives
Réserver une démo