[security] deps: vulnerability in postcss (high) #102
Labels
No labels
autopilot:pending-human
source:analyste
source:defenseur
source:human
source:medic
status:approved
status:blocked
status:in-progress
status:needs-clarification
status:needs-fix
status:ready
status:review
status:triage
type:bug
type:feature
type:infra
type:refactor
type:schema
type:security
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: maximus/simpl-liste#102
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Détection
Détecté par le Défenseur defenseur-simpl-liste le 2026-07-27T05:15:10.727Z. Confirmé par
npm auditlive surmaster.Findings
defenseur-simpl-liste-deps-npm-audit-simpl-liste-postcss<=8.5.178.5.12expo > @expo/metro-config > postcss+tailwindcss > postcss-*Résolution suggérée
Un override blanket
postcss: ^8.5.10existe déjà danspackage.jsonmais le lock est figé à8.5.12(sous la version patchée). La première version same-major corrigée est 8.5.18 (dispo jusqu'à 8.5.23).Puis
npm install(la modif de borne force la re-résolution). Bump en place, non-breaking (reste en 8.5.x). Vérifiernpm audità 0 après.⚠️
npm auditproposefixAvailable: expo@57 (major)— faux signal : il ne recalcule pas l'override existant. Le fix same-major (8.5.18) suffit, pas besoin de bumper Expo en majeur.Issue créée par
/analyse-vulnerabilitedepuis le rapport du Défenseur defenseur-simpl-liste (2026-07-27T05:15:10.727Z), réconcilié avecnpm auditlive surmaster. Le Défenseur ne porte pas encore l'étataccepted(le rapport est régénéré à chaque scan, éditer le JSON est un no-op). Pour un faux positif : fermer l'issue avec un commentaire d'analyse. Pour une vraie cause racine côté scanner : ouvrir une issue dansagent-defenseurs.Analyse (/analyze)
Impact vérifié par exploration du codebase. Verdict : bump de borne, sans effet de bord.
package.json(blocoverrides) +package-lock.json. Aucun code applicatif (src/,app/,metro.config.js,tailwind.config.js,babel.config.js) n'importepostcss— dep purement transitive.src/global.css(les 3 directives@tailwind, CSS écrit par le dev) via Tailwind/Metro. La CVE (path traversal source-map) exige un CSS attaquant-contrôlé portant unsourceMappingURLhors projet → non atteignable. Aucune config source-map CSS à la racine (le seulpostcss.config.mjsest dans le sous-projetweb/, arbre d'install séparé, hors périmètre).postcss().process()) est stable sur toute la série 8.5.x.tests/smoke.test.cjs(harness anti-régression des overrides — validepackage.json, graphe d'import dewidgetState.ts, câblage patch-package après re-résolution du lock). Pas de jest ni de test bundler ; suffisant pour un same-major.Critères d'acceptation
npm auditne liste pluspostcssni ses transitifs (expo,@expo/cli,@expo/metro-config)npm test(smoke) vertreact-native-android-widgetreste en 0.21.0 (patch réappliqué)Complexité : Simple. Fixé groupé avec #104 (même conflict-component
package.json/package-lock.json).