
सरल भेद्यता स्कैनिंग फ्रेमवर्क
यह उपकरण किसी दिए गए निर्देशिका में फ़ाइलों को देखकर किसी भी असुरक्षित, भेद्य या खतरनाक फ़ंक्शन कॉल का पता लगाने का लक्ष्य रखता है। इसे विस्तार योग्य और समझने में आसान बनाया गया है; आप मॉड्यूल को "प्लग-एंड-प्ले" कर सकते हैं जो यह निर्दिष्ट करते हैं कि किस प्रकार की फ़ाइलें कौन से 'स्कैन' को ट्रिगर करेंगी, जिसमें आप यह निर्धारित करते हैं कि प्रत्येक फ़ाइल के भीतर खतरनाक सामग्री को खोजने और रिपोर्ट करने के लिए क्या कार्रवाई की जानी चाहिए।
साथ ही, इसे एक प्रायोगिक स्वचालित फ़ज़िंग टूल के रूप में भी चलाया जा सकता है। प्रभावी मॉड्यूल दिए जाने पर, फ्रेमवर्क को स्वचालित रूप से एक्ज़ीक्यूटेबल को फ़ज़ करने के लिए अनुकूलित किया जा सकता है। आप सामान्य fuzz.fuzzer.Fuzzer वर्ग का उपयोग करके फ़ज़र्स लागू कर सकते हैं। चेतावनी: यह scan.scanner.Scanner का उपवर्ग है, लेकिन एक्ज़ीक्यूटेबल अनुमति वाली सभी फ़ाइलों को निष्पादित करेगा! सावधान रहें!
$ ./peach.py -h
usage: peach.py [-h] [-s] [-f] [--follow] [-c CONFIG] [-o OUTPUT] [-sh] [-nh]
paths [paths ...]
positional arguments:
paths files and directories to scan
optional arguments:
-h, --help show this help message and exit
-s, --scan use configuration file for vulnerability scanning
(vulnscan.json).
-f, --fuzz use configuration file for automated fuzzing
(fuzzing.json).
--follow follow symbolic links when scanning directories
-c CONFIG, --config CONFIG
specify a custom configuration file (default:
vulnscan.json)
-o OUTPUT, --output OUTPUT
output results to the specified JSON file
-sh, --scan-hidden Scan hidden files and directories (default)
-nh, --no-hidden Do not scan hidden files and directories
यह उपयोगिता का मुख्य भाग है; Python स्क्रिप्ट जो दिए गए command-line arguments से सभी threads और स्कैन शुरू करती है।
यह निर्देशिका उन सभी वर्गों को रखती है जिन्हें विशिष्ट फ़ाइल 'स्कैन' के लिए डुप्लिकेट और विस्तारित किया जा सकता है, जिसमें आप लगभग वह सब कुछ कर सकते हैं जो आप चाहते हैं। चीजों को साफ रखने के लिए उन्हें केवल इस फ़ोल्डर में रखा गया है।
यह वैश्विक कॉन्फ़िगरेशन की तरह काम करता है; इस JSON फ़ाइल में आप निर्दिष्ट करते हैं कि आप सभी प्रसंस्कृत फ़ाइलों के लिए कौन से स्कैन चलाना चाहते हैं, और उन फ़ाइलों की पहचान करने के लिए आप जो भी मानदंड का उपयोग करना चाहते हैं, उसे निर्धारित करें (फ़ाइल एक्सटेंशन, MIME type, या एक्ज़ीक्यूटेबल)। इस कॉन्फ़िगरेशन में सूचीबद्ध सभी स्कैनर्स केवल वही होने चाहिए: स्कैनर्स। यहाँ कोई फ़ज़र सूचीबद्ध नहीं होना चाहिए!
यह फ़ाइल vulnscan.json के समान है, सिवाय इसके कि इसमें फ़ज़र्स के संदर्भ हैं और इसका उपयोग किसी निर्देशिका या फ़ाइल को स्वचालित रूप से फ़ज़ करना शुरू करने के लिए किया जा सकता है। चेतावनी: इस कॉन्फ़िग का उपयोग करने से एक्ज़ीक्यूटेबल अनुमति वाली सभी फ़ाइलें निष्पादित होंगी! इसका उपयोग करते समय सावधान रहें!
बस इतना ही! इस टूल के पीछे विचार सरल है; असली शक्ति बड़ी मात्रा में अज्ञात डेटा में किसी भी शरारती सामग्री या कोड का पता लगाने और रिपोर्ट करने के लिए स्कैनर्स बनाने से आती है। तो अपना स्वयं का स्कैनर जोड़ें!
इस टूल के साथ प्रदान किए गए सभी फ़ज़र्स का उपयोग करने के लिए आपको अपने सिस्टम पर खुली फ़ाइलों की अधिकतम संख्या बढ़ाने की आवश्यकता हो सकती है। फ़ज़र्स को एक साथ चलाने के कारण, बड़ी संख्या में खुली फ़ाइलें जल्दी जमा हो जाती हैं। अधिकांश आधुनिक सिस्टम पर, सीमा 1024 पर रखी गई है, जिससे "Out of files" (EMFILE) त्रुटि उत्पन्न होगी। अपने सिस्टम के लिए अधिकतम खुली फ़ाइल संख्या बढ़ाने से समस्या हल होनी चाहिए।
यह निर्देशिका वह सब कुछ रखती है जिसका उपयोग अक्सर कुछ स्कैनर्स के परीक्षण के लिए किया जाता रहा है। आप अपनी इच्छानुसार इसमें जोड़ सकते हैं।