F5 के स्वामित्व वाला NGINX, दुनिया में अत्यधिक उपयोग किया जाने वाला रिवर्स प्रॉक्सी सर्वर है। एनजीआईएनएक्स वैश्विक इंटरनेट का एक महत्वपूर्ण बुनियादी ढांचा भी है। अब एक सुरक्षा अनुसंधान कंपनी ने सॉफ्टवेयर में उच्च जोखिम वाली सुरक्षा भेद्यता का खुलासा किया है। भेद्यता क्रमांकित है CVE-2026-42945. एनजीआईएनएक्स स्क्रिप्ट इंजन में एक हीप बफर ओवरफ्लो समस्या है जो 18 वर्षों से अस्तित्व में है।

एक हमलावर को सर्वर पर दूरस्थ रूप से कब्जा करने के लिए केवल एक उजागर एनजीआईएनएक्स सर्वर पर सावधानीपूर्वक निर्मित HTTP अनुरोध भेजने की आवश्यकता होती है। एनजीआईएनएक्स कोर वैश्विक वेबसाइट सर्वर और रिवर्स प्रॉक्सी फ़ील्ड का लगभग 30% हिस्सा है, इसलिए यह भेद्यता बड़ी संख्या में इंटरनेट सेवाओं को प्रभावित कर सकती है।
एनजीआईएनएक्स ऑन्टोलॉजी और एकाधिक डेरिवेटिव को प्रभावित करता है:
यह भेद्यता मूल रूप से 2008 में जारी NGINX संस्करण 0.6.27 में पेश की गई थी। उसके बाद, लंबे समय तक भेद्यता की खोज नहीं की गई और अब तक छिपी हुई है। यह भेद्यता एनजीआईएनएक्स संस्करण 0.6.27~1.30.0 को प्रभावित करती है, और वाणिज्यिक ग्राहकों को एफ5 द्वारा प्रदान किए गए विभिन्न एनजीआईएनएक्स डेरिवेटिव को भी प्रभावित करती है। प्रभावित व्युत्पन्न उत्पादों में एनजीआईएनएक्स डब्ल्यूएएफ, एफ5 डब्ल्यूएएफ, एनजीआईएनएक्स गेटवे फैब्रिक, एनजीआईएनएक्स इनग्रेस कंट्रोलर आदि शामिल हैं, लेकिन इन्हीं तक सीमित नहीं हैं।
भेद्यता की ट्रिगर स्थितियाँ बहुत छिपी हुई हैं। जब निम्नलिखित दो निर्देश एनजीआईएनएक्स कॉन्फ़िगरेशन फ़ाइल में एक ही समय में दिखाई देंगे, तो भेद्यता सक्रिय हो जाएगी:
rewrite ^/api/(.*)$ /internal?migrated=true; # 重写规则末尾带 “?” set $original_endpoint $1; # 使用正则捕获组
भेद्यता की खोज करने वाली शोध टीम ने बताया कि भेद्यता का मूल कारण ngx_http_rewrite_module के स्क्रिप्ट इंजन (ngx_http_script.c) में है। जब पुनर्लेखन निर्देश में एक प्रश्न चिह्न होता है, तो लगातार is_args ध्वज सेट किया जाता है, लेकिन बाद के सेट निर्देश लंबाई गणना चरण में, इंजन एक नए साफ़ उप-इंजन का उपयोग करता है, जिसके कारण लंबाई गणना के दौरान यूआरएल से बचने के तर्क को छोड़ दिया जाता है।
वास्तविक प्रतिलिपि चरण में, मुख्य इंजन का उपयोग + और & जैसे वर्णों से बचने के लिए ngx_escape_uri फ़ंक्शन को ट्रिगर करने के लिए किया जाता है। बफ़र को अनएस्केप्ड लंबाई के अनुसार आवंटित किया जाता है लेकिन विस्तारित सामग्री लिखी जाती है, जिससे अंततः एक नियंत्रणीय हीप बफ़र ओवरफ़्लो हो जाता है।
F5 ने इसे ठीक करने के लिए NGINX संस्करण 1.31.0/1.30.1 जारी किया है:
भेद्यता अधिसूचना प्राप्त करने के बाद, F5 ने तुरंत भेद्यता की पुष्टि की। F5 द्वारा समाधान तैयार करने के बाद, शोधकर्ताओं ने सार्वजनिक रूप से भेद्यता जारी की। इसलिए, वर्तमान में एनजीआईएनएक्स और इसके डेरिवेटिव का उपयोग करने वाले उपयोगकर्ताओं को नवीनतम संस्करण में अपग्रेड करने की आवश्यकता है जो प्रभावित न हो। एनजीआईएनएक्स के ओपन सोर्स संस्करण को संस्करण 1.30.1 या 1.31.0 में अपग्रेड करने की आवश्यकता है। अन्य पुराने संस्करण, जैसे संस्करण 0.6.27~1.30.0, भेद्यता से प्रभावित हैं।
अन्य डेरिवेटिव के बारे में संस्करण जानकारी के लिए, कृपया F5 सुरक्षा बुलेटिन देखें: https://my.f5.com/manage/s/article/K000160932