[security] deps: vulnerability in tar (moderate) #104

Closed
opened 2026-07-28 22:02:48 +00:00 by maximus · 1 comment
Owner

Détection

Détecté par le Défenseur defenseur-simpl-liste le 2026-07-27T05:15:10.727Z. Confirmé par npm audit live sur master.

Findings

  • [MODERATE] defenseur-simpl-liste-deps-npm-audit-simpl-liste-tar
    • CVE : GHSA-r292-9mhp-454mnode-tar: Uncontrolled recursion in mapHas/filesFilter allows uncatchable stack-overflow DoS via crafted long-path tar
    • Range vulnérable : <=7.5.20
    • Version installée : 7.5.19
    • Chemin : expo > @expo/cli > tar

Re-occurrence de #99 : l'override @expo/cli.tar: ^7.5.19 posé à l'époque a été rattrapé par cette nouvelle CVE (<=7.5.20). Ce n'est pas un doublon.

Surface runtime : build/dev-time uniquement — ce package n'est pas bundlé dans l'APK livré. Sévérité effective = hardening (garder npm audit à 0), pas un incident runtime.

Résolution suggérée

Un override scopé @expo/cli > tar: ^7.5.19 existe déjà mais est figé à 7.5.19. La première version same-major corrigée est 7.5.21 (dispo jusqu'à 7.5.22).

// package.json > overrides
"@expo/cli": {
  "ws": "^8.20.1",
  "undici": "^6.27.0",
  "tar": "^7.5.21"
}

Puis npm install. Bump en place, non-breaking (reste en 7.5.x). Garder l'override scopé à @expo/cli (pas de blanket). Vérifier npm audit à 0 après.


Issue créée par /analyse-vulnerabilite depuis le rapport du Défenseur defenseur-simpl-liste (2026-07-27T05:15:10.727Z), réconcilié avec npm audit live sur master. Le Défenseur ne porte pas encore l'état accepted (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 dans agent-defenseurs.

## Détection Détecté par le Défenseur **defenseur-simpl-liste** le 2026-07-27T05:15:10.727Z. Confirmé par `npm audit` live sur `master`. ## Findings - **[MODERATE]** `defenseur-simpl-liste-deps-npm-audit-simpl-liste-tar` - CVE : [GHSA-r292-9mhp-454m](https://github.com/advisories/GHSA-r292-9mhp-454m) — *node-tar: Uncontrolled recursion in mapHas/filesFilter allows uncatchable stack-overflow DoS via crafted long-path tar* - Range vulnérable : `<=7.5.20` - Version installée : `7.5.19` - Chemin : `expo > @expo/cli > tar` > **Re-occurrence** de #99 : l'override `@expo/cli.tar: ^7.5.19` posé à l'époque a été rattrapé par cette nouvelle CVE (`<=7.5.20`). Ce n'est pas un doublon. > **Surface runtime** : build/dev-time uniquement — ce package n'est pas bundlé dans l'APK livré. Sévérité effective = **hardening** (garder `npm audit` à 0), pas un incident runtime. ## Résolution suggérée Un override scopé `@expo/cli > tar: ^7.5.19` existe déjà mais est figé à `7.5.19`. La première version same-major corrigée est **7.5.21** (dispo jusqu'à 7.5.22). ```jsonc // package.json > overrides "@expo/cli": { "ws": "^8.20.1", "undici": "^6.27.0", "tar": "^7.5.21" } ``` Puis `npm install`. Bump en place, non-breaking (reste en 7.5.x). Garder l'override **scopé à `@expo/cli`** (pas de blanket). Vérifier `npm audit` à 0 après. --- _Issue créée par `/analyse-vulnerabilite` depuis le rapport du Défenseur **defenseur-simpl-liste** (2026-07-27T05:15:10.727Z), réconcilié avec `npm audit` live sur `master`. Le Défenseur ne porte pas encore l'état `accepted` (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 dans `agent-defenseurs`._
maximus added the
type:security
source:defenseur
labels 2026-07-28 22:02:48 +00:00
Author
Owner

Analyse (/analyze)

Impact vérifié par exploration du codebase. Verdict : bump de borne, sans effet de bord.

  • Fichiers : package.json (override scopé @expo/cli.tar) + package-lock.json. Aucun import applicatif de tar.
  • Portée : npm ls tarinstance unique expo > @expo/cli > tar@7.5.19. L'override scopé @expo/cli.tar couvre 100 % de l'arbre, aucune autre instance ailleurs.
  • Nature du bump : 7.5.19 → 7.5.21, patch same-major. Garder l'override scopé (pas de blanket).
  • Surface de test : tests/smoke.test.cjs (voir #102).

Critères d'acceptation

  • npm audit ne liste plus tar
  • npm test (smoke) vert

Complexité : Simple. Fixé groupé avec #102.

## Analyse (/analyze) Impact vérifié par exploration du codebase. **Verdict : bump de borne, sans effet de bord.** - **Fichiers** : `package.json` (override scopé `@expo/cli.tar`) + `package-lock.json`. Aucun import applicatif de `tar`. - **Portée** : `npm ls tar` → **instance unique** `expo > @expo/cli > tar@7.5.19`. L'override scopé `@expo/cli.tar` couvre 100 % de l'arbre, aucune autre instance ailleurs. - **Nature du bump** : 7.5.19 → 7.5.21, patch same-major. Garder l'override **scopé** (pas de blanket). - **Surface de test** : `tests/smoke.test.cjs` (voir #102). **Critères d'acceptation** - [ ] `npm audit` ne liste plus `tar` - [ ] `npm test` (smoke) vert **Complexité** : Simple. Fixé groupé avec #102.
maximus added the
status:ready
label 2026-08-10 12:22:25 +00:00
maximus added
status:approved
and removed
status:ready
labels 2026-08-11 13:25:40 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: maximus/simpl-liste#104
No description provided.