
एक उपकरण जो कई ओपन सोर्स git खोजने वाले उपकरणों का लाभ उठाकर सभी git रहस्यों को कैप्चर करता है।
git-all-secrets एक उपकरण है जो निम्नलिखित कार्य कर सकता है:
स्कैनिंग कई ओपन सोर्स टूल्स द्वारा की जाती है जैसे:
नोट - भविष्य में आवश्यकता होने पर ऐसे और उपकरण जोड़े जा सकते हैं!
नोट - toolName फ़्लैग निर्दिष्ट करके सभी टूल्स या उनमें से किसी एक द्वारा स्कैन किया जा सकता है।
यदि स्कैन करने के लिए सभी टूल्स का उपयोग किया जाता है, तो टूल से अंतिम आउटपुट सभी टूल्स की सभी फ़ाइलों के आउटपुट को एक समेकित आउटपुट फ़ाइल में जोड़ता है।
git-all-secrets चलाने का सबसे आसान तरीका डॉकर के माध्यम से है और यदि आपके पास पहले से डॉकर नहीं है तो मैं इसे स्थापित करने की अत्यधिक अनुशंसा करता हूं। एक बार जब आप डॉकर स्थापित कर लें,
docker run --rm -it abhartiya/tools_gitallsecrets --help टाइप करें ताकि यह समझ सकें कि यह इनपुट के रूप में कौन से विभिन्न फ़्लैग ले सकता है।docker run -it abhartiya/tools_gitallsecrets -token=<> -org=<>। आप स्कैनिंग के लिए किसी विशेष उपकरण का उपयोग करने के लिए कुछ इस तरह भी टाइप कर सकते हैं: docker run -it abhartiya/tools_gitallsecrets -token=<> -org=<> -toolName=<>। विकल्प thog और repo-supervisor हैं।thogEntropy फ़्लैग इस तरह प्रदान करें - docker run -it abhartiya/tools_gitallsecrets -token=<> -org=<> -toolName=thog -thogEntropy।docker ps -a टाइप करके कंटेनर आईडी प्राप्त करें।docker cp <container-id>:/root/results.txt . टाइप करके परिणाम फ़ाइल को कंटेनर से होस्ट में लाएं।-token = गिटहब व्यक्तिगत एक्सेस टोकन। हमें इसकी आवश्यकता है क्योंकि गिटहब API के लिए अप्रमाणित अनुरोध जल्द ही दर सीमा से टकरा सकते हैं!
-org = स्कैन करने के लिए संगठन का नाम। यह संगठन के सभी सार्वजनिक रिपॉजिटरी + संगठन के सभी उपयोगकर्ताओं के सभी रिपॉजिटरी और गिस्ट को स्कैन करेगा। यदि आप उस उपयोगकर्ता का टोकन उपयोग कर रहे हैं जो इस संगठन का हिस्सा है, तो यह उस उपयोगकर्ता से संबंधित सभी गुप्त गिस्ट के साथ-साथ उस संगठन के सभी निजी रिपॉजिटरी को भी क्लोन और स्कैन करेगा, जिस तक उपयोगकर्ता की पहुंच है। हालांकि, यह इस संगठन से संबंधित इस उपयोगकर्ता की किसी भी निजी रिपॉजिटरी को क्लोन और स्कैन नहीं करेगा। उपयोगकर्ताओं की निजी रिपॉजिटरी को स्कैन करने के लिए, कृपया user फ़्लैग के साथ scanPrivateReposOnly फ़्लैग का उपयोग करें, साथ ही वॉल्यूम पर माउंट किए गए SSH कुंजी का उपयोग करें।
-user = स्कैन करने के लिए उपयोगकर्ता का नाम। यह इस उपयोगकर्ता के सभी रिपॉजिटरी और गिस्ट को स्कैन करेगा। यदि प्रदान किया गया टोकन उपयोगकर्ता का टोकन है, तो गुप्त गिस्ट भी क्लोन और स्कैन किए जाएंगे। लेकिन केवल सार्वजनिक रिपॉजिटरी ही क्लोन और स्कैन की जाएंगी। इस उपयोगकर्ता की निजी रिपॉजिटरी को स्कैन करने के लिए, कृपया user फ़्लैग के साथ scanPrivateReposOnly फ़्लैग का उपयोग करें, साथ ही वॉल्यूम पर माउंट किए गए SSH कुंजी का उपयोग करें।
-repoURL = स्कैन करने के लिए रिपॉजिटरी का HTTPS URL। यह केवल इस रिपॉजिटरी को स्कैन करेगा। सार्वजनिक रिपॉजिटरी के लिए, रिपॉजिटरी का https URL बताना पर्याप्त होगा। हालांकि, यदि आप किसी निजी रिपॉजिटरी को स्कैन करना चाहते हैं, तो आपको वॉल्यूम पर माउंट किए गए SSH कुंजी और scanPrivateReposOnly फ़्लैग के साथ ssh URL प्रदान करना होगा।
-gistURL = स्कैन करने के लिए गिस्ट का HTTPS URL। यह केवल इस गिस्ट को स्कैन करेगा। जब तक आपके पास URL है, सार्वजनिक या गुप्त गिस्ट की कोई अवधारणा नहीं है। यहां तक कि यदि आपके पास एक गुप्त गिस्ट है, यदि किसी को आपके गुप्त गिस्ट का HTTPS URL पता हो, तो वे उस तक पहुंच सकते हैं।
-output = यह उस फ़ाइल का नाम है जहां सभी परिणाम संग्रहीत होंगे। डिफ़ॉल्ट रूप से, यह results.txt है।
-cloneForks = यह संगठन और उपयोगकर्ता रिपॉजिटरी के फोर्क को क्लोन करने के लिए वैकल्पिक बूलियन फ़्लैग है। डिफ़ॉल्ट रूप से, यह 0 पर सेट है, यानी फोर्क का कोई क्लोनिंग नहीं। यदि फोर्क को क्लोन करना है, तो इस मान को 1 पर सेट करने की आवश्यकता है। या, बस अन्य फ़्लैग के साथ -cloneForks का उल्लेख करें।
-orgOnly = यह संगठन से संबंधित उपयोगकर्ता रिपॉजिटरी को स्किप करने के लिए वैकल्पिक बूलियन फ़्लैग है। डिफ़ॉल्ट रूप से, यह 0 पर सेट है, यानी सामान्य व्यवहार। यदि उपयोगकर्ता रिपॉजिटरी को स्कैन नहीं किया जाना है और केवल संगठन रिपॉजिटरी को स्कैन किया जाना है, तो इस मान को 1 पर सेट करने की आवश्यकता है। या, बस अन्य फ़्लैग के साथ -orgOnly का उल्लेख करें।
-toolName = यह स्कैनिंग के लिए उपयोग किए जाने वाले उपकरण को निर्दिष्ट करने के लिए वैकल्पिक स्ट्रिंग फ़्लैग है। डिफ़ॉल्ट रूप से, यह all पर सेट है, यानी thog और repo-supervisor दोनों का उपयोग स्कैनिंग के लिए किया जाएगा। मान या तो thog या repo-supervisor हैं।
-teamName = संगठन टीम का नाम जिसके पास स्कैनिंग के लिए निजी रिपॉजिटरी तक पहुंच है। यह फ़्लैग पूरी तरह से परीक्षण नहीं किया गया है इसलिए मैं कार्यक्षमता की गारंटी नहीं दे सकता।
-scanPrivateReposOnly = यह निर्दिष्ट करने के लिए वैकल्पिक बूलियन फ़्लैग है कि क्या आप निजी उपयोगकर्ता रिपॉजिटरी को स्कैन करना चाहते हैं। इसका उल्लेख करने पर सार्वजनिक उपयोगकर्ता रिपॉजिटरी स्कैन नहीं की जाएंगी। और, आपको वॉल्यूम को कंटेनर पर माउंट करके SSH कुंजी प्रदान करनी होगी। साथ ही, यह केवल user फ़्लैग, repoURL फ़्लैग या org फ़्लैग के साथ काम करता है।
जब scanPrivateReposOnly फ़्लैग के साथ और orgOnly फ़्लैग के बिना org फ़्लैग का उल्लेख किया जाता है, तो यह इस संगठन से संबंधित सार्वजनिक और निजी दोनों रिपॉजिटरी को स्कैन करेगा, जिस तक उपयोगकर्ता की पहुंच है (जिसका टोकन प्रदान किया गया है)। फिर यह केवल उपयोगकर्ता (जिसका टोकन प्रदान किया गया है) की निजी रिपॉजिटरी को स्कैन करना जारी रखेगा। अंत में, यह इस उपयोगकर्ता (जिसका टोकन प्रदान किया गया है) के सभी सार्वजनिक और गुप्त गिस्ट को स्कैन करना जारी रखेगा। संक्षेप में, scanPrivateReposOnly फ़्लैग वास्तव में केवल user और repoURL फ़्लैग को प्रभावित करता है।
-enterpriseURL = एंटरप्राइज गिटहब URL प्रदान करने के लिए वैकल्पिक फ़्लैग, यदि आप एंटरप्राइज रिपॉजिटरी को स्कैन करना चाहते हैं। यह कुछ इस तरह होना चाहिए: https://github.org.com/api/v3 और साथ ही SSH कुंजी को कंटेनर पर माउंट किया जाना चाहिए। नीचे गिटहब एंटरप्राइज स्कैन करना देखें।
-threads = डिफ़ॉल्ट मान 10 है। यह थ्रेड्स की संख्या को सीमित करने के लिए है यदि आपका सिस्टम पर्याप्त शक्तिशाली नहीं है। अधिकांश मामलों में, इसे 10 पर छोड़ना ठीक रहना चाहिए।
-thogEntropy = यह एक वैकल्पिक फ़्लैग है जो मूल रूप से बताता है कि क्या आप truffleHog से उच्च एन्ट्रॉपी पर आधारित रहस्य वापस चाहते हैं या नहीं। truffleHog के उच्च एन्ट्रॉपी रहस्य बहुत अधिक शोर उत्पन्न करते हैं, इसलिए यदि आप वास्तव में वह सब शोर नहीं चाहते हैं और यदि आप एक बड़े संगठन पर git-all-secrets चला रहे हैं, तो मैं इस फ़्लैग का उल्लेख न करने की सलाह दूंगा। डिफ़ॉल्ट रूप से, यह False पर सेट है, जिसका अर्थ है कि truffleHog केवल rules.json फ़ाइल में रेगुलर एक्सप्रेशन के आधार पर परिणाम उत्पन्न करेगा। यदि आप एक छोटे से संगठन को सीमित संख्या में रिपॉजिटरी के साथ या कुछ रिपॉजिटरी वाले उपयोगकर्ता को स्कैन कर रहे हैं, तो इस फ़्लैग का उल्लेख करना अधिक समझ में आता है।