
Nmap NSE के साथ उन्नत भेद्यता स्कैनिंग
Vulscan एक मॉड्यूल है जो nmap को एक भेद्यता स्कैनर में बढ़ाता है। nmap विकल्प -sV प्रति सेवा संस्करण का पता लगाने में सक्षम बनाता है जिसका उपयोग पहचाने गए उत्पाद के अनुसार संभावित दोषों को निर्धारित करने के लिए किया जाता है। डेटा VulDB के ऑफलाइन संस्करण में देखा जाता है।
कृपया फ़ाइलों को अपनी Nmap स्थापना के निम्नलिखित फ़ोल्डर में स्थापित करें:
Nmap\scripts\vulscan\*
GitHub रिपॉजिटरी को इस प्रकार क्लोन करें:
git clone https://github.com/scipag/vulscan scipag_vulscan
ln -s `pwd`/scipag_vulscan /usr/share/nmap/scripts/vulscan
एक सरल भेद्यता स्कैन शुरू करने के लिए आपको निम्नलिखित न्यूनतम कमांड चलानी होगी:
nmap -sV --script=vulscan/vulscan.nse www.example.com
वर्तमान में निम्नलिखित पूर्व-स्थापित डेटाबेस उपलब्ध हैं:
एकल डेटाबेस का उपयोग करने के लिए आप vulscan को निम्नलिखित आर्गुमेंट के साथ निष्पादित कर सकते हैं:
--script-args vulscandb=your_own_database
अपने स्वयं के डेटाबेस बनाना और संदर्भित करना भी संभव है। इसके लिए एक डेटाबेस फ़ाइल बनाने की आवश्यकता होती है, जिसकी निम्नलिखित संरचना होती है:
<id>;<title>
बस vulscan को चलाएं जैसे आप पूर्व-वितरित डेटाबेस में से किसी एक का संदर्भ देते हुए चलाते हैं। अपने स्वयं के डेटाबेस और भेद्यता कनेक्शन को मेरे साथ साझा करने में संकोच न करें, ताकि इसे आधिकारिक रिपॉजिटरी में जोड़ा जा सके।
भेद्यता डेटाबेस नियमित रूप से अपडेट और एकत्रित किए जाते हैं। नवीनतम प्रकट भेद्यताओं का समर्थन करने के लिए, अपने स्थानीय भेद्यता डेटाबेस को अद्यतित रखें।
डेटाबेस को स्वचालित रूप से अपडेट करने के लिए, update.sh फ़ाइल में निष्पादन अनुमतियाँ सेट करें और इसे चलाएं:
chmod 744 update.sh
./update.sh
यदि आप अपने डेटाबेस को मैन्युअल रूप से अपडेट करना चाहते हैं, तो निम्नलिखित वेबसाइट पर जाएं और इन फ़ाइलों को डाउनलोड करें:
फ़ाइलों को अपने vulscan फ़ोल्डर में कॉपी करें:
/vulscan/
यदि संस्करण का पता लगाना सॉफ़्टवेयर संस्करण की पहचान करने में सक्षम था और भेद्यता डेटाबेस ऐसे विवरण प्रदान कर रहा है, तो यह डेटा भी मिलान किया जाता है।
इस सुविधा को अक्षम करने से गलत-सकारात्मक (false-positive) उत्पन्न हो सकते हैं, लेकिन गलत-नकारात्मक (false-negative) को भी समाप्त कर सकते हैं और प्रदर्शन में थोड़ी वृद्धि कर सकते हैं। यदि आप अतिरिक्त संस्करण मिलान को अक्षम करना चाहते हैं, तो निम्नलिखित आर्गुमेंट का उपयोग करें:
--script-args vulscanversiondetection=0
vulscan का संस्करण पता लगाना उतना ही अच्छा है जितना Nmap का संस्करण पता लगाना और भेद्यता डेटाबेस प्रविष्टियाँ हैं। कुछ डेटाबेस निर्णायक संस्करण जानकारी प्रदान नहीं करते हैं, जिससे बहुत सारे गलत-सकारात्मक (false-positives) हो सकते हैं (जैसा कि Apache सर्वरों के लिए देखा जा सकता है)।
स्क्रिप्ट केवल सर्वोत्तम मिलानों की पहचान करने का प्रयास कर रही है। यदि कोई सकारात्मक मिलान नहीं मिल पाया, तो सर्वोत्तम संभावित मिलान (जो गलत-सकारात्मक हो सकता है) प्रदर्शित किया जाता है।
यदि आप सभी मिलान दिखाना चाहते हैं, जो बहुत सारे गलत-सकारात्मक उत्पन्न कर सकते हैं लेकिन आगे की जांच के लिए उपयोगी हो सकते हैं, तो निम्नलिखित आर्गुमेंट का उपयोग करें:
--script-args vulscanshowall=1
इंटरैक्टिव मोड आपको प्रत्येक पोर्ट के लिए संस्करण पता लगाने के परिणामों को ओवरराइड करने में मदद करता है। इंटरैक्टिव मोड को सक्षम करने के लिए निम्नलिखित आर्गुमेंट का उपयोग करें:
--script-args vulscaninteractive=1
सभी मिलान परिणाम एक-एक पंक्ति में मुद्रित होते हैं। इसके लिए डिफ़ॉल्ट लेआउट है:
[{id}] {title}\n
निम्नलिखित आर्गुमेंट के साथ किसी अन्य पूर्व-परिभाषित रिपोर्ट संरचना का उपयोग करना संभव है:
--script-args vulscanoutput=details
--script-args vulscanoutput=listid
--script-args vulscanoutput=listlink
--script-args vulscanoutput=listtitle
आप निम्नलिखित आर्गुमेंट (कुछ उदाहरण) का उपयोग करके अपनी स्वयं की रिपोर्ट संरचना को लागू कर सकते हैं:
--script-args vulscanoutput='{link}\n{title}\n\n'
--script-args vulscanoutput='ID: {id} - Title: {title} ({matches})\n'
--script-args vulscanoutput='{id} | {product} | {version}\n'
डायनामिक रिपोर्ट टेम्पलेट के लिए निम्नलिखित तत्व समर्थित हैं:
प्रत्येक डिफ़ॉल्ट डेटाबेस एक url और एक लिंक के साथ आता है, जिसका उपयोग स्कैनिंग के दौरान किया जाता है और अनुकूलित रिपोर्ट टेम्पलेट के भीतर {link} के रूप में एक्सेस किया जा सकता है। कस्टम डेटाबेस लिंक का उपयोग करने के लिए, निम्नलिखित आर्गुमेंट का उपयोग करें:
--script-args "vulscandblink=http://example.org/{id}"
ध्यान रखें कि इस प्रकार का व्युत्पन्न भेद्यता स्कैनिंग nmap के संस्करण पता लगाने के विश्वास, प्रलेखित भेद्यताओं की मात्रा और पैटर्न मिलान की सटीकता पर अत्यधिक निर्भर करता है। संभावित दोषों के अस्तित्व की पुष्टि अतिरिक्त स्कैनिंग या शोषण तकनीकों से नहीं की जाती है।