CVE-2026-4800
lodash vulnerabile a Code Injection tramite i nomi delle chiavi di importazione di _.template
- Pubblicato
- 31 mar 2026
- Aggiornato
- 14 set 2026
- Assegnazione CNA
- openjs
- Evidenza osservata
- 25 ago 2026
CVSS primario
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HBasso · prossimi 30 giorni
- Percentile
- 85,5%
- Data del modello
- 21 set 2026
L'EPSS è una stima statistica, non una certezza o una misura di impatto. Combinalo con CVSS, stato KEV, esposizione e ambiente.
Riepilogo
Impatto: La correzione per CVE-2021-23337 (https://github.com/advisories/GHSA-35jh-r3h4-6jhm) ha aggiunto la validazione per l'opzione variable in _.template ma non ha applicato la stessa validazione ai nomi delle chiavi di options.imports. Entrambi i percorsi confluiscono nello stesso sink del costruttore Function(). Quando un'applicazione passa input non attendibile come nomi delle chiavi di options.imports, un attaccante può iniettare espressioni di parametri predefiniti che eseguono codice arbitrario al momento della compilazione del template. Inoltre, _.template usa assignInWith per unire gli imports, che enumera le proprietà ereditate tramite for..in. Se Object.prototype è stato inquinato tramite qualsiasi altro vettore, le chiavi inquinate vengono copiate nell'oggetto imports e passate a Function(). Patch: Gli utenti dovrebbero aggiornare alla versione 4.18.0. Workaround: Non passare input non attendibile come nomi di chiavi in options.imports. Utilizzare solo nomi di chiavi statici controllati dallo sviluppatore.
Fonti
1Proof-of-concept che dimostra l'esecuzione remota di codice nel template di lodash tramite prototype pollution, con analisi dettagliata del flusso dell'attacco e della tecnica di sfruttamento.
Utilizzo responsabile
Utilizza le informazioni sulla vulnerabilità solo sui sistemi che possiedi o che sei autorizzato a testare. Kitploit si collega ai metadati della ricerca pubblica e non memorizza codici exploit o payload dannosi.