Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2021-44906 | Kitploit
ツール/GitHubGitHub/nevermoe/cve-2021-44906
脆弱性分析コード分析エクスプロイトウェブアプリケーション悪用学習と教育
GitHubnevermoe/cve-2021-44906

CVE-2021-44906

リポジトリを見る
2年前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

CVE-2021-44906

元の出典: https://github.com/Marynk/JavaScript-vulnerability-detection/blob/main/minimist%20PoC.zip

実行

root@kitploit:~
npm run hack

そして、任意の関数の done プロパティが true に変更されるのを確認できます。 コマンドライン node index.js --_.concat.constructor.prototype.done true の説明:

  • -- は通常コマンドライン引数で使用されるハイフンマークです。
  • _ は minimist の組み込みキーです: https://github.com/minimistjs/minimist/blob/v1.2.5/index.js#L37
  • .concat.constructor.prototype.done true は _.concat.constructor.prototype.done を true に設定します。 _.concat.constructor は Function 型であるため、すべての Function のプロトタイプに done というプロパティが追加されます。

プロトタイプチェーンがこれほど長い理由は、以前の修正で開発者が __proto__、Arrary.prototype、Object.prototype、Number.prototype、String.prototype を禁止したためです。そのため、プロトタイププロパティを持ち、ブラックリストに載っていない constructor を使用する必要があります。

別の例:

root@kitploit:~
npm run hack2

ただし、上記の2つの例では、値を改ざんできるだけで、関数の定義は改ざんできません。

原因

CVE-2020-7598 (1.2.2) の修正、および 1.2.3 では、開発者は __proto__、Arrary.prototype、Object.prototype、Number.prototype、String.prototype をチェックすることでいくつかの脆弱性をすでに修正していましたが、 Function.prototye のチェックを忘れていました。これが、このエクスプロイトが Function のプロパティにしか影響しない理由です。 このCVEの修正では、開発者は Function.prototype と constructor をチェックしました: https://github.com/minimistjs/minimist/blob/v1.2.6/index.js#L73

ツールをダウンロード