
लिनक्स पोस्ट-एक्सप्लॉइटेशन प्रिविलेज एस्केलेशन एनुमरेशन
Enumy एक अल्ट्रा फास्ट पोर्टेबल एक्जीक्यूटेबल है जिसे आप पेन्टेस्ट या CTF के पोस्ट-एक्सप्लॉइटेशन चरण के दौरान लिनक्स मशीन पर ड्रॉप करते हैं। enumy चलाने से बॉक्स में सामान्य सुरक्षा कमजोरियों के लिए एन्युमेरेट होगा।
आप x86 या x64 टैब से रिलीज़ का अंतिम बाइनरी डाउनलोड कर सकते हैं। musl से स्थिर रूप से जुड़ा हुआ अंतिम enumy बाइनरी को लक्ष्य मशीन पर स्थानांतरित करें।
./enumy
$ ./enumy64 -h
▄█▀─▄▄▄▄▄▄▄─▀█▄ _____
▀█████████████▀ | __|___ _ _ _____ _ _
█▄███▄█ | __| | | | | | |
█████ |_____|_|_|___|_|_|_|_ |
█▀█▀█ |___|
https://github.com/luke-goddard/enumy
Enumy - लक्ष्य वातावरण को एन्युमेरेट करने और
सामान्य सुरक्षा कमजोरियों और हॉटस्पॉट्स की तलाश करने के लिए उपयोग किया जाता है
----------------------------------------------------------------------
आउटपुट
-o <loc> परिणामों को इस स्थान पर OUTPUT करें (डिफ़ॉल्ट enumy.json)
फाइलसिस्टम पर चलना
-i <loc> इस निर्देशिका में फाइलों को IGNORE करें (नेटवर्क शेयर के लिए उपयोगी)
-w <loc> केवल इस निर्देशिका में फाइलों पर WALK करें (डेवलपमेंट के लिए उपयोगी)
स्कैन विकल्प
-f FULL स्कैन चलाएँ (CPU गहन स्कैन सक्षम)
-t <num> THREADS (डिफ़ॉल्ट 4)
प्रिंटिंग विकल्प
-a सभी सुरक्षा AUDIT मुद्दों को स्क्रीन पर प्रिंट करें (शायद CTF के दौरान मदद न करे)
इस फ्लैग के सेट होने की परवाह किए बिना मुद्दे हमेशा परिणाम फ़ाइलों में लॉग किए जाते हैं।
-d <1|2> DEBUG मोड प्रिंट करें (1 कम, 2 उच्च) त्रुटियों को स्क्रीन पर प्रिंट करने के लिए।
-g <H|M|L> स्क्रीन पर उन मानों को प्रिंट करें जो उच्च, मध्यम और निम्न से GREATER हैं या उनके बराबर हैं
-p <H|M|L|I> उच्च, मध्यम, निम्न और जानकारी के मुद्दों को PRINT न करें (उदाहरण के लिए नीचे देखें)
-m 1-100 समान नाम वाले मुद्दों की MAXIMUM संख्या स्क्रीन पर प्रिंट करने के लिए डिफ़ॉल्ट (असीमित)
डेवलपमेंट के दौरान संकलन करने के लिए, केवल make और libcap लाइब्रेरी आवश्यक है।
sudo apt-get install libcap-dev
make
glibc निर्भरता हटाने और सभी लाइब्रेरियों को स्थिर रूप से जोड़ने के लिए/musl के साथ संकलन करने के लिए निम्नलिखित करें। ध्यान दें कि ऐसा करने के लिए आपके पास एल्पाइन बिल्ड वातावरण बनाने के लिए डॉकर स्थापित होना चाहिए।
./build.sh 64bit
./build.sh 32bit
./build.sh all
cd output

