CVE-2026-44351
fast-jwt: async key resolver के माध्यम से खाली HMAC secret स्वीकार किया गया - JWT auth bypass
- प्रकाशित
- 13 मई 2026
- अद्यतन
- 14 मई 2026
- सीएनए असाइन करना
- GitHub_M
- साक्ष्य देखे गए
- 15 सित॰ 2026
प्राथमिक सीवीएसएस
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:Nकम · अगले 30 दिन
- प्रतिशत
- 15.0%
- मॉडल दिनांक
- 21 सित॰ 2026
ईपीएसएस एक सांख्यिकीय अनुमान है, कोई निश्चितता या प्रभाव का माप नहीं। इसे सीवीएसएस, केईवी स्थिति, एक्सपोज़र और अपने वातावरण के साथ मिलाएं।
सारांश
fast-jwt एक तेज़ JSON Web Token (JWT) कार्यान्वयन प्रदान करता है। 6.2.4 से पहले, fast-jwt के async key-resolver प्रवाह में एक गंभीर authentication-bypass vulnerability किसी भी unauthenticated attacker को मनमाने JWTs बनाने की अनुमति देती है जिन्हें प्रामाणिक के रूप में स्वीकार किया जाता है। जब एप्लिकेशन का key resolver एक खाली स्ट्रिंग ('') लौटाता है, उदाहरण के लिए सामान्य keys[decoded.header.kid] || '' JWKS-शैली fallback के माध्यम से, fast-jwt इसे एक शून्य-लंबाई Buffer में परिवर्तित करता है, इसे crypto.createSecretKey को सौंपता है, इससे allowedAlgorithms = ['HS256','HS384','HS512'] प्राप्त करता है, और फिर एक खाली-key HMAC के विरुद्ध टोकन के हस्ताक्षर को सत्यापित करता है। हमलावर बस HMAC-SHA256(key='', input='${header}.${payload}') की गणना करता है, जिसे Node बिना किसी शिकायत के स्वीकार करता है — और verifier हमलावर द्वारा चुने गए payload (sub, admin, scopes, आदि) को प्रामाणिक के रूप में लौटाता है। यह vulnerability 6.2.4 में ठीक कर दी गई है।
स्रोत
1CVE-2026-44351 के लिए प्रूफ-ऑफ-कॉन्सेप्ट, जो fast-jwt <6.2.4 में एक ऑथेंटिकेशन बायपास है, जहाँ एक खाली HMAC key हमलावरों को मनमाने JWTs बनाने की अनुमति देती है जिन्हें वैध के रूप में स्वीकार किया जाता है।
जिम्मेदारीपूर्ण उपयोग
भेद्यता जानकारी का उपयोग केवल उन प्रणालियों पर करें जिनके मालिक आप हैं या परीक्षण के लिए अधिकृत हैं। किटप्लॉइट सार्वजनिक अनुसंधान मेटाडेटा से लिंक करता है और शोषण कोड या दुर्भावनापूर्ण पेलोड को संग्रहीत नहीं करता है।