UNKNOWNCVE-2025-6547

pbkdf2 चुपचाप Uint8Array इनपुट को अनदेखा करता है, स्थिर कुंजियाँ लौटाता है

प्लेटफ़ॉर्म

nodejs

कॉम्पोनेन्ट

pbkdf2

ठीक किया गया

3.1.3

### सारांश ऐतिहासिक लेकिन समर्थित Node.js संस्करणों (0.12-2.x) पर, pbkdf2 चुपचाप Uint8Array इनपुट को अनदेखा करता है यह केवल Node.js <3.0.0 को प्रभावित करता है, लेकिन `pbkdf2` का दावा है: * Node.js [>= 0.12](https://github.com/browserify/pbkdf2/blob/v3.1.2/package.json#L62) का समर्थन करें (और ऐसा लगता है कि इस रेपो में इसे बनाए रखने के लिए चल रहा प्रयास है) * `Uint8Array` इनपुट का समर्थन करें (इनपुट को Uint8Array के विरुद्ध टाइपचेक किया जाता है, और त्रुटि संदेश में उदाहरण के लिए "Password must be a string, a Buffer, a typed array or a DataView" शामिल है ### विवरण त्रुटि `toBuffer` विधि में है यह भेद्यता किसी तरह परीक्षणों तक भी पहुँच गई: https://github.com/browserify/pbkdf2/commit/eb9f97a66ed83836bebc4ff563a1588248708501 वहाँ, `resultsOld` (जहाँ बेमेल `results`) खाली पासवर्ड/साल्ट से उत्पन्न अमान्य आउटपुट है, न कि आपूर्ति किए गए पासवर्ड/साल्ट से ### PoC Node.js/io.js < 3.0.0 पर ```console > require('pbkdf2').pbkdf2Sync(new Uint8Array([1,2,3]), new Uint8Array([1,3,4]), 1024, 32, 'sha256') <Buffer 21 53 cd 5b a5 f0 15 39 2f 68 e2 40 8b 21 ba ca 0e dc 7b 20 d5 45 a4 8a ea b5 95 9f f0 be bf 66> // लेकिन यह खाली पासवर्ड के साथ खाली डेटा का हैश है: > require('pbkdf2').pbkdf2Sync('', '', 1024,

कैसे ठीक करें

कोई आधिकारिक पैच उपलब्ध नहीं है। वैकल्पिक समाधान खोजें या अपडेट की निगरानी करें।

अपनी निर्भरताओं की स्वचालित निगरानी करें

जब नई कमज़ोरियाँ आपके प्रोजेक्ट को प्रभावित करें तो अलर्ट पाएं।

मुफ़्त शुरू करें