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

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

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

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

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
CVE-2023-26136 — このリポジトリには、CVE-2023-26136 脆弱性に対する解決策が含まれています。 | Kitploit
ツール/GitHubGitHub/morrisel/cve-2023-26136
静的分析脆弱性分析コード分析サプライチェーンセキュリティ論文と研究学習と教育
GitHubmorrisel/cve-2023-26136

CVE-2023-26136

このリポジトリには、CVE-2023-26136 脆弱性に対する解決策が含まれています。

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

人気

すべて見る →

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

すべてのツールを探索

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

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

CVE-2023-26136 脆弱性に関する調査

説明

tough-cookie パッケージのバージョン 4.1.3 より前のバージョンは、rejectPublicSuffixes=false モードで CookieJar を使用する際の Cookie の不適切な処理により、プロトタイプ汚染に対して脆弱です。この問題は、オブジェクトの初期化方法に起因します。

目的と修正

このプロジェクトは、[email protected] のパッチ適用版を提供し、CVE-2023-26136 の脆弱性を排除しつつ、後方互換性を確保することを目的としています。

脆弱性を修正するために、memstore.js を変更し、標準のオブジェクト初期化を Object.create(null) に置き換えることで、プロトタイプ汚染のリスクなしに Cookie をオブジェクトに保存するようにしました。これにより、悪意を持って細工された Cookie 名によるプロトタイプ操作を防ぎます。

構造

tough-cookie/ ディレクトリ内には、tough-cookie のオリジナル版とパッチ適用版を含む 2 つの追加ディレクトリがあります。

  1. オリジナル版 (Original v2.5.0/) – 脆弱性のある未修正の tough-cookie 2.5.0。
  2. パッチ適用版 (v2.5.0-PATCHED/) – CVE-2023-26136 の修正を含む修正版。

インストール

オリジナルの脆弱なバージョンをインストールするには:

root@kitploit:~
npm install [email protected]

パッチの詳細

適用されたパッチでは、Cookie の保存方法が変更されています: this.idx = {}; から this.idx = Object.create(null); に変更されました。

これにより、攻撃者がプロトタイプチェーンにプロパティを注入し、脆弱性を悪用することを防ぎます。

tough-cookie (CVE-2023-26136) の脆弱性は、Cookie を保存するためにプレーンな JavaScript オブジェクト {} を使用することに起因します。{} は Object.prototype を継承しているため、proto のようなプロパティを注入することで悪用され、プロトタイプ汚染につながる可能性があります。これにより、攻撃者がアプリケーションの動作を操作したり、セキュリティ問題を引き起こしたりする可能性があります。

これを軽減するために、パッチは {} を Object.create(null) に置き換えます。これにより、プロトタイプを持たないオブジェクト ([[Prototype]]: null) が作成されます。これにより、オブジェクトが Object.prototype からプロパティを継承しないことが保証され、攻撃者が悪意のあるプロパティを注入するのを防ぎます。

Object.create(null) を使用することで、Cookie ストアを意図しないプロトタイプ継承から効果的に隔離し、プロトタイプ汚染攻撃に対してより安全にします。

インストールガイドとパッチの適用手順

パッチ適用版をローカルにインストールするには、次の手順に従ってください。

  1. パッチ適用パッケージを展開する (確認のためのオプション):

tar -tzf tough-cookie-2.5.0.tgz

必要に応じて、展開します:

tar -xzf tough-cookie-2.5.0.tgz

  1. パッチ適用パッケージをインストールする:

npm install ./tough-cookie-2.5.0.tgz

  1. 修正を確認する: テストスクリプトを実行する:

node index.js

期待される出力:

EXPLOITED SUCCESSFULLY - オリジナル版の場合

EXPLOIT FAILED - パッチ適用版の場合

Node.js 互換性

パッチ適用版は Node.js 20 (LTS) でテストされ、最新の安定したランタイム環境との互換性を確認しています。

リポジトリとフォーク

元の tough-cookie リポジトリ (Salesforce) は現在バージョン 5.1.1 です。バージョン 2.5.0 を扱っているため、メインリポジトリから直接フォークすることはできません。代わりに、オリジナル版とパッチ適用版の両方を含む別のリポジトリを作成しました。こちらから見つけることができます:

GitHub Repository - Forked Version

CI/CD

  • この調査では CI/CD ツールは使用されていません。
  • Docker の知識あり (基本レベル)。

参考文献

詳細については、公式の CVE ページをご覧ください: CVE-2023-26136 - NVD

ツールをダウンロード