Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2021-44906 | Kitploit
Strumenti/GitHubGitHub/nevermoe/cve-2021-44906
Analisi delle VulnerabilitàAnalisi del CodiceExploitSfruttamento di Applicazioni WebApprendimento e Formazione
GitHubnevermoe/cve-2021-44906

CVE-2021-44906

Vedi Repository
2 anni faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2021-44906

Originariamente da: https://github.com/Marynk/JavaScript-vulnerability-detection/blob/main/minimist%20PoC.zip

Esecuzione

root@kitploit:~
npm run hack

E vedrai che la proprietà done di qualsiasi funzione viene cambiata in true. La spiegazione del comando node index.js --_.concat.constructor.prototype.done true:

  • -- è il segno di trattino normalmente usato negli argomenti della riga di comando.
  • _ è la chiave incorporata in minimist: https://github.com/minimistjs/minimist/blob/v1.2.5/index.js#L37
  • .concat.constructor.prototype.done true imposterà _.concat.constructor.prototype.done a true. Poiché _.concat.constructor è di tipo Function, a tutti i prototipi di Function verrà aggiunta una proprietà chiamata done.

Il motivo per cui la catena dei prototipi è così lunga è che nelle correzioni precedenti lo sviluppatore ha bandito __proto__, Arrary.prototype, Object.prototype, Number.prototype e String.prototype. Quindi dobbiamo usare constructor, che ha una proprietà prototype e non è nella lista nera.

Un altro esempio è:

root@kitploit:~
npm run hack2

Tuttavia, nei due esempi precedenti, possiamo solo alterare i valori ma non le definizioni delle funzioni.

Causa

Nella correzione per CVE-2020-7598 (1.2.2), e nella 1.2.3, lo sviluppatore aveva già risolto alcune vulnerabilità controllando __proto__, Arrary.prototype, Object.prototype, Number.prototype, String.prototype, ma si è dimenticato di controllare Function.prototye. Questo è il motivo per cui questo exploit può colpire solo la proprietà di Function. Per la correzione di questa CVE, lo sviluppatore ha controllato Function.prototype oltre a constructor: https://github.com/minimistjs/minimist/blob/v1.2.6/index.js#L73

Scarica lo strumento