← नवीनतम पेपर
💻 computer science

Prevalence of Cross-File Dependencies in Terraform and Their Resolution by Security Scanners

यह शोध पत्र एक बड़े पैमाने के टेराफॉर्म (Terraform) डेटासेट का विश्लेषण करके यह प्रकट करता है कि क्रॉस-फ़ाइल निर्भरताएं प्रचलित हैं और अक्सर सुरक्षा-संवेदनशील संसाधनों से जुड़ी होती हैं, जबकि नियंत्रित प्रयोगों के माध्यम से यह प्रदर्शित करता है कि आधुनिक सुरक्षा स्कैनर के पास इन जटिल अंतर-फ़ाइल संबंधों को हल करने की परिवर्तनशील लेकिन महत्वपूर्ण क्षमताएं हैं, जो इस धारणा को चुनौती देता है कि वे मल्टी-फ़ाइल रीजनिंग को संभालने में सक्षम नहीं हैं।

मूल लेखक: Moatasem M. Draz

प्रकाशित 2026-09-21
📖 7 मिनट में पढ़ें🧠 गहराई से पढ़ें

मूल लेखक: Moatasem M. Draz

मूल पेपर CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। ✨ नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें

आधुनिक डिजिटल दुनिया में, हमारे ऐप्स, बैंकों और स्ट्रीमिंग सेवाओं को चलाने वाले विशाल सर्वर और नेटवर्क अब हाथ से नहीं बनाए जाते हैं। इसके बजाय, इंजीनियर कंप्यूटर भाषा में निर्देश लिखते हैं ताकि क्लाउड को ठीक वही बनाने के लिए बताया जा सके जो वे चाहते हैं। इस अभ्यास को 'इन्फ्रास्ट्रक्चर एज़ कोड' (Infrastructure as Code) कहा जाता है। यह टीमों को जटिल प्रणालियों को टेक्स्ट फाइलों के रूप में परिभाषित करने की अनुमति देता है, जिससे यह सुनिश्चित होता है कि प्रत्येक सर्वर, फ़ायरवॉल और स्टोरेज बकेट को हर बार उसी सटीकता के साथ बनाया जाए। इस काम के लिए सबसे लोकप्रिय उपकरणों में से एक 'टेराफॉर्म' (Terraform) है। यह एक ब्लूप्रिंट रीडर की तरह काम करता है, जो इन टेक्स्ट निर्देशों को लेता है और उन्हें वास्तविक, क्रियाशील तकनीक में बदल देता है। हालाँकि, जिस तरह एक घर का नक्शा दर्जनों पन्नों में विभाजित हो सकता है जहाँ नोट्स दूसरे पन्नों का संदर्भ देते हैं, ये कोड फाइलें शायद ही कभी अलग-थलग होती हैं। वे एक-दूसरे में बुनी हुई होती हैं, जहाँ एक फाइल दूसरी को पुकारती है, मान (values) इधर-उधर पास करती है, और एक ऐसी प्रणाली का निर्माण करती है जो केवल तभी अस्तित्व में आती है जब सभी हिस्से एक साथ जोड़े जाते हैं।

इन प्रणालियों की सुरक्षा इन निर्देशों की सटीकता पर निर्भर करती है। कोड में एक छोटी सी गलती, जैसे कि अनजाने में किसी डिजिटल दरवाजे को खुला छोड़ देना, संवेदनशील डेटा को पूरे इंटरनेट के लिए असुरक्षित बना सकती है। वर्षों से, शोधकर्ता और सुरक्षा विशेषज्ञ इस बात को लेकर चिंतित रहे हैं कि इन ब्लूप्रिंट्स में गलतियों को खोजने के लिए डिज़ाइन किए गए उपकरण फाइलों के बीच के संबंधों को देखने में अंधे हो सकते हैं। प्रचलित धारणा यह थी कि ये स्कैनर एक बार में केवल एक ही फाइल को पढ़ सकते हैं, जिससे उनके बीच छिपे खतरनाक रहस्यों को पकड़ना संभव नहीं होगा। यदि एक फाइल कहती है "डिफ़ॉल्ट सेटिंग का उपयोग करें" और दूसरी फाइल उस डिफ़ॉल्ट को "सभी के लिए खुला" के रूप में परिभाषित करती है, तो स्कैनर पहली फाइल को सुरक्षित और दूसरी को अलग से सुरक्षित देख सकता है, लेकिन वह इस खतरनाक संयोजन को पहचानने में विफल रहता है। इस शोध पत्र ने वास्तविक दुनिया के कोड के एक विशाल संग्रह के विरुद्ध उस धारणा का परीक्षण करने का लक्ष्य रखा कि क्या ये उपकरण वास्तव में उतने सीमित हैं जितना कि सभी सोचते थे।

