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

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

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

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

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

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
CVE-2025-65945-poc — CVE-2025-65945 के लिए प्रूफ ऑफ कॉन्सेप्ट (node-jws में क्रिप्टोग्राफिक हस्ताक्षर का अनुचित सत्यापन) | Kitploit
उपकरण/GitHubGitHub/jedisct1/cve-2025-65945-poc
भेद्यता विश्लेषणशोषणवेब एप्लिकेशन शोषणक्रिप्टोग्राफीपेनिट्रेशन टेस्टिंगप्रमाणीकरण
GitHubjedisct1/cve-2025-65945-poc

CVE-2025-65945-poc

CVE-2025-65945 के लिए प्रूफ ऑफ कॉन्सेप्ट (node-jws में क्रिप्टोग्राफिक हस्ताक्षर का अनुचित सत्यापन)

रिपॉजिटरी देखें
5179 महीने पहलेअभी तक समीक्षित नहीं

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

सभी देखें →

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

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

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

सभी उपकरण देखें →
साझा करें

CVE-2025-65945: node-jws हस्ताक्षर बाईपास

यह node-jws लाइब्रेरी में हस्ताक्षर सत्यापन बाईपास के लिए एक प्रूफ ऑफ कॉन्सेप्ट है। यह बग हमलावरों को वैध JWT बनाने की अनुमति देता है जब सर्वर उपयोगकर्ता-नियंत्रित डेटा से HMAC रहस्य प्राप्त करता है।

बग क्या है?

jws.createVerify() फ़ंक्शन यह मान्य नहीं करता कि HMAC एल्गोरिदम का उपयोग करते समय वास्तव में एक रहस्य प्रदान किया गया था। यदि आपका ऐप JWT में किसी चीज़ (जैसे kid हेडर) के आधार पर रहस्य खोजता है और वह खोज विफल होती है, तो आप एक खाली रहस्य के विरुद्ध सत्यापन कर सकते हैं।

एक हमलावर इसका शोषण इस प्रकार कर सकता है:

  1. आपके डेटाबेस में मौजूद नहीं रहने वाले नकली कुंजी ID के साथ एक JWT भेजना
  2. अपने दुर्भावनापूर्ण पेलोड को एक खाली स्ट्रिंग के रूप में रहस्य के साथ हस्ताक्षरित करना
  3. आपका सर्वर खोज undefined लौटाता है, जो खाली स्ट्रिंग में बदल जाता है
  4. दोनों पक्ष अब "रहस्य" (खाली स्ट्रिंग) पर सहमत हो जाते हैं, इसलिए हस्ताक्षर मान्य हो जाता है

हमलावर अब किसी का भी रूप धारण कर सकता है या स्वयं को व्यवस्थापक विशेषाधिकार प्रदान कर सकता है।

प्रभावित संस्करण

  • jws 3.2.2 और उससे पहले
  • jws 4.0.0

इसे ठीक करने के लिए 3.2.3+ या 4.0.1+ पर अपग्रेड करें।

PoC चलाना

सुनिश्चित करें कि आपके पास Bun स्थापित है, फिर:

# कमजोर संस्करण स्थापित करें
bun install [email protected]

# एक्सप्लॉइट चलाएं
bun run exploit.js

आपको आउटपुट दिखना चाहिए जो एक जाली व्यवस्थापक टोकन को वैध के रूप में स्वीकार किए जाने को दर्शाता है।

एक्सप्लॉइट क्या करता है?

PoC एक सर्वर का अनुकरण करता है जो:

  • एक गुप्त भंडार है जिसमें कुछ API कुंजियाँ हैं
  • JWT के kid (कुंजी ID) हेडर के आधार पर रहस्य खोजता है
  • स्ट्रीमिंग API के साथ createVerify() का उपयोग करता है

हमलावर kid: "non-existent-key" के साथ एक JWT बनाता है और उसे एक खाली रहस्य के साथ हस्ताक्षरित करता है। जब सर्वर इस कुंजी को खोजने का प्रयास करता है, तो उसे undefined मिलता है, सत्यापन स्ट्रीम में एक खाली स्ट्रिंग लिखता है, और जाली टोकन सत्यापन पास कर लेता है।

फिक्स का परीक्षण

# पैच किए गए संस्करण में अपग्रेड करें
bun install [email protected]

# फिर से चलाएं - अब विफल होना चाहिए
bun run exploit.js

पैच किए गए संस्करण के साथ, आपको एक त्रुटि दिखाई देगी: secret must be a string or buffer or a KeyObject। फिक्स यह सत्यापित करता है कि HMAC संचालन में आगे बढ़ने से पहले एक उचित रहस्य है।

कमजोर कोड पैटर्न

यदि आपका कोड कुछ इस तरह दिखता है, तो आप प्रभावित हो सकते हैं:

const decoded = jws.decode(token);
const secret = lookupSecret(decoded.header.kid); // might return undefined!

const verifier = jws.createVerify({
  algorithm: "HS256",
  signature: token,
});

verifier.secret.write(secret); // oops
verifier.secret.end();

संदर्भ

  • गिटहब सलाह
  • फिक्स कमिट
टूल डाउनलोड करें