Quel que soit le langage utilisé pour créer des applications web, on entend souvent dire qu'il faut éviter de réinventer la roue. Dans l'univers de Node, cela signifie utiliser des modules, via npm, modules qui fournissent la fonctionalité qui vous intéresse (envoyer des emails, gérer vos cookies, extraire des info d'une page tierce ...) : quelle que soit votre envie, il y a probablement déjà un package node qui peut le faire. Mais en bonus funeste, le salvateur module vient parfois avec une faille de sécurité. Il serait donc intéressant, crucial même avant une mise en production, de pouvoir faire un audit de tous les modules utilisés par votre application web Node.
C'est précisement ce que propose la task grunt "grunt-nsp-package". L'installation est simple :
npm install grunt-nsp-package --save-dev
Une fois ce package installé, il ne vous reste plus qu'à exécuter cette tâche grunt
grunt validate-package
Cette task va scanner votre fichier package.json
Seront scannées vos dépendances, mais également leurs propres dépendances récursivement. Vos modules contenant des vulnérabilités seront listés. La version incriminée d'un module sera indiquée, ainsi qu'une version ultérieure patchée pour parer à cette vulnérabilité.
Un site web associé permet également de se tenir au courant des vulnérabilités node nodesecurity.io