Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
Open-Source-Seal-Security — ओपन सोर्स पैकेज द्वारा tough-cookie 2.5.0 के उपयोग को ठीक करें - CVE-2023-26136, | Kitploit
उपकरण/GitHubGitHub/ronmadar/open-source-seal-security
स्थैतिक विश्लेषणभेद्यता विश्लेषणकोड विश्लेषणआपूर्ति श्रृंखला सुरक्षालर्निंग और शिक्षा
GitHubronmadar/open-source-seal-security

Open-Source-Seal-Security

ओपन सोर्स पैकेज द्वारा tough-cookie 2.5.0 के उपयोग को ठीक करें - CVE-2023-26136,

रिपॉजिटरी देखें

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
172 साल पहलेअभी तक समीक्षित नहीं
साझा करें

सील सिक्योरिटी प्रोजेक्ट : ओपन सोर्स इंजीनियर कार्य

पैकेज tough-cookie V2.5.0 का नया संस्करण बनाएं, क्रिटिकल भेद्यता CVE-2023-26136 को ठीक करने के लिए, प्रोजेक्ट Node.js V20 में लिखा गया है

पैकेज tough-cookie के 4.1.3 से पहले के संस्करण Prototype Pollution के प्रति संवेदनशील हैं, जो CookieJar का उपयोग rejectPublicSuffixes=false मोड में करने पर Cookies के अनुचित हैंडलिंग के कारण होता है। यह समस्या वस्तुओं के प्रारंभ किए जाने के तरीके से उत्पन्न होती है।

https://nvd.nist.gov/vuln/detail/CVE-2023-26136

Prototype Pollution एक भेद्यता है जो JavaScript को प्रभावित करती है। Prototype Pollution का तात्पर्य मौजूदा JavaScript भाषा निर्माण प्रोटोटाइप, जैसे ऑब्जेक्ट्स, में प्रॉपर्टीज़ इंजेक्ट करने की क्षमता से है। JavaScript सभी Object विशेषताओं को बदलने की अनुमति देता है, जिसमें उनकी जादुई विशेषताएँ जैसे proto, constructor और prototype शामिल हैं। एक हमलावर इन विशेषताओं में हेरफेर करता है ताकि JavaScript एप्लिकेशन के आधार ऑब्जेक्ट के ऑब्जेक्ट प्रोटोटाइप को अन्य मान इंजेक्ट करके अधिलेखित या प्रदूषित किया जा सके। Object.prototype पर मौजूद प्रॉपर्टीज़ फिर प्रोटोटाइप श्रृंखला के माध्यम से सभी JavaScript ऑब्जेक्ट्स द्वारा विरासत में मिल जाती हैं। जब ऐसा होता है, तो इससे या तो JavaScript exceptions ट्रिगर करके denial of service होता है, या यह एप्लिकेशन के सोर्स कोड के साथ छेड़छाड़ करता है ताकि हमलावर द्वारा इंजेक्ट किया गया कोड पथ लागू हो, जिससे remote code execution होता है।

प्रोटोटाइप का प्रदूषण होने के दो मुख्य तरीके हैं:

  • असुरक्षित Object रिकर्सिव मर्ज
  • पथ द्वारा प्रॉपर्टी परिभाषा

महत्वपूर्ण नोट: https://github.com/salesforce/tough-cookie/issues/282

https://security.snyk.io/package/npm/tough-cookie/2.5.0

=> MemoryCookieStore क्लास में भेद्यता को ठीक करने के लिए, आपको putCookie विधि को संशोधित करने की आवश्यकता है ताकि cookie.domain को proto पर सेट करने पर prototype pollution को रोका जा सके।

https://github.com/salesforce/tough-cookie/pull/283

a. tough_cookie_2.5.0\node_modules\tough-cookie\lib\memstore.js बदलें

memstore.js में नए ऑब्जेक्ट निर्माण की सभी घटनाओं को {} Object.create(Object.prototype) से Object.create(null) में बदल दिया गया है ताकि हम ऐसे ऑब्जेक्ट इंस्टेंस का उपयोग कर रहे हैं जिनके पास कोई prototype प्रॉपर्टी नहीं होती जिसे प्रदूषित किया जा सके।

  • उदाहरण : console.log(a = Object.create(null)); ऑब्जेक्ट a में - कोई प्रॉपर्टी नहीं (या __ proto __)

b. एक नई फ़ाइल बनाई गई, /node_modules/tough-cookie/lib/test-unit.js वेनिलाजेएस में उपयोग के लिए; इसके लिए यह tests फ़ोल्डर की फ़ाइल cookie_jar_test.js "Issue #282 - Prototype pollution" में पाया गया।

कमांड: node test-unit.js

c. एक नई फ़ाइल बनाई गई, /node_modules/tough-cookie/lib/testVerifyVulnerable.js सत्यापित करें कि संवेदनशील व्यवहार ठीक किया गया था।

कमांड: node testVerifyVulnerable.js

  1. change.diff : https://github.com/ronmadar/Open-Source-Seal-Security/blob/cf768f1932f087c30ebec7fe60c3fca323b4e54b/change.diff

a. नियमित पैकेज tough-cookie V 2.5.0

कमांड: npm install [email protected] && node index.js

b. परिवर्तनों के साथ tough-cookie V 2.5.0 पैकेज को tgz प्रारूप में संपीड़ित करें

कमांड: npm install ./tough-cookie-2.5.0-PATCHED.tgz && node index.js

c.

  • भेद्यता: यह भेद्यता सीधे Object. prototype को एक नई प्रॉपर्टी newProperty जोड़कर संशोधित करने से उत्पन्न होती है। इसका मतलब है कि JavaScript वातावरण का हर ऑब्जेक्ट इस प्रॉपर्टी को विरासत में प्राप्त करेगा, जिससे संभावित रूप से उनका व्यवहार अनजाने में बदल सकता है।

संभावित क्षति -

  • Prototype Pollution: Object. prototype में सीधे प्रॉपर्टीज़ जोड़ने से, पूरी प्रोटोटाइप श्रृंखला को प्रदूषित करने का जोखिम होता है। इससे एप्लिकेशन में अप्रत्याशित व्यवहार हो सकता है, क्योंकि प्रोटोटाइप श्रृंखला को पार करने वाला कोई भी ऑब्जेक्ट प्रभावित हो सकता है।
  • सुरक्षा जोखिम: वेब एप्लिकेशन संदर्भ में, prototype pollution का फायदा हमलावर ऑब्जेक्ट्स और प्रॉपर्टीज़ में हेरफेर करने के लिए उठा सकते हैं, जिससे संभावित रूप से सुरक्षा भेद्यताएँ उत्पन्न हो सकती हैं जैसे privilege escalation, information leakage।
  • संगतता समस्याएँ: Object. prototype जैसे मुख्य प्रोटोटाइप को संशोधित करने से अन्य लाइब्रेरीज़ या फ्रेमवर्क्स के साथ संगतता समस्याएँ उत्पन्न हो सकती हैं जो मानक व्यवहार पर निर्भर करते हैं। इससे डिपेंडेंसी को एकीकृत या अपडेट करते समय त्रुटियाँ या अप्रत्याशित व्यवहार हो सकता है। d. ऊपर लिखा गया।
  1. tough-cookie 2.5.0 के आपके फोर्क किए गए GitHub रिपॉजिटरी का लिंक https://github.com/ronmadar/tough-cookie

इस प्रोजेक्ट को कैसे इंस्टॉल करें

  1. इस प्रोजेक्ट को क्लोन करें
टूल डाउनलोड करें