CVE-2026-44351
fast-jwt: async key resolver के माध्यम से खाली HMAC secret स्वीकार किया गया - JWT auth bypass
- प्रकाशित
- 13 मई 2026
- अद्यतन
- 14 मई 2026
- सीएनए असाइन करना
- GitHub_M
- साक्ष्य देखे गए
- 15 सित॰ 2026
fast-jwt: async key resolver के माध्यम से खाली HMAC secret स्वीकार किया गया - JWT auth bypass
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:Nकम · अगले 30 दिन
ईपीएसएस एक सांख्यिकीय अनुमान है, कोई निश्चितता या प्रभाव का माप नहीं। इसे सीवीएसएस, केईवी स्थिति, एक्सपोज़र और अपने वातावरण के साथ मिलाएं।
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 में ठीक कर दी गई है।
CVE-2026-44351 के लिए प्रूफ-ऑफ-कॉन्सेप्ट, जो fast-jwt <6.2.4 में एक ऑथेंटिकेशन बायपास है, जहाँ एक खाली HMAC key हमलावरों को मनमाने JWTs बनाने की अनुमति देती है जिन्हें वैध के रूप में स्वीकार किया जाता है।
भेद्यता जानकारी का उपयोग केवल उन प्रणालियों पर करें जिनके मालिक आप हैं या परीक्षण के लिए अधिकृत हैं। किटप्लॉइट सार्वजनिक अनुसंधान मेटाडेटा से लिंक करता है और शोषण कोड या दुर्भावनापूर्ण पेलोड को संग्रहीत नहीं करता है।