Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2021-44906 — Preuve de concept pour CVE-2021-44906 démontrant la pollution de prototype dans minimist via le contournement de Function.prototype, avec des exemples exécutables et une analyse technique détaillée de la chaîne d'exploitation. | Kitploit
Outils/GitHubGitHub/nevermoe/cve-2021-44906
Analyse des VulnérabilitésAnalyse de CodeExploitationExploitation d'Applications WebApprentissage et Éducation
GitHubnevermoe/cve-2021-44906

CVE-2021-44906

Preuve de concept pour CVE-2021-44906 démontrant la pollution de prototype dans minimist via le contournement de Function.prototype, avec des exemples exécutables et une analyse technique détaillée de la chaîne d'exploitation.

Voir le dépôt
6il y a 2 ansPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2021-44906

Initialement issu de : https://github.com/Marynk/JavaScript-vulnerability-detection/blob/main/minimist%20PoC.zip

Exécution

root@kitploit:~
npm run hack

Et vous verrez que la propriété done de n'importe quelle fonction est modifiée en true. L'explication de la ligne de commande node index.js --_.concat.constructor.prototype.done true :

  • -- est le tiret normalement utilisé dans les arguments de ligne de commande.
  • _ est la clé intégrée de minimist : https://github.com/minimistjs/minimist/blob/v1.2.5/index.js#L37
  • .concat.constructor.prototype.done true définira set _.concat.constructor.prototype.done sur true. Comme est de type , le prototype de toutes les verra une propriété appelée ajoutée.
_.concat.constructor
Function
Function
done

La raison pour laquelle la chaîne de prototypes est si longue est que, dans les correctifs précédents, le développeur a interdit __proto__, Arrary.prototype, Object.prototype, Number.prototype et String.prototype. Nous devons donc utiliser constructor, qui possède une propriété prototype et qui n'est pas sur liste noire.

Un autre exemple est :

root@kitploit:~
npm run hack2

Cependant, dans les deux exemples ci-dessus, nous ne pouvons que modifier les valeurs, pas la définition des fonctions.

Cause

Dans le correctif de CVE-2020-7598 (1.2.2), et dans 1.2.3, le développeur avait déjà corrigé certaines vulnérabilités en vérifiant __proto__, Arrary.prototype, Object.prototype, Number.prototype, String.prototype, mais il a oublié de vérifier Function.prototye. C'est pourquoi cette exploitation ne peut affecter que la propriété de Function. Pour le correctif de cette CVE, le développeur a vérifié Function.prototype ainsi que constructor : https://github.com/minimistjs/minimist/blob/v1.2.6/index.js#L73

Télécharger l’outil