English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

guest
1 / ?
back to lessons

परमाकल्चर अभ्यास के रूप में एक MOAD स्कैनर

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

एक MOAD स्कैनर इस सिद्धांत को सॉफ्टवेयर पारिस्थितिकी तंत्र पर लागू करता है। एक भी समस्या दर्ज करने से पहले, परियोजनाओं और भाषाओं में स्कैन करें। दोष के वितरण का मानचित्र बनाएं: कितनी परियोजनाओं में CWE-407 है? किनमें यह उच्च-ट्रैफिक पथों में है? कौन से अपस्ट्रीम पैकेज, यदि पैच किए जाएं, तो अधिकतम निर्भर परियोजनाओं तक सुधार पहुँचाएंगे? किसी एक नोड पर कार्य करने से पहले पारिस्थितिकी तंत्र का अवलोकन करें।

कोड पर परमाकल्चर लागू: स्कैन 2192 संग्रह 2192 पैच 2192 प्रकटीकरण 2192 लूप

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

परमाकंप्यूटर अभ्यास: एक दोष खोजें, उसे पैच करें, प्रकट करें, अपस्ट्रीम सबमिट करें, पैच को सार्वजनिक डोमेन में जारी करें। ज्ञान बिना क्षय के फैलता है — वास्तव में यह चक्रवृद्धि होता है: प्रकट CVE एक संदर्भ बन जाता है, एक MOAD पोस्ट पैटर्न सिखाता है, भविष्य के शोधकर्ता उसी पैटर्न का उपयोग करके नए उदाहरण खोजते हैं। एक अंतिम निष्कर्षण के बजाय एक बंद लूप।

परमाकल्चर अवलोकन परमाकल्चर क्रिया से पहले होता है। स्कैन किसी भी पैच के आगे बढ़ने से पहले उछाल स्कोर, निर्भरता ग्राफ और प्रभावित नोड गणना के बारे में डेटा उत्पन्न करता है। यह डेटा निर्धारित करता है कि कौन से पैच पहले भेजे जाते हैं: उच्च-बेटवीनेस नोड पहले, क्योंकि व्यापक रूप से निर्भर लाइब्रेरी का सुधार प्रति इकाई प्रयास अधिक दूर तक फैलता है।

कोई अपशिष्ट उत्पन्न न करें: तीन प्रकटीकरण पथ

एक लोकप्रिय ओपन-सोर्स लाइब्रेरी में एक गंभीर भेद्यता खोजने के बाद एक शोधकर्ता तीन पथ ले सकता है:

A. इसे $10,000 में एक भेद्यता दलाल को बेचें।

B. इसे निजी रूप से 90-दिवसीय प्रकटीकरण समयसीमा के साथ अनुरक्षक को रिपोर्ट करें, फिर पैच स्थिति की परवाह किए बिना प्रकाशित करें।

C. तत्काल एक पुल रिक्वेस्ट के रूप में पैच सबमिट करें और साथ ही सार्वजनिक प्रकटीकरण करें।

प्रत्येक विकल्प का मूल्यांकन करने के लिए परमाकल्चर सिद्धांत 'कोई अपशिष्ट उत्पन्न न करें' लागू करें। पहचानें कि प्रत्येक पथ क्या आउटपुट उत्पन्न करता है, वे आउटपुट कहाँ जाते हैं, और कौन से आउटपुट प्रणाली को अपशिष्ट के रूप में छोड़ते हैं (अनरूटेड ऊर्जा जो किसी के लिए उपयोगी नहीं है)।

खुली प्रणालियों में चक्रवृद्धि

परमाकल्चर का दूसरा सिद्धांत: ऊर्जा को तब पकड़ें और संग्रहीत करें जब यह प्रचुरता से बहती है ताकि जब न हो तब आपके पास भंडार हो। एक वर्षा संचयन प्रणाली सूखे महीनों में उपयोग के लिए तूफानों के दौरान पानी संग्रहीत करती है। एक खाद्य वन मौसमों में सौर ऊर्जा को फल और बायोमास के रूप में संग्रहीत करता है। लक्ष्य: भंडारण के समय को प्रचुरता के समय से मिलाना।

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

