Mon. Dec 23rd, 2024
    नेटवर्क सिक्यूरिटी में थ्रेट मॉडलिंग

    विषय-सूचि

    थ्रेट मॉडलिंग क्या है? (threat modeling in hindi)

    जैसे-जैसे तकनीक और भी विकसित होता जा रहा है, हैकरों के लिए संवेदनशील डाटा या हटा दिए गये एप्लीकेशन को एक्सेस करना भी दिन-पर-दिन आसान होता चला जा रहा है।

    इसीलिए आज की तारीख में एप्लीकेशन सिक्यूरिटी एक चिंता का विषय है। थ्रेट मॉडलिंग एक ऐसा मेथड है जिसका प्रयोग डिजाईन प्रक्रिया में एप्लीकेशन सिक्यूरिटी के लिए किया जाता है।

    थ्रेट ऐसा कुछ भी हो सकता है जो आपके सिस्टम की कमजोरियों का फायदा उठाए और सिक्यूरिटी में ब्रीच कर के अंदर घुस जाये, ऑब्जेक्ट्स को नुक्सान पहुंचाए।

    थ्रेट मॉडलिंग को किसी भी लेवल पर किया जा सकता है लेकिन शुरुआत में ही इसे करने से थ्रेट को ज्यादा अच्छी तरह से पकड़ा जा सकेगा और उसे निपटा भी जा सकेगा।

    थ्रेट मॉडलिंग का लक्ष्य होता है थ्रेट को पहचानना, उनसे संचार करना और उन्हें समझ कर सिस्टम से बहार निकालना और वो भी जितनी जल्दी ऐसा संभव हो सके।

    इस प्रक्रिया को डॉक्यूमेंट करने पर सिस्टम विश्लेषक और डेवलपर को थ्रेट कोसमझने में भी काफी आसानी होगी और फिर वो बेहतर तैयारी कर सकते हैं। इसके साथ ही attacker के प्रोफाइल, और उसके इरादों को भापने में भी मदद मिल सकती है।

    थ्रेट मॉडलिंग द्वारा हम निम्न चीजों को प्राप्त करते हैं:

    1. सिक्यूरिटी एप्लीकेशन को परिभाषित करते हैं।
    2. आने वाले थ्रेट की पहचान और उसकी प्रक्रिया, कमजोरियों इत्यादि को समझने की कोशिश करते हैं।
    3. पहले आने वाले आर्किटेक्चर बग्स को खोज कर नष्ट कर सकते हैं।

    थ्रेट मॉडलिंग में विषय-सूचि (topics in thread modeling in hindi)

    डेवलपमेंट टीम एप्लीकेशन सिक्यूरिटी को implement करने में डिजाईन प्रोसेस के दौरान योग्य होते हैं और इसके लिए वो थ्रेट मॉडलिंग methodology का प्रयोग करते हैं। अब हम आठ प्रमुख थ्रेट methodology को उनकी प्रक्रिया के साथ समझेंगे:

    1. Strike
      स्ट्राइक माइक्रोसॉफ्ट द्वारा विकसित की गई कार्यप्रणाली है जिसके द्वारा थ्रेट मॉडलिंग किया जाता है। ये कुल छह तरह के थ्रेट के लिए निदान देता है:

      • Spoofing: एक ऐसा ऑब्जेक्ट जो आपके सिस्टम में उपस्थित हो (कोई भी यूजर का कॉम्पोनेन्ट का रूप लेकर) और आपके सिस्टम में गुप्त पहचान बनाये हुए हो।
      • Tampering: किसी सिस्टम के अंदर गलत प्रयोग के लिए डाटा को मॉडिफाई करने की प्रक्रिया।
      • Repudiation: ये किसी आक्रमंकर्ता द्वारा सिस्टम में किसी एक्टिविटी को करने से रोकने की प्रक्रिया है।
      • Information Disclosure: संवेदनशील डाटा का किसी ऐसे यूजर के हाथ लग जाना जिसे उसे एक्सेस करने की अनुमति नहीं है।
      • Denial of Service: ये एक ऐसा आक्रमण होता है जो आपके जरूरी डिटेल को लेने के लिए यूजर को मुर्ख बनाता है।

      इस एप्रोच का इनपुट DFD है और DFD के प्रत्येक नोड को सिस्टम पर अप्लाई किया जाता है। इसके अलावा, सिक्यूरिटी थ्रेट की सम्भव संख्या को भी पहचाना जा सकता है और उसके उपाय को ढूँढा जाता है।

    2. DREAD
      ड्रेड को भी थ्रेट मॉडलिंग के लिए ही 2008 में माइक्रोसॉफ्ट द्वारा अस्तित्व में लाया गया था लेकिन गिरते रेटिंग के कारण इसे हटा दिया गया। इसे अब भी OPenstack के साथ ही कुछ और कारपोरेशन द्वारा प्रयोग किया जाता है। ये रिस्क रेटिंग सिक्यूरिटी के लिए उपाय देता है और ऐसा ये इन 5 केटेगरी में करता है:

      1. Damage Potential: अगर सिस्टम की कमजोरी का कोई फायदा उठा ले तो कितनी हानि पहुंचेगी उसका अनुमान लागाता है और रैंक करता है।
      2. Reproducibility: किसी अटैक को फिर से होना कितना आसान है इस बात का अंदाजा लागाता है।
      3. Exploitability:किसी अटैक को लांच करने में कितने प्रयासों की आवश्यकता होगी इसका अनुमान लगाता है।
      4. Affected Users: एक मान देकर बताता है कि अगर अटैक हो गया तो इसका नुक्सान कितने यूजर को उठाना पड़ेगा यानि कितने लोगों पर इसका असर पड़ेगा।
      5. Discoverability: थ्रेट को पकड़ना कितना आसान है इस बात का अंदाजा लगाता है।

      इसके बाद ड्रेड मॉडल में इन पांच केटेगरी के औसत को निकाल कर रिस्क को कैलकुलेट किया जाता है:

      Risk = (Damage Potential+Reproducibility
                    +Exploitability+Affected Users
                                 +Discoverability)/5
    3. P.A.S.T.A. –
      द प्रोसेस for अटैक सिमुलेशन एंड थ्रेट एनालिसिस (PASTA) एक सात स्टेप वाला रिस्क पर सेण्टर करने वाला मेथड है। इसका प्रमुख लक्ष्य है डायनामिक रूप से थ्रेट की पहचान करना, उसका विश्लेषण करना और स्कोरिंग की प्रक्रिया को करना। थ्रेट मॉडल के पूरा होने पर सिक्यूरिटी के विषय से जुड़े लोग पहचाने गये थ्रेट का वृहद् विश्लेषण करते हैं। इसके बाद थ्रेट को ध्यान में रखते हुए attacker के इरादों को भांपकर उसके लिए रणनीति बनाने में आसानी होती है।
    4. Trike –
      थ्रेट मॉडलिंग का प्रयोग करते समय उसे रिस्क मैनेजमेंट टूल की तरह प्रयोग करना प्रमुख फोकस होता है। ये मॉडल requirement मॉडल पर आधारित होते हैं। ये requirement मॉडल सटाकेहोल्डर द्वारा परिभाषित किये गए रिस्क के लेवल जिस से ज्यादा हानि नहीं पहुँचती हो, उसे अभी एसेट क्लास के रिस्क को असाइन करने में मदद करते हैं। requirement मॉडल का सही विश्लेषण एक थ्रेट मॉडल को जन्म देता है जिसका उपयोग एसेट, रोल, एक्शन और रिस्क एक्सपोज़र पर आधारित रिस्क मॉडल बनाने के लिए किया जाता है।
    5. VAST –
      Vast का पूरा नाम हुआ विजुअल, एजाइल, और सिंपल थ्रेट मॉडलिंग। ये methodology विभिन्न सटाकेहोल्डर (जैसे एप्लीकेशन डेवलपर, आर्किटेक, साइबर सिक्यूरिटी से जुड़े लोग) के जरूरतों के हिसाब से एक एक्शन लेने लायक आउटपुट देता है। ये एक ऐसा यूनिक एप्लीकेशन देता है जिसके द्वारा थ्रेट मॉडल को बनाना और उसके प्रयोग के लिए किसी को सिक्यूरिटी के क्षेत्र में एक्सपर्ट होने की जरूरत नहीं होती।
    6. Attack Tree –
      अटैक ट्री एक कोन्केप्चुअल डायग्राम होते हैं जो दिखाते हैं कि कैसे एसेट, टारगेट को अटैक किया जा सकता है। ये एक मुलती-लेवल डायग्राम होते हैं जिनके एक नोड रूट होते हैं, पत्ते होते हैं और फिर चिल्ड्रेन नोड्स भी होते हैं। नीचे से लेकर उपर तक चाइल्ड नोट ऐसे शर्त होते हैं जिनका satisfy होना जरूरी होता है अगर पैरेंट नोड को ट्रू होना हो। किसी अटैक को तब पूरा माना जाता है जब रूट satisty हो जाये। हर नोड को उसके डायरेक्ट चाइल्ड नोड द्वारा satisfy किया जता है।
      मान लीजिये कि रूट नोड के नीचे एक ग्रैंडचाइल्ड है। इस स्थिति में किसी अटैक को करने के लिए एक से ज्यादा स्टेप्स को फॉलो करना पड़ेगा क्योंकि पहले ग्रंद्चिल्ड के शर्तों को satisfy किया जाएगा जिसके बाद डायरेक्ट नोड ट्रू होना। फिर डायरेक्ट नोड की शर्तों को satisfy किया जाएगा और तब पैरेंट यानी रूट नोड ट्रू होगा। ऐसे ये एक से ज्यादा स्टेप्स हो सकते हैं। इसमें AND और OR आप्शन भी होते हैं जो कि alternate या अलग-अलग स्टेप्स को दिखाते हैं जिस से गोल को प्राप्त किया जा सके।
    7. Common Vulnerability Scoring System (CVSS) –
      इसके द्वारा सिस्टम में मौजूद कमजोरियों (0-10 के रेंज में जिसमे 10 सबसे ज्यादा होगा) के फीचर को पकड़ा जाता है और एक सांख्यिकी स्कोर दिया जाता है। इन स्कोर को फिर लो, मध्यम, हाई- इस तरह से बाँट दिया जाता है। इसके बाद वुल्नेराबिलिटी मैनेजमेंट प्रोसेस को किया जाता है।
    8. T-MAP –
      टी मैप का प्रयोग कमर्शियल ऑफ द शेल्फ (COTS) में किया जाता है। इसके द्वारा अटैक पाथ का वेट कैलकुलेट करते हैं। इस मॉडल को डायग्राम, टारगेट एसेट क्लास डायग्राम, और अफ्फेक्टेद वैल्यू क्लास डायग्राम का प्रयोग करते हुए UML क्लास डायग्राम से बनाया जाता है।

    थ्रेट मॉडलिंग के टूल (threat modeling tools in hindi)

    अभी थ्रेट मॉडलिंग के कुल आठ टूल्स मौजूद हैं जिनकी चर्चा हम नीचे कर रहे हैं:

    1. Microsoft’s Threat Modelling Tool –
      ये टूल स्ट्राइड थ्रेट क्लासिफिकेशन स्कीम पर आधारित होकर थ्रेट की पहचान करता है और ये डाटा फ्लो डायग्राम यानी कि DFD पर काम करता है।
    2. MyAppSecurity –
      It offers the first commercially available threat modeling tool – . It uses VAST threat ckassification scheme and is Process Flow Diagram (PFD) based. ये पहले कमर्शियल रूप से उपलब्ध मॉडलिंग टूल उपलब्ध कराता है- ThreatModeler.ये VAST थ्रेट क्लासिफिकेशन स्कीम का प्रयोग करता है और प्रोसेस फ्लो डायग्राम यानि PFD पर आधारित है।
    3. IriuRisk –
      ये टूल के दोनों ही वर्जन यानि कम्युनिटी और कमर्शियल की सुविधा देता है। इसका अधिकतर प्रयोग पूरे SLDC के द्वारा लाइव थ्रेट मॉडल को बनाने और मेंटेन करने में किया जाता है। ये बांकी के कई टूल्स के साथ भी कनेक्ट होता है जैसे कि OWASP ZAP, BDD-सिक्यूरिटी इत्यादि। ये ऑटोमेशन की सुविधा देता है और रिक पैटर्न लाइब्रेरी रखता है।
    4. securiCAD –
      ये एक थ्रेट मॉडलिंग और रिस्क मैनेजमेंट टूल है जिसे Scandinavian कम्पनी द्वारा विकसित किया गया है। इसमें ऑटोमेटेड अटैक कर-कर के रिस्क की पहचान की जाती है। ऐसा IT आर्किटेक्चर पर किया जाता है और खोज के आधार पर डिसिशन सपोर्ट देता है। ये भी कमर्शियल और कम्युनिटी- दोनों में ही आता है।
    5. SD Elements by Security Compass –
      ये एक सॉफ्टवेर सिक्यूरिटी requirement मैनेजमेंट प्लेटफ़ॉर्म है जो कि ऑटोमेटेड थ्रेट मॉडलिंग को करने में सक्षम है।
    6. Modelling Attack trees –
      कमर्शियल टूल्स जैसे कि SecurITree, AttackTree+ और ओपनसोर्स टूल जैसे ADTool, Ent, SeaMonsterका प्रयोग कर के मॉडल अटैक ट्री बनाया जाता है।
    7. CVSS 3.0 –
      इसे CVSS मॉडल के लिए प्रयोग किया जाता है।
    8. Tiramisu –
      ये अटैक पाथ का वेट कैलकुलेट कर के टी मॉडल पर काम करता है।

    इस लेख से सम्बंधित यदि आपका कोई भी सवाल या सुझाव है, तो आप उसे नीचे कमेंट में लिख सकते हैं।

    By अनुपम कुमार सिंह

    बीआईटी मेसरा, रांची से कंप्यूटर साइंस और टेक्लॉनजी में स्नातक। गाँधी कि कर्मभूमि चम्पारण से हूँ। समसामयिकी पर कड़ी नजर और इतिहास से ख़ास लगाव। भारत के राजनितिक, सांस्कृतिक और भौगोलिक इतिहास में दिलचस्पी ।

    Leave a Reply

    Your email address will not be published. Required fields are marked *