[security] deps: node-forge RSA PKCS#1 v1.5 (high) -- bloque upstream, suivi #123

Open
opened 2026-10-02 18:08:18 +00:00 by maximus · 1 comment
Owner

Detection

Detecte par le Defenseur defenseur-simpl-liste le 2026-10-02T05:15:09Z. Confirme par npm audit sur master (99ecb73) apres npm ci : 12 cles (8 high, 3 moderate, 1 low).

Findings

6 findings HIGH pour une seule advisory (inflation transitive) :

  • [HIGH] defenseur-simpl-liste-deps-npm-audit-simpl-liste-node-forge — GHSA 1240912, « RSA PKCS#1 v1.5 signature verification accepts extra nested DigestAlgorithm elements », borne <=1.4.0
  • [HIGH] ...-@expo/code-signing-certificates (parent direct de node-forge)
  • [HIGH] ...-@expo/cli (parent)
  • [HIGH] ...-expo (parent)
  • [HIGH] ...-@react-native-community/datetimepicker (via effects de expo)
  • [HIGH] ...-react-native-android-widget (via effects de expo)

Analyse

  • Plancher : la tete publiee node-forge@1.4.0 (dist-tag latest) est dans la borne du CVE. Aucune version corrigee. fixAvailable: false.
  • @expo/code-signing-certificates@0.0.7 (derniere) declare toujours node-forge: ^1.4.0.
  • Chemin : expo@54.0.34 -> @expo/cli@54.0.24 -> node-forge@1.4.0 et -> @expo/code-signing-certificates@0.0.6 -> node-forge.
  • Surface : CLI Expo (signature de manifestes au dev/build). Aucun import de node-forge dans app/ ni src/ ; le paquet n'est pas embarque dans l'APK. Severite effective : hardening, pas un incident.
  • Le fixAvailable propose pour datetimepicker (downgrade 8.1.1, semver-major) est un artefact de la cascade, a ne pas appliquer.

Resolution suggeree

Rien a corriger aujourd'hui. Surveiller les deux bouts :

npm view node-forge versions --json | jq '.[-1]'            # > 1.4.0 ?
npm view @expo/code-signing-certificates dependencies       # node-forge largue ?
npm view @expo/cli@<patch SDK 54> dependencies              # idem cote CLI

Des qu'une version hors borne existe : override "node-forge": "^<version>" (une seule version dans l'arbre, blanket acceptable), puis npm audit qui doit perdre 6 cles d'un coup.


Issue cree par /analyse-vulnerabilite. Le Defenseur ne porte pas encore l'etat accepted (rapport regenere a chaque scan, editer le JSON est un no-op). Pour un faux positif : fermer l'issue avec un commentaire d'analyse. Pour une vraie cause racine cote scanner : ouvrir une issue dans agent-defenseurs.

## Detection Detecte par le Defenseur **defenseur-simpl-liste** le 2026-10-02T05:15:09Z. Confirme par `npm audit` sur master (`99ecb73`) apres `npm ci` : 12 cles (8 high, 3 moderate, 1 low). ## Findings 6 findings HIGH pour **une seule advisory** (inflation transitive) : - [HIGH] `defenseur-simpl-liste-deps-npm-audit-simpl-liste-node-forge` — GHSA 1240912, « RSA PKCS#1 v1.5 signature verification accepts extra nested DigestAlgorithm elements », borne `<=1.4.0` - [HIGH] `...-@expo/code-signing-certificates` (parent direct de node-forge) - [HIGH] `...-@expo/cli` (parent) - [HIGH] `...-expo` (parent) - [HIGH] `...-@react-native-community/datetimepicker` (via `effects` de expo) - [HIGH] `...-react-native-android-widget` (via `effects` de expo) ## Analyse - **Plancher** : la tete publiee `node-forge@1.4.0` (dist-tag `latest`) est dans la borne du CVE. Aucune version corrigee. `fixAvailable: false`. - `@expo/code-signing-certificates@0.0.7` (derniere) declare toujours `node-forge: ^1.4.0`. - Chemin : `expo@54.0.34 -> @expo/cli@54.0.24 -> node-forge@1.4.0` et `-> @expo/code-signing-certificates@0.0.6 -> node-forge`. - **Surface** : CLI Expo (signature de manifestes au dev/build). Aucun import de `node-forge` dans `app/` ni `src/` ; le paquet n'est pas embarque dans l'APK. Severite effective : hardening, pas un incident. - Le `fixAvailable` propose pour datetimepicker (downgrade 8.1.1, semver-major) est un artefact de la cascade, a ne pas appliquer. ## Resolution suggeree Rien a corriger aujourd'hui. Surveiller les deux bouts : ```bash npm view node-forge versions --json | jq '.[-1]' # > 1.4.0 ? npm view @expo/code-signing-certificates dependencies # node-forge largue ? npm view @expo/cli@<patch SDK 54> dependencies # idem cote CLI ``` Des qu'une version hors borne existe : override `"node-forge": "^<version>"` (une seule version dans l'arbre, blanket acceptable), puis `npm audit` qui doit perdre 6 cles d'un coup. --- _Issue cree par /analyse-vulnerabilite. Le Defenseur ne porte pas encore l'etat `accepted` (rapport regenere a chaque scan, editer le JSON est un no-op). Pour un **faux positif** : fermer l'issue avec un commentaire d'analyse. Pour une **vraie cause racine cote scanner** : ouvrir une issue dans `agent-defenseurs`._
maximus added the
type:security
source:defenseur
labels 2026-10-02 18:08:18 +00:00
Author
Owner

Re-verification du 2026-10-05 : inchange. node-forge tete publiee 1.4.0 (borne <=1.4.0) ; @expo/code-signing-certificates@0.0.7 declare node-forge ^1.4.0 ; @expo/cli@54.0.27 (dernier patch SDK 54) declare toujours node-forge ^1.3.3. Le rapport Defenseur du 2026-10-05 porte GHSA-86w9-cpqp-85rv sur 7 cles (avec la cascade braces, suivie dans #130).

Re-verification du 2026-10-05 : inchange. `node-forge` tete publiee 1.4.0 (borne `<=1.4.0`) ; `@expo/code-signing-certificates@0.0.7` declare `node-forge ^1.4.0` ; `@expo/cli@54.0.27` (dernier patch SDK 54) declare toujours `node-forge ^1.3.3`. Le rapport Defenseur du 2026-10-05 porte GHSA-86w9-cpqp-85rv sur 7 cles (avec la cascade `braces`, suivie dans #130).
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#123
No description provided.