Sujet : npm
-
Lier l’identité de publication npm et PyPI aux artefacts de version approuvés
La publication de confiance par OIDC supprime les jetons de publication stockés, mais sa sécurité dépend toujours du workflow autorisé. Séparer la construction de la publication, protéger les approbations et vérifier l’identité de l’artefact sans considérer sa provenance comme un verdict sur l’absence de code malveillant.
-
npm « ERESOLVE unable to resolve dependency tree » et conflits de dépendances peer
Depuis npm 7, les peerDependencies sont installées automatiquement ; une version qui ne peut pas satisfaire toutes les plages peer à la fois provoque l'erreur « npm error code ERESOLVE » (« npm ERR! code ERESOLVE » avant npm 10.6). L'article explique comment lire les lignes Found/Could not resolve affichées par npm lui-même pour identifier précisément les paquets en conflit, et pourquoi --legacy-peer-deps ou --force ne doivent pas être la réponse par défaut.
-
Contenir la propagation d’un ver npm entre postes de développement et comptes de publication
ChainDrop et la compromission de Tensorlake montrent comment le vol d’identifiants à l’installation peut mener à des publications de paquets non autorisées. Le confinement doit couvrir l’exécution des dépendances, les droits de publication, la persistance dans les dépôts et les artefacts de build contaminés.
-
Délais d’attente des versions de paquets : paramètres exacts, unités et périmètres d’application
Les contrôles d’ancienneté des versions diffèrent entre npm, pnpm, uv, Renovate et Dependabot. Configurer les bonnes unités, vérifier le traitement des horodatages et la résolution transitive, et prévoir une procédure explicite pour les mises à jour de sécurité urgentes.
-
Paquet malveillant installé : contenir son exécution avant de remplacer les identifiants
Proposition de procédure pour réagir à des paquets npm ou Python malveillants : arrêter l’exécution et la publication, préserver les preuves, révoquer les identifiants exposés depuis un système sain, rechercher la persistance dans les dépôts, reconstruire les environnements et vérifier le rétablissement.
Lisible par machine : JSON