
गिट रिपॉजिटरी को क्लोन और मिरर करने, डेल्टा की गणना करने, और हटाए गए या रीसेट किए गए कमिट में छिपी गुप्त जानकारी का पता लगाने के लिए gitleaks चलाने वाली शेल स्क्रिप्ट।
इस रिपॉजिटरी में शेल स्क्रिप्ट हैं जिनका उपयोग क्लोन और मिरर Git रिपॉजिटरी के बीच अंतर डाउनलोड और विश्लेषण करने के लिए किया जा सकता है। Git के व्यवहार में अंतर्निहित विचित्रता के बारे में अधिक जानकारी के लिए कृपया हमारा ब्लॉग पोस्ट पढ़ें।
ये स्क्रिप्ट दी गई Git रिपॉजिटरी की एक प्रतिलिपि क्लोन करेंगी, दोनों सामान्य क्लोन और मिरर (“--mirror”) विकल्प के साथ। फिर ये दोनों के बीच का अंतर (delta) बनाएगी, ताकि रिपॉजिटरी के उन हिस्सों को ढूँढा जा सके जो केवल मिरर मोड में उपलब्ध हैं। अंत में, gitleaks चलाया जाएगा यह देखने के लिए कि डेल्टा भाग में कोई रहस्य (secrets) मौजूद हैं या नहीं, और "git log" का उपयोग करके कमिट के बॉडी वाली एक एकल फ़ाइल बनाई जाएगी ताकि उनका आसानी से विश्लेषण किया जा सके।
कृपया ध्यान दें कि चूँकि यह स्क्रिप्ट रिपॉजिटरी की तीन प्रतियाँ बनाती है, यह बहुत अधिक डिस्क स्थान ले सकती है।
आप निम्नलिखित दो उदाहरण रिपॉजिटरी पर इन उपकरणों का परीक्षण कर सकते हैं:
आपको Git, Python 3, GitLeaks और git-filter-repo स्थापित होने चाहिए। MacOS पर इन्हें स्थापित करने का एक उदाहरण यहाँ दिया गया है:
brew install git python3 gitleaks git-filter-repo
आप इसे किसी रिपॉजिटरी के विरुद्ध निम्नानुसार चला सकते हैं:
git clone https://github.com/nightwatchcybersecurity/gitbleed_tools.git
cd gitbleed_tools
./gitbleed.sh https://github.com/nightwatchcybersecurity/gitbleed_tools.git example
कुछ सहायक स्क्रिप्ट भी हैं जिनका उपयोग GitHub और GitLab रिपॉजिटरी को स्कैन करने के लिए निम्नानुसार किया जा सकता है:
./gitbleed_gh.sh nightwatchcybersecurity/gitbleed_tools
./gitbleed_gl.sh nwcs/junit_ui_bug
यह एक उदाहरण फ़ोल्डर बनाएगा जिसमें तीन उपफ़ोल्डर होंगे:
साथ ही तीन फ़ाइलें बनाई जाती हैं:
कृपया समस्याओं की रिपोर्ट करने या सुविधाओं का सुझाव देने के लिए GitHub इश्यू ट्रैकर का उपयोग करें: https://github.com/nightwatchcybersecurity/gitbleed_tools
आप research /at/ nightwatchcybersecurity [dot] com पर ईमेल भी भेज सकते हैं