ओपन-सोर्स चक्रवृद्धि व्यक्तिगत चक्रवृद्धि से अलग तरीके से काम करता है। एक कैनोनिकल रिपॉजिटरी में विलय किया गया सुधार ऊर्जा को ऐसे स्थान पर संग्रहीत करता है जहाँ से हर डाउनस्ट्रीम फोर्क स्वचालित रूप से खींचता है। 2022 में Python के asyncio लाइब्रेरी में सबमिट किया गया एक पैच मूल शोधकर्ता की किसी भी अतिरिक्त कार्रवाई के बिना उस लाइब्रेरी का उपयोग करने वाली हर परियोजना में फैल गया। ऊर्जा स्रोत पर संग्रहीत होती है और निर्भरता ग्राफ के माध्यम से चक्रवृद्धि होती है।

MOAD लेख ऊर्जा को अलग तरीके से संग्रहीत करते हैं: प्रत्येक पोस्ट केवल विशिष्ट उदाहरण को प्रकट करने के बजाय स्कैन पैटर्न सिखाता है। CWE-407 MOAD लेख पढ़ने वाला शोधकर्ता सिर्फ यह नहीं सीखता कि प्रोजेक्ट X में फ्लश भेद्यता थी, बल्कि यह भी सीखता है कि किसी भी भाषा में फ्लश पैटर्न कैसा दिखता है, इसे कैसे खोजा जाए, और इसे सौम्य समान कोड से कैसे अलग किया जाए। भविष्य के शोधकर्ता मूल सिद्धांतों से पुनः खोज करने के बजाय संग्रहीत पैटर्न का उपयोग करके नए उदाहरण खोजते हैं।

ऊर्जा संग्रहण तंत्र उतना ही महत्वपूर्ण है जितनी ऊर्जा स्वयं। एक निजी नोटबुक में संग्रहीत ज्ञान केवल नोटबुक के मालिक के लिए चक्रवृद्धि होता है। एक सार्वजनिक रिपो में संग्रहीत ज्ञान उन सभी के लिए चक्रवृद्धि होता है जो इसे पढ़ते हैं। एक CVE डेटाबेस में संग्रहीत ज्ञान सुरक्षा स्कैनर चलाने वाले सभी के लिए चक्रवृद्धि होता है। प्रत्येक भंडारण स्थान में अलग-अलग चक्रवृद्धि विशेषताएं होती हैं।

इशू ट्रैकर और व्यक्तिगत समस्या सूचियाँ

हैमिंग ने 10 महत्वपूर्ण समस्याओं की एक सूची रखी जिस पर वे बार-बार लौटते थे। इस सूची ने उन्हें पहचानने के लिए तैयार किया जब एक नई तकनीक उनमें से किसी एक को संबोधित करती थी। उनकी सूची व्यक्तिगत संग्रहीत ऊर्जा के रूप में कार्य करती थी: पैटर्न-मिलान में एक टिकाऊ निवेश जो हर बार लाभांश देती थी जब एक नई तकनीक प्रकट होती थी।

एक ओपन-सोर्स परियोजना का इशू ट्रैकर हैमिंग की व्यक्तिगत 10-समस्या सूची के समान कार्य कैसे करता है? यह किस प्रकार भिन्न है? इशू ट्रैकर का व्यक्तिगत सूची पर कम से कम एक लाभ और व्यक्तिगत सूची का इशू ट्रैकर पर कम से कम एक लाभ पहचानें।

बंद प्रणाली के रूप में एक MOAD लूप