शोधकर्ताओं ने टेराफॉर्म का उपयोग करने वाले 62,000 से अधिक सार्वजनिक प्रोजेक्ट्स की एक विशाल लाइब्रेरी एकत्र करके शुरुआत की। वे यह समझना चाहते थे कि ये प्रोजेक्ट वास्तव में विभिन्न फाइलों के बीच संबंधों पर कितनी बार निर्भर करते हैं। इन प्रोजेक्ट्स में संबंधों का मानचित्र बनाकर, उन्होंने पाया कि क्रॉस-फाइल कनेक्शन कोई दुर्लभ अपवाद नहीं हैं, बल्कि यह इन प्रणालियों के निर्माण का एक मानक हिस्सा है। वास्तव में, उनके द्वारा अध्ययन किए गए सभी प्रोजेक्ट्स में से एक-तिहाई से अधिक में कम से कम एक ऐसा कनेक्शन था जहाँ एक फाइल दूसरी फाइल पर निर्भर थी। ये कनेक्शन समान रूप से वितरित नहीं थे; ये कुछ कम जटिल प्रोजेक्ट्स में अत्यधिक केंद्रित थे, जबकि कई सरल प्रोजेक्ट्स में बहुत कम या कोई नहीं थे। फाइलों को जोड़ने का सबसे आम तरीका साझा फोल्डर्स (shared folders) की ओर संकेत करना था, जहाँ एक प्रोजेक्ट एक सामान्य कोड खोजने के लिए अपने डायरेक्टरी स्ट्रक्चर में ऊपर या आर-पार पहुँचता था। इस पैटर्न ने दिखाया कि इंजीनियरों के काम को व्यवस्थित करने का तरीका स्वाभाविक रूप से एक ऐसा वेब बनाता है जो कई फाइलों तक फैला होता है।

इसके बाद अध्ययन ने एक महत्वपूर्ण प्रश्न पूछा: क्या ये कनेक्शन अक्सर सिस्टम के सबसे संवेदनशील हिस्सों की ओर ले जाते हैं? शोधकर्ताओं ने उन मामलों की तलाश की जहाँ एक फाइल दूसरी फाइल पर निर्भर थी जो सुरक्षा सेटिंग्स को नियंत्रित करती थी, जैसे कि डेटाबेस तक किसकी पहुंच हो सकती है या किन कंप्यूटरों को आपस में बात करने की अनुमति है। उन्होंने पाया कि 9,000 से अधिक प्रोजेक्ट्स में, ये क्रॉस-फाइल कनेक्शन वास्तव में इन महत्वपूर्ण सुरक्षा नियंत्रणों की ओर इशारा कर रहे थे। इसका अर्थ यह था कि इन प्रणालियों की सुरक्षा अक्सर एक मान (value) को एक फाइल से, एक कनेक्शन के माध्यम से, दूसरी फाइल में मौजूद सुरक्षा नियम तक ट्रैक करने की क्षमता पर निर्भर करती थी। यदि कोई टूल उस पथ का अनुसरण नहीं कर पाता था, तो वह गलत तस्वीर देख रहा होता, जिससे वह उस भेद्यता (vulnerability) को पहचानने में विफल रहता जो केवल फाइलों के आपस में जुड़ने के कारण उत्पन्न हुई थी।

