
OWASP से एक ओपन सोर्स खतरा मॉडलिंग टूल
[
][build]
[
][latest]
[
][practices]
[OWASP][owasp] [Threat Dragon][project] एक निःशुल्क, ओपन-सोर्स, क्रॉस-प्लेटफ़ॉर्म थ्रेट मॉडलिंग एप्लिकेशन है। इसका उपयोग थ्रेट मॉडलिंग आरेख बनाने और आरेख में तत्वों के लिए खतरों को सूचीबद्ध करने के लिए किया जाता है। Mike Goodwin ने Threat Dragon को एक ओपन सोर्स समुदाय परियोजना के रूप में बनाया जो खतरों को मॉडल करने का एक सहज और सुलभ तरीका प्रदान करती है।
Threat Dragon को विभिन्न प्रकार की टीमों के लिए सुलभ बनाया गया है, जिसमें लचीलेपन और सरलता पर जोर दिया गया है। इस परियोजना को [OWASP Production status][project] प्राप्त है और यह [threat modeling manifesto][manifesto] के मूल्यों और सिद्धांतों का पालन करती है।
यह प्रोग्राम मुक्त सॉफ़्टवेयर है: आप इसे [Apache 2.0 License][license] की शर्तों के अंतर्गत पुनर्वितरित और/या संशोधित कर सकते हैं।
Threat Dragon के नवीनतम संस्करण को [डेमो वेबसाइट][demo] पर एक्सेस करें और [दस्तावेज़ पृष्ठों][docs] को देखें।
OWASP Spotlight श्रृंखला द्वारा प्रदान किया गया वीडियो देखने योग्य है।
[github release area][releases] में Threat Dragon संस्करण 1.3 से नवीनतम संस्करण 2.x तक शामिल है। पिछले रिलीज़ Mike Goodwin के मूल रिपॉजिटरी से हैं।
OWASP से थ्रेट मॉडलिंग और जोखिम मूल्यांकन का एक अच्छा अवलोकन उपलब्ध है, और यह इस बात का विस्तार करता है कि Threat Dragon परियोजना का लक्ष्य क्या है:
Mike Goodwin इस परियोजना के संस्थापक और निर्माता हैं, और यह रिपॉजिटरी Mike Goodwin की मूल से माइग्रेट की गई है जिसमें अक्टूबर 2015 से जून 2020 तक के इश्यू और पुल रिक्वेस्ट शामिल हैं।
Threat Dragon मुख्य रूप से एक वेब एप्लिकेशन है। वेब एप्लिकेशन थ्रेट मॉडल फ़ाइलों को स्थानीय फ़ाइल सिस्टम पर संग्रहीत कर सकता है; इसके अतिरिक्त इसके लिए एक्सेस कॉन्फ़िगर किया जा सकता है :
Threat Dragon के डेस्कटॉप संस्करण थ्रेट मॉडल फ़ाइलों को स्थानीय फ़ाइल सिस्टम पर संग्रहीत करते हैं और बाहरी रिपॉजिटरी को एक्सेस नहीं करते। आप Windows, MacOS और Linux के लिए इंस्टॉलर डाउनलोड कर सकते हैं।
अंतिम उपयोगकर्ता सहायता नवीनतम [संस्करण 2.x][docs] और पिछले संस्करण 1.x दोनों के लिए उपलब्ध है।
Threat Dragon मूल रूप से AngularJS संस्करण 1.x का उपयोग करके लिखा गया था, लेकिन Angular का यह संस्करण अब समाप्त हो चुका है। इसका मतलब है कि Threat Dragon के संस्करण 1.x अब सक्रिय रूप से बनाए नहीं रखे जाते और संस्करण 2.x को Vue.js का उपयोग करने के लिए फिर से लिखा गया है।
संस्करण 1.x को बनाने/चलाने के बारे में अधिक जानकारी के लिए, कृपया legacy-v1.x शाखा देखें।
git और [node.js][node] इंस्टॉल करें, जिसमें नोड पैकेज मैनेजर npm शामिल है
रिपॉज़िटरी को इस कमांड से क्लोन करें: git clone https://github.com/owasp/threat-dragon.git
यह कोड को threat-dragon डायरेक्टरी में डाउनलोड करता है और एप्लिकेशन कोड दो सब-फ़ोल्डरों में है,
एक बैक-एंड एप्लिकेशन के लिए (td.server) और एक फ्रंट-एंड के लिए (td.vue)।
प्रोजेक्ट की टॉप डायरेक्टरी से इंस्टॉल करें: npm install
Threat Dragon के वेब एप्लिकेशन वेरिएंट के लिए कुछ एनवायरनमेंट वेरिएबल्स आवश्यक हैं; इन वेरिएबल्स को सेट करने के तरीके के लिए [दस्तावेज़][config] का पालन करें।
यदि बाहरी रिपॉज़िटरीज़ तक पहुँच आवश्यक है, जैसे Bitbucket / GitHub / GitLab, तो आपको अपने रिपॉज़िटरी खाते में जाकर एप्लिकेशन को रजिस्टर करना होगा। [Bitbucket][bitbucket], [GitHub][github] और [GitLab][gitlab] के लिए इसे करने के चरण-दर-चरण गाइड उपलब्ध हैं।
Windows पर चलाते समय, और विकास के दौरान, फ्रंट-एंड और सर्वर बैक-एंड
को "watch" मोड में अलग-अलग इन कमांड्स से शुरू किया जा सकता है: npm run dev:server और npm run dev:vue।
वैकल्पिक रूप से, यदि Linux या MacOS पर चला रहे हैं, तो बैक-एंड सर्वर और फ्रंट-एंड एप्लिकेशन दोनों को
टॉप डायरेक्टरी से इस कमांड से शुरू करें: npm start।
फ्रंट और बैक एंड दोनों के चलने पर, ब्राउज़र में http://localhost:8080/ पर एक्सेस करें
यदि npm start का उपयोग कर रहे हैं, तो बैक-एंड सर्वर और फ्रंट-एंड एप्लिकेशन दोनों को
टॉप डायरेक्टरी से npm stop कमांड से बंद करें। अन्यथा सर्वर और vue फ्रंट-एंड दोनों से बाहर निकलें।
Threat Dragon Dockerhub पर OWASP संगठन क्षेत्र के भीतर docker इमेज बनाए रखता है।
प्रत्येक रिलीज़ को v{major}.{minor}.{patch} के रूप में टैग किया जाता है, जैसे v2.2.0:
docker pull owasp/threat-dragon:v2.2.0latest टैग (जो डिफ़ॉल्ट है) संभवतः एक विकास संस्करण हो सकता है
इसलिए stable टैग का उपयोग करें, जो हमेशा नवीनतम आधिकारिक रिलीज़ होगा:
docker pull threatdragon/owasp-threat-dragon:stabledocker run -it --rm -p 8080:3000 -v $(pwd)/.env:/app/.env threatdragon/owasp-threat-dragon:v2.2.0docker run -it --rm -p 8080:3000 -v %CD%/.env:/app/.env threatdragon/owasp-threat-dragon:v2.2.0यह मानते हुए कि आप http पोर्ट 8080 का उपयोग कर रहे हैं और Threat Dragon को http://localhost:8080/ पर एक्सेस कर रहे हैं।
स्थानीय रूप से बनाए गए docker कंटेनर में Threat Dragon चलाने के लिए, पहले [dotenv का उपयोग करके अपना एनवायरनमेंट कॉन्फ़िगर करें][config] और प्रोजेक्ट की टॉप डायरेक्टरी से चलाएँ:
docker build -t owasp-threat-dragon:dev .docker run -it --rm -p 8080:3000 -v $(pwd)/.env:/app/.env owasp-threat-dragon:devdocker run -it --rm -p 8080:3000 -v %CD%/.env:/app/.env owasp-threat-dragon:devhttp पोर्ट 8080 का उपयोग करते हुए और Threat Dragon को http://localhost:8080/ पर एक्सेस करते हुए।
[][contributors]
पुल रिक्वेस्ट, फ़ीचर रिक्वेस्ट, बग रिपोर्ट और किसी भी प्रकार की प्रतिक्रिया का बहुत स्वागत है, कृपया योगदानकर्ताओं के पृष्ठ को देखें।
इस प्रोजेक्ट के साथ शुरुआत करने में मदद के लिए कुछ [डेवलपर नोट्स][notes] हैं। हम टेस्ट कवरेज को अपेक्षाकृत उच्च रखने का प्रयास कर रहे हैं इसलिए अपने पुल रिक्वेस्ट में टेस्ट शामिल करें।
Threat Dragon समुदाय से संपर्क करने का सबसे आसान तरीका है OWASP google group को ईमेल करना। OWASP Slack चैनल [#project-threat-dragon][td-slack] जानकारी का एक अच्छा स्रोत है, हालाँकि आपको पहले [सब्सक्राइब करना पड़ सकता है][subscribe]।
आप Threat Dragon को [Bluesky][bluesky] पर फॉलो कर सकते हैं।