परमाकल्चर: एक अच्छी तरह से डिज़ाइन किए गए सिस्टम में, एक प्रक्रिया का आउटपुट दूसरे का इनपुट पोषित करता है। कोई भी आउटपुट सिस्टम को अपशिष्ट के रूप में नहीं छोड़ता। एक खाद्य वन में एक मुर्गी अंडे (भोजन), खाद (उर्वरक), कीट नियंत्रण (सेवा), और खरोंचना (मिट्टी वातन) उत्पन्न करती है। प्रत्येक आउटपुट सिस्टम छोड़ने के बजाय एक डाउनस्ट्रीम प्रक्रिया की ओर रूट होता है।

एक MOAD फैक्टरी मॉडल एक समान बंद लूप बनाता है। प्रत्येक चरण ऐसे आउटपुट उत्पन्न करता है जो अगले को पोषित करते हैं:

स्कैन उत्पन्न करता है: एक पुष्टि किया गया दोष उदाहरण, प्रभावित नोड का एक स्थान मानचित्र, बेटवीनेस और ट्रैफिक पर आधारित गंभीरता अनुमान।

पैच उत्पन्न करता है: एक कोड सुधार, सुधार की पुष्टि करने वाला एक यूनिट परीक्षण, अनुरक्षकों द्वारा समीक्षा योग्य एक diff।

MOAD पोस्ट उत्पन्न करता है: दोष वर्ग, स्कैन पैटर्न, और सुधार दृष्टिकोण की व्याख्या करने वाला एक सार्वजनिक डोमेन लेख। बौद्धिक पूंजी जो किसी एक उदाहरण से परे बनी रहती है।

CVE प्रकटीकरण उत्पन्न करता है: NVD में एक मानकीकृत रिकॉर्ड, सभी प्रभावित प्रतिष्ठानों में स्वचालित सुरक्षा स्कैनर को ट्रिगर करता है। सुरक्षा समुदाय के लिए सामाजिक पूंजी।

अपस्ट्रीम PR उत्पन्न करता है: कैनोनिकल स्रोत में सुधार, अगले निर्भरता अपडेट पर सभी डाउनस्ट्रीम फोर्क में स्वचालित रूप से फैलता है।

प्रत्येक आउटपुट वापस पोषित करता है: एक MOAD पोस्ट शोधकर्ताओं को नए उदाहरण खोजना सिखाता है, जो नए स्कैन उत्पन्न करता है। यूनिट परीक्षण एक रिग्रेशन गार्ड बन जाता है। CVE रिकॉर्ड उन संचालन टीमों द्वारा पैच को अपनाने को प्रेरित करता है जो अन्यथा इसे अनदेखा कर देते। लूप बंद हो जाता है।

हाल्ट स्थिति: डाउनस्ट्रीम क्षमता की पुष्टि किए बिना प्रकट किया गया पैच कतार में बाढ़ लाता है। MOAD-0001 और MOAD-0005 युग्मन: उच्च-बेटवीनेस नोड पर O(N²) ठीक करें और हर डाउनस्ट्रीम प्रोसेसर एक साथ बाढ़ में आ जाता है। परमाकल्चर का पूरे सिस्टम के लिए डिज़ाइन सिद्धांत यहाँ भी लागू होता है: घटक को अनुकूलित करें और आप डाउनस्ट्रीम में एक नई बाधा बना सकते हैं।

आउटपुट को पूंजी से मैपिंग

एक MOAD पाइपलाइन पाँच आउटपुट उत्पन्न करती है: एक स्कैन परिणाम, एक पैच, एक MOAD पोस्ट, एक CVE प्रकटीकरण, और एक अपस्ट्रीम PR।

प्रत्येक आउटपुट को उस पूंजी रूप से मैप करें जिसे वह मुख्य रूप से विकसित करता है। फिर पहचानें कि कौन सा एकल चरण, यदि हटाया जाए, तो सबसे अधिक 'अपशिष्ट' — सिस्टम में सबसे अधिक अनरूटेड ऊर्जा — उत्पन्न करेगा, और कारण बताएं।