नीचे लागू किए गए स्कैन की लगातार बढ़ती सूची है।
ध्यान दें कि :x: के रूप में चिह्नित परिणामों को प्रिंट करने के लिए, -a फ्लैग के साथ ऑडिट मोड सक्षम करें।
यह स्कैन कर्नेल संस्करणों की जाँच करेगा कि क्या वे ज्ञात शोषण वाले किसी कर्नेल संस्करण से मेल खाते हैं।
इस स्कैन का विचार सिस्टम को एन्युमेरेट करना है ताकि असामान्य SUID/GUID बाइनरीज़ या कमज़ोर अनुमतियों वाले बाइनरीज़ मिल सकें जिनका शोषण किया जा सके।
हाल ही में Linux कर्नेल क्षमताओं का समर्थन करता है, यह जोखिम को कम करने के लिए एक फ़ाइल को रूट की शक्तियों का एक उपसमूह देने का पसंदीदा तरीका है। हालाँकि यह चीज़ों को करने का अधिक सुरक्षित तरीका है, यदि आप भाग्यशाली हैं कि किसी फ़ाइल पर असामान्य क्षमताएँ सेट हैं, तो यह काफी संभव है कि आप उच्च पहुँच प्राप्त करने के लिए एक्जीक्यूटेबल का शोषण कर सकते हैं। Enumy सिस्टम पर सभी एक्जीक्यूटेबल फ़ाइलों पर सेट क्षमताओं की जाँच करेगा।
यह अधिक सामान्य स्कैन है जो किसी फ़ाइल को उसकी सामग्री, फ़ाइल एक्सटेंशन और फ़ाइल नाम के आधार पर वर्गीकृत करने का प्रयास करेगा। Enumy निजी कुंजियाँ, पासवर्ड और बैकअप फ़ाइलों जैसी फ़ाइलों की तलाश करेगा।
कोरडंप फ़ाइलें एक प्रकार की ELF फ़ाइल होती हैं जिसमें प्रोग्राम के अप्रत्याशित रूप से समाप्त होने पर प्रक्रिया का एड्रेस स्पेस होता है। अब कल्पना करें कि इस प्रक्रिया की मेमोरी पढ़ने योग्य थी और इसमें संवेदनशील जानकारी थी। या इससे भी अधिक रोमांचक, यह कोरडंप एक आंतरिक रूप से विकसित टूल के लिए हो सकता है जो seg fault हुआ, जिससे आप एक शून्य-दिवस विकसित कर सकते हैं।
कुछ फ़ाइलों में कभी SUID बिट सेट नहीं होना चाहिए, एक आलसी sys admin के लिए डॉकर, ionice, hexdump जैसी फ़ाइल को SUID देना और bash स्क्रिप्ट को काम करने देना या अपना जीवन आसान बनाना काफी सामान्य है। यह स्कैन कुछ ज्ञात खराब SUID बाइनरीज़ खोजने का प्रयास करता है।
Sysctl का उपयोग रनटाइम पर कर्नेल पैरामीटर को संशोधित करने के लिए किया जाता है। इन कर्नेल पैरामीटरों को क्वेरी करना और यह जाँचना भी संभव है कि ASLR जैसे महत्वपूर्ण सुरक्षा उपाय सक्षम हैं या नहीं।
लैंड से जीवित रहना एक तकनीक है जहाँ हमलावर सिस्टम पर पहले से मौजूद चीज़ों को हथियार बनाते हैं। वे अन्य कारणों के अलावा छिपे रहने के लिए ऐसा करते हैं। यह स्कैन उन फ़ाइलों को एन्युमेरेट करेगा जिनकी एक हमलावर तलाश करेगा।
यह स्कैन उनकी निर्भरताओं के लिए ELF फ़ाइलों को पार्स करेगा। यदि हमारे पास इनमें से किसी भी निर्भरता तक लिखने की पहुँच है या किसी DT_RPATH और DT_RUNPATH मानों तक लिखने की पहुँच है, तो हम उस एक्जीक्यूटेबल में अपना स्वयं का दुर्भावनापूर्ण शेयर्ड ऑब्जेक्ट बना सकते हैं, जो संभावित रूप से सिस्टम से समझौता कर सकता है।
SSH वास्तविक दुनिया में आपको मिलने वाली सबसे सामान्य सेवाओं में से एक है। इसे गलत तरीके से कॉन्फ़िगर करना भी काफी आसान है। यह स्कैन जाँच करेगा कि क्या इसे किसी भी तरह से हार्डन किया जा सकता है।
वर्तमान उपयोगकर्ता स्कैन केवल /etc/passwd को पार्स करता है। इस जानकारी से हम रूट खाते, असुरक्षित और लापता होम निर्देशिकाएँ आदि पाते हैं।
यह स्कैन वैश्विक रूप से लिखने योग्य फ़ाइलों, असमान अनुमतियों और बिना मालिक वाली फ़ाइलों को ढूंढेगा। स्कैन की प्रेरणा के लिए यहाँ देखें।
यह स्कैन उन लोगों के लिए उपयोगी होगा जो अपनी Linux मशीन को हार्डन करने का प्रयास कर रहे हैं। यह अनएन्क्रिप्टेड ड्राइव और असुरक्षित माउंटिंग कॉन्फ़िगरेशन जैसे मुद्दों को उजागर करेगा।
| स्कैन प्रकार | त्वरित स्कैन | पूर्ण स्कैन | लागू किया गया | स्क्रीन पर मुद्रित | लॉग में सहेजा |
|---|
| कर्नेल शोषण सुझाव | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| SUID/GUID स्कैन | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| फ़ाइल क्षमता स्कैन | ✔️ | ✔️ | ✔️ | ❌ | ✔️ |
| दिलचस्प फ़ाइलें स्कैन | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| कोरडंप स्कैन | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| ब्रेकआउट बाइनरी स्कैन | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| SSHD कॉन्फ़िगरेशन स्कैन | ✔️ | ✔️ | ✔️ | ❌ | ✔️ |
| Sysctl स्कैन | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| लैंड से जीवित रहना स्कैन | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| वर्तमान उपयोगकर्ता स्कैन | ✔️ | ✔️ | ✔️ | ✔️ | ✔️ |
| *.so इंजेक्शन स्कैन | ❌ | ✔️ | ✔️ | ❌ | ✔️ |
| अनुमतियाँ स्कैन | ❌ | ✔️ | ✔️ | ❌ | ✔️ |
| फ़ाइल सिस्टम स्कैन | ❌ | ✔️ | ✔️ | ❌ | ✔️ |
| डॉकर स्कैन | ✔️ | ✔️ | ❌ | ✔️ | |
| पर्यावरण स्कैन | ✔️ | ✔️ | ❌ | ✔️ | |
| विशेषाधिकार प्राप्त पहुँच स्कैन | ✔️ | ✔️ | ❌ | ✔️ | |
| नेटवर्किंग स्कैन | ✔️ | ✔️ | ❌ | ✔️ | |
| सिस्टम जानकारी स्कैन | ✔️ | ✔️ | ❌ | ✔️ | |
| संस्करण जानकारी स्कैन | ✔️ | ✔️ | ❌ | ✔️ | |
| डिफ़ॉल्ट कमज़ोर क्रेडेंशियल स्कैन | ✔️ | ✔️ | ❌ | ✔️ | |
| कमज़ोर क्रिप्टो स्कैन | ❌ | ✔️ | ❌ | ✔️ |