प्लेटफ़ॉर्म
javascript
घटक
handlebars
में ठीक किया गया
4.0.1
Handlebars.js एक शक्तिशाली टेम्पलेट इंजन है जो उपयोगकर्ताओं को अर्थपूर्ण टेम्पलेट बनाने की अनुमति देता है। CVE-2026-33940 Handlebars.js में एक रिमोट कोड एग्जीक्यूशन (RCE) भेद्यता है। एक दुर्भावनापूर्ण ऑब्जेक्ट टेम्पलेट संदर्भ में होने पर resolvePartial() में सभी सशर्त गार्डों को बायपास कर सकता है, जिससे मनमाना कोड निष्पादित हो सकता है। यह भेद्यता Handlebars.js के संस्करण 4.0.0 से 4.7.8 तक के संस्करणों को प्रभावित करती है। संस्करण 4.7.9 में इस समस्या का समाधान किया गया है।
यह भेद्यता हमलावर को सर्वर पर मनमाना कोड निष्पादित करने की अनुमति देती है। हमलावर टेम्पलेट संदर्भ में एक दुर्भावनापूर्ण ऑब्जेक्ट इंजेक्ट कर सकता है, जिससे resolvePartial() फ़ंक्शन में सभी सशर्त गार्डों को बायपास किया जा सकता है। इससे invokePartial() फ़ंक्शन undefined लौटाएगा, जिसे Handlebars रनटाइम तब अनसुलझे आंशिक के स्रोत के रूप में मानेगा जिसे संकलित करने की आवश्यकता है। यह दुर्भावनापूर्ण ऑब्जेक्ट को env.compile() फ़ंक्शन में पास करता है, जिससे अंततः सर्वर पर मनमाना कोड निष्पादित होता है। इस भेद्यता का उपयोग सर्वर से संवेदनशील डेटा चोरी करने, सिस्टम को दूषित करने या अन्य दुर्भावनापूर्ण गतिविधियाँ करने के लिए किया जा सकता है। यह भेद्यता Log4Shell जैसे शोषण पैटर्न के समान है, जहां इनपुट को नियंत्रित करने से मनमाना कोड निष्पादित हो सकता है।
CVE-2026-33940 को अभी तक सक्रिय रूप से शोषण करते हुए नहीं देखा गया है, लेकिन इसकी उच्च CVSS स्कोर और RCE क्षमता के कारण यह एक महत्वपूर्ण जोखिम है। यह KEV (Know Exploited Vulnerabilities) सूची में शामिल नहीं है, लेकिन EPSS (Exploit Prediction Score System) स्कोर मध्यम से उच्च होने की संभावना है, जो सार्वजनिक शोषण के विकास की संभावना को दर्शाता है। 2026-03-27 को CVE प्रकाशित किया गया था। सार्वजनिक प्रूफ-ऑफ-कॉन्सेप्ट (PoC) अभी तक उपलब्ध नहीं है, लेकिन भेद्यता की प्रकृति को देखते हुए, यह जल्द ही उपलब्ध हो सकता है।
Applications that rely on Handlebars.js for templating, particularly those that accept user-supplied data directly into the template context, are at significant risk. This includes web applications, Node.js servers, and any other environment where Handlebars.js is used to render dynamic content. Shared hosting environments where multiple applications share the same Handlebars.js instance are also particularly vulnerable.
• javascript / server: Inspect template context inputs for unusual or unexpected data structures. Look for deeply nested objects or properties that could be exploited.
// Example: Check for suspicious properties in the template context
function validateContext(context) {
if (typeof context === 'object' && context !== null) {
for (const key in context) {
if (typeof context[key] === 'object' && context[key] !== null) {
// Recursively check nested objects
validateContext(context[key]);
}
}
}
}• javascript / server: Monitor server logs for errors related to Handlebars.js template compilation or execution. Look for patterns that might indicate an attempted injection attack. • javascript / server: Use static analysis tools to scan Handlebars.js templates for potential vulnerabilities, such as insecure use of template variables.
disclosure
एक्सप्लॉइट स्थिति
EPSS
0.06% (18% शतमक)
CISA SSVC
CVSS वेक्टर
CVE-2026-33940 को कम करने के लिए, Handlebars.js को संस्करण 4.7.9 या बाद के संस्करण में अपग्रेड करना आवश्यक है। यदि अपग्रेड करना संभव नहीं है, तो एक अस्थायी समाधान के रूप में, टेम्पलेट संदर्भ में उपयोगकर्ता-नियंत्रित डेटा को पास करने से बचें। यदि ऐसा करना आवश्यक है, तो डेटा को ठीक से सैनिटाइज करें ताकि दुर्भावनापूर्ण ऑब्जेक्ट को इंजेक्ट करने से रोका जा सके। वेब एप्लिकेशन फ़ायरवॉल (WAF) का उपयोग करके टेम्पलेट इंजेक्शन हमलों को भी ब्लॉक किया जा सकता है। WAF नियमों को resolvePartial() फ़ंक्शन में असामान्य इनपुट पैटर्न का पता लगाने के लिए कॉन्फ़िगर किया जाना चाहिए। इसके अतिरिक्त, सर्वर-साइड टेम्पलेटिंग के लिए सुरक्षित विकल्पों का उपयोग करने पर विचार करें। अपग्रेड के बाद, यह सुनिश्चित करने के लिए कि भेद्यता ठीक हो गई है, टेम्पलेट को मान्य करें और परीक्षण करें।
Actualice Handlebars.js a la versión 4.7.9 o superior. Como alternativa, utilice la versión runtime-only de Handlebars.js (require('handlebars/runtime')). También puede sanitizar los datos del contexto antes de renderizar o evitar las búsquedas de parciales dinámicas cuando los datos del contexto son controlados por el usuario.भेद्यता विश्लेषण और गंभीर अलर्ट सीधे आपके ईमेल में।
CVE-2026-33940 Handlebars.js में एक रिमोट कोड एग्जीक्यूशन भेद्यता है जो हमलावर को सर्वर पर मनमाना कोड निष्पादित करने की अनुमति देती है।
यदि आप Handlebars.js के संस्करण 4.0.0 से 4.7.8 का उपयोग कर रहे हैं, तो आप प्रभावित हैं।
Handlebars.js को संस्करण 4.7.9 या बाद के संस्करण में अपग्रेड करें।
CVE-2026-33940 को अभी तक सक्रिय रूप से शोषण करते हुए नहीं देखा गया है, लेकिन यह एक महत्वपूर्ण जोखिम है।
आधिकारिक सलाहकार Handlebars.js वेबसाइट पर उपलब्ध है: [https://handlebarsjs.com/](https://handlebarsjs.com/)
अपनी डिपेंडेंसी फ़ाइल अपलोड करें और तुरंत जानें कि यह CVE और अन्य आपको प्रभावित करती हैं या नहीं।