TaintRadar: Semantic-Aware Taint-Style Vulnerability Detection via Augmented Code Property Graphs
TaintRadar एक नवीन स्टैटिक एनालिसिस दृष्टिकोण है जो टेंट ट्रैकिंग की मौजूदा सीमाओं को दूर करने के लिए सैनिटाइजेशन, पर्सिस्टेंस और ऑब्जेक्ट एलियासिंग के लिए सिमेंटिक लेयर्स के साथ कोड प्रॉपर्टी ग्राफ्स को संवर्धित करता है, जिससे फॉल्स पॉजिटिव्स में काफी कमी आती है और PHP अनुप्रयोगों में कई वास्तविक और ज़ीरो-डे कमजोरियों का सफलतापूर्वक पता लगाया जाता है।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि इंटरनेट एक विशाल, हलचल भरे शहर की तरह है जहाँ लाखों लोग (उपयोगकर्ता) लगातार विभिन्न दुकानों और कार्यालयों (वेबसाइटों) को नोट्स, पैकेज और रहस्य सौंपते हैं। अधिकांश समय, यह आदान-प्रदान सुरक्षित होता है, लेकिन कभी-कभी, एक चालाक अपराधी एक पैकेज में ज़हरीला नोट डाल देता है, इस उम्मीद में कि दुकान का मालिक अनजाने में उसे पूरे शहर के सामने ज़ोर से पढ़ देगा या उसका उपयोग तिजोरी तोड़ने के लिए करेगा। कंप्यूटर विज्ञान की दुनिया में, इसे "टेइंट-स्टाइल वल्नरेबिलिटी" (taint-style vulnerability) कहा जाता है। यह तब होता है जब उपयोगकर्ता से प्राप्त अविश्वसनीय जानकारी बिना किसी जाँच के एक प्रोग्राम के माध्यम से एक खतरनाक जगह तक पहुँच जाती है, जैसे कि डेटाबेस या स्क्रीन, जिससे अराजकता फैलती है।
इन अपराधियों को रोकने के लिए, सुरक्षा विशेषज्ञ "स्टैटिक एनालिसिस" (static analysis) नामक एक विधि का उपयोग करते हैं। इसे एक सुपर-स्मार्ट जासूस के रूप में समझें जो शहर की हर दुकान के ब्लूप्रिंट (नक्शे) को पढ़ता है, बिना वास्तव में दरवाज़े खोले। वे हर नोट के रास्ते का पीछा करते हैं ताकि यह देख सकें कि क्या वह किसी खतरनाक स्थान तक पहुँचने से पहले फ़िल्टर या "सैनिटाइज़" (साफ़) किया गया है। वर्षों से, इन जासूसों ने एक "कोड प्रॉपर्टी ग्राफ" (CPG) का उपयोग किया है, जो एक विशाल, 3D मानचित्र की तरह है जो कोड की हर पंक्ति को जोड़ता है। हालाँकि, यह शोध पत्र तर्क देता है कि पुराने मानचित्रों में कुछ अंधे धब्बे (blind spots) होते हैं। वे अक्सर यह चूक जाते हैं कि डेटा कैसे एक गोदाम (डेटाबेस) में संग्रहीत होता है और बाद में किसी अन्य दुकान द्वारा उठाया जाता है, या वे भ्रमित हो जाते हैं जब डेटा जटिल, चलते-फिरते बक्सों (ऑब्जेक्ट्स) के अंदर घूमता है। इन अंधे धब्बों के कारण, जासूस या तो वास्तविक अपराधों को मिस कर देते हैं या तब "अपराधी!" चिल्ला उठते हैं जब वह केवल एक हानिरहित नोट होता है, जिससे बहुत समय बर्बाद होता है।
यहाँ आता है TaintRadar, एक नया, अपग्रेड किया गया जासूसी सिस्टम जिसे इन अंधे धब्बों को ठीक करने के लिए डिज़ाइन किया गया है। TaintRadar के पीछे के शोधकर्ताओं ने महसूस किया कि अपराधियों को पकड़ने के लिए, मानचित्र को केवल कोड को जोड़ने वाली रेखाओं की ही नहीं, बल्कि अर्थ की गहरी समझ की भी आवश्यकता है। उन्होंने एक प्रणाली बनाई है जो मानक मानचित्र पर तीन नई "सुपरपावर्स" की परतें चढ़ाती है। पहला, यह सीखता है कि विभिन्न प्रकार की सफाई (सैनिटाइजेशन) का काम वास्तव में कैसे होता है, ताकि यह जान सके कि नोट वास्तव में कब सुरक्षित है। दूसरा, यह उन विभिन्न दुकानों के बीच के संबंध को जोड़ता है जो एक ही गोदाम साझा करती हैं, यह समझते हुए कि सुबह गिराया गया एक गंदा नोट दोपहर में परेशानी के लिए उठाया जा सकता है, भले ही दुकानें सीधे एक-दूसरे से बात न करती हों। तीसरा, यह जटिल, चलते-फिरते बक्सों के अंदर डेटा के हिलने-डुलने के बारे में स्मार्ट बनता है, यह ट्रैक करता है कि एक प्रोग्राम के भीतर एक हाथ से दूसरे हाथ में जाने के दौरान एक रहस्य कैसे बदलता है।
जब टीम ने TaintRadar का परीक्षण किया, तो परिणाम प्रभावशाली रहे। अभ्यास पहेलियों (SARD बेंचमार्क) के एक मानक सेट पर, इसने पिछली टूल्स की तुलना में बहुत कम गलतियाँ करते हुए 80% कमजोरियों को पकड़ा। लेकिन असली परीक्षा तब आई जब उन्होंने इसे 19 वास्तविक दुनिया की वेबसाइटों पर तैनात किया। TaintRadar ने सफलतापूर्वक उन अधिकांश ज्ञात सुरक्षा छिद्रों को खोज निकाला जो पहले रिपोर्ट किए गए थे। इससे भी अधिक रोमांचक बात यह है कि इसने छह अलग-अलग अनुप्रयोगों में 29 बिल्कुल नए, पहले कभी न देखे गए सुरक्षा छिद्रों (जिन्हें "ज़ीरो-डेज़" कहा जाता है) को उजागर किया। इनमें 26 मामले ऐसे थे जहाँ हमलावर डेटाबेस में बुरा कोड इंजेक्ट कर सकते थे और 3 मामले जहाँ वे ब्राउज़र को दुर्भावनापूर्ण स्क्रिप्ट दिखाने के लिए धोखा दे सकते थे। शोधकर्ताओं ने इन नए निष्कर्षों को उन कंपनियों को और आधिकारिक CVE (कॉमन वल्नरेबिलिटीज एंड एक्सपोज़र्स) डेटाबेस को पहले ही रिपोर्ट कर दिया है, जो उन्हें अद्वितीय पहचान संख्या (ID) प्रदान करता है ताकि उन्हें ठीक किया जा सके।
संक्षेप में, TaintRadar यह सिद्ध करता है कि जासूस को डेटा की कहानी सिखाकर—कि वह कैसे साफ़ किया जाता है, कहाँ संग्रहीत किया जाता है, और जटिल ऑब्जेक्ट्स के माध्यम से कैसे घूमता है—हम एक अधिक सटीक और तेज़ सुरक्षा प्रणाली बना सकते हैं। यह केवल मानचित्र की रेखाओं को नहीं देखता; यह शहर की लय को समझता है, जिससे डिजिटल अपराधियों के लिए दरारों से निकल जाना बहुत कठिन हो जाता है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।