समस्या के पैमाने को स्थापित करने के बाद, शोधकर्ताओं ने स्वयं इन उपकरणों की ओर रुख किया ताकि देख सकें कि क्या वे वास्तव में इन पथों का अनुसरण कर सकते हैं। उन्होंने चार सबसे लोकप्रिय उपलब्ध सुरक्षा स्कैनर्स का उपयोग करके एक नियंत्रित प्रयोग डिजाइन किया। उन्होंने परीक्षण मामलों की एक श्रृंखला बनाई जो वास्तविक दुनिया के कनेक्शनों की नकल करती थी, जिसमें एक ही फोल्डर में फाइलों के बीच सरल लिंक से लेकर जटिल श्रृंखलाएं शामिल थीं, जहाँ एक मान कई मॉड्यूल्स के माध्यम से अंतिम गंतव्य तक पहुँचता है। उन्होंने यह परीक्षण किया कि क्या स्कैनर सुरक्षा दोष को पकड़ पाते हैं जब खतरनाक सेटिंग किसी दूसरी फाइल में छिपी हो, या क्या स्कैनर केवल तभी खतरे को देखते हैं जब वह उसी फाइल में सीधे लिखा गया हो।

परिणामों ने इस लंबे समय से चली आ रही धारणा को चुनौती दी कि ये उपकरण मौलिक रूप से क्रॉस-फाइल कनेक्शन देखने में अंधे हैं। अध्ययन में पाया गया कि इन उपकरणों की क्षमताएं केवल 'हाँ' या 'ना' के रूप में नहीं, बल्कि एक स्पेक्ट्रम (विस्तार) के रूप में थीं। परीक्षण किए गए प्रत्येक टूल ने सरलतम कनेक्शनों का सफलतापूर्वक पालन किया, जैसे कि एक ही फोल्डर के भीतर एक फाइल में परिभाषित वेरिएबल का दूसरी फाइल में उपयोग। वे सभी इन बुनियादी परिदृश्यों में खतरे को पहचानने में सफल रहे। हालाँकि, जैसे-जैसे कनेक्शन अधिक जटिल होते गए, उपकरण अलग होने लगे। परीक्षण किए गए चार स्कैनर्स में से केवल एक, 'चेकोव' (Checkov), सबसे जटिल पथों का अनुसरण करने में सक्षम था, जिसमें वे मामले भी शामिल थे जहाँ मानों को कई मॉड्यूल के माध्यम से पारित किया जाता था या जहाँ विशेष कॉन्फ़िगरेशन फाइलों द्वारा सेटिंग्स को ओवरराइड किया जाता था। अन्य उपकरण प्रत्यक्ष लिंक को तो संभाल सकते थे, लेकिन जब कनेक्शन में मध्यवर्ती चरण या 'वेरिएबल ओवरराइड' जैसी विशिष्ट फाइलें शामिल होती थीं, तो वे अक्सर रास्ता भटक जाते थे।

यह निष्कर्ष बताता है कि यह सामान्य धारणा कि स्कैनर क्रॉस-फाइल संदर्भों का पीछा नहीं कर सकते, पूरी तरह सटीक नहीं है। ऐसा नहीं है कि उपकरण इस कार्य में असमर्थ हैं, बल्कि उनकी क्षमता विशिष्ट टूल और कनेक्शन की जटिलता के आधार पर काफी भिन्न होती है। उन टीमों के लिए जो उन टूल्स पर भरोसा करती हैं जो केवल सरल मामलों को संभालते हैं, एक वास्तविक जोखिम है कि वे अपने कोड के अधिक जटिल वायरिंग में छिपे सुरक्षा मुद्दों को मिस कर रही हैं। शोधकर्ताओं ने निष्कर्ष निकाला कि हालांकि उपकरणों ने प्रगति की है, लेकिन उद्योग को इस बारे में अधिक सटीक होने की आवश्यकता है कि प्रत्येक टूल क्या देख सकता है और क्या नहीं। यह मान लेने के बजाय कि एक टूल हर त्रुटि को पकड़ लेगा, टीमों को अपने द्वारा चुने गए स्कैनर की विशिष्ट सीमाओं को समझना चाहिए, विशेष रूप से जब उनका कोड कनेक्शन की गहरी परतों पर निर्भर हो। यह अध्ययन इन सीमाओं का एक स्पष्ट मानचित्र प्रदान करता है, जो दिखाता है कि जबकि सरलतम क्रॉस-फाइल खतरों को पकड़ा जाता है, गहरे और अधिक जटिल खतरों के लिए या तो अधिक सक्षम टूल या सुरक्षा सुनिश्चित करने के लिए एक अलग दृष्टिकोण की आवश्यकता होती है।

अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?

आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।

Digest आज़माएँ →