Skip to the content.

🔐 SĂ©curitĂ©

DĂ©pendances directes et indirectes

Les projets possĂ©dant des dĂ©pendances indirectes sont bien plus vulnĂ©rables comme le montre cette rĂ©cente Ă©tude ou cet article de snyk. Le grand problĂšme est qu’il devient difficile de simplement corriger une faille de sĂ©curitĂ© rapidement puisqu’elle n’est pas directement liĂ©e Ă  la dĂ©pendance que vous utilisez.

Évitez Ă  tout prix les packages avec des dĂ©pendances dĂ©passant une profondeur de 2-3 packages (cela introduit toujours plusieurs dĂ©pendances indirectes Ă  maintenir et sĂ©curiser ce qui peut trĂšs vite devenir complexe).

Le projet NodeSecure permet d’analyser en profondeur les dĂ©pendances d’un projet ou d’un package npm.

NodeSecure

[!IMPORTANT] Attention Ă  ne pas non plus tomber dans la parano. Il n’est pas non plus, tout le temps simple, de rĂ©soudre des problĂ©matiques en quelques packages. L’important est d’ĂȘtre conscient du problĂšme et de faire attention.

Supply chain attack

Attaque de la chaĂźne d’approvisionnement en français. Pour un acteur malveillant il est ici question d’attaquer Ă  un Ă©lĂ©ment tiers comme vos dĂ©pendances, votre CI ou tout autres composants qui pourrait devenir vulnĂ©rable et donner accĂšs Ă  des informations sensibles.

En quelques annĂ©es cela est devenu un problĂšme trĂšs important et massivement exploitĂ© pour diverses attaques. Des initiatives et outils comme SLSA et Sigstore on vu le jour dans l’objectif de garantir la provenance d’artifacts (packages etc..).

Des startups ont lĂ  aussi vu le jour comme Socket.dev dans l’objectif d’apporter des solutions professionnelles viables (notamment Ă  l’écosystĂšme JavaScript).

SBOM

Pour diverses raisons, vous pourriez ĂȘtre amenĂ© Ă  rĂ©aliser un inventaire de vos dĂ©pendances (artĂ©facts). Des standards et outils comme CycloneDX vous permettront de gĂ©nĂ©rer facilement un fichier JSON, aisĂ©ment analysable par des tiers (comme Snyk).

De mon cĂŽtĂ© j’utilise le CLI cdxgen pour gĂ©nĂ©rer un inventaire compliant Ă  partir du package.json.


âŹ…ïž 🔐 SĂ©curitĂ©: Garder sous contrĂŽle votre Environnement | âžĄïž 🔐 SĂ©curitĂ©: Faille de sĂ©curitĂ© courante