
Nmap के लिए एक ड्रॉप-इन रिप्लेसमेंट, जो shodan.io द्वारा संचालित है।

Smap, shodan.io के मुफ्त API के साथ निर्मित एक पैसिव पोर्ट स्कैनर है। यह Nmap के समान कमांड लाइन तर्क लेता है और समान आउटपुट उत्पन्न करता है, जो इसे Nmap का सीधा प्रतिस्थापन बनाता है।
आप यहाँ से पहले से निर्मित बाइनरी डाउनलोड कर सकते हैं और तुरंत उपयोग कर सकते हैं।
go install -v github.com/s0md3v/smap/cmd/smap@latest
भ्रमित हैं या कुछ काम नहीं कर रहा? अधिक विस्तृत निर्देशों के लिए, यहाँ क्लिक करें
Smap AUR पर smap-git (स्रोत से निर्माण) और smap-bin (पहले से निर्मित बाइनरी) के रूप में उपलब्ध है।
Smap Homebrew पर भी उपलब्ध है।
brew update
brew install smap
Smap वही तर्क लेता है जो Nmap लेता है, लेकिन -p, -h, -V, -o*, -iL, --concurrency, और --append-output के अलावा अन्य विकल्प पैसिव मोड में अनदेखा कर दिए जाते हैं। पैसिव पोर्ट खोज के बाद वास्तविक Nmap स्कैन में Nmap विकल्प पास करने के लिए --nmap का उपयोग करें। यदि आप Nmap से परिचित नहीं हैं, तो यहाँ बताया गया है कि Smap का उपयोग कैसे करें।
smap 127.0.0.1 127.0.0.2
आप नई पंक्तियों द्वारा अलग किए गए लक्ष्यों की सूची का भी उपयोग कर सकते हैं।
smap -iL targets.txt
समर्थित प्रारूप
1.1.1.1 // IPv4 address
example.com // hostname
178.23.56.0/8 // CIDR
1.1.1.1-20 // IPv4 range
Smap 7 आउटपुट प्रारूपों का समर्थन करता है जिन्हें -o* के साथ निम्नानुसार उपयोग किया जा सकता है:
smap example.com -oX output.xml
यदि आप आउटपुट को टर्मिनल पर प्रिंट करना चाहते हैं, तो फ़ाइलनाम के रूप में हाइफ़न (-) का उपयोग करें।
समर्थित प्रारूप
oX // nmap's xml format
oG // nmap's greppable format
oN // nmap's default format
oA // output in all 3 formats above at once
oP // IP:PORT pairs separated by newlines
oS // custom smap format
oJ // json
नोट: चूँकि Nmap कमजोरियों और टैग्स को स्कैन/प्रदर्शित नहीं करता, इसलिए वह डेटा nmap के प्रारूपों में उपलब्ध नहीं होता। वह जानकारी देखने के लिए
-oSका उपयोग करें।
Smap डिफ़ॉल्ट रूप से इन ~4000 पोर्टों को स्कैन करता है। यदि आप कुछ निश्चित पोर्टों के परिणाम प्रदर्शित करना चाहते हैं, तो -p विकल्प का उपयोग करें।
smap -p21-30,80,443 -iL targets.txt
अपने स्थानीय nmap के साथ स्कैन को सीमित करने के लिए --nmap का उपयोग करें। Smap पहले Shodan द्वारा रिपोर्ट किए गए पोर्टों का संघ एकत्र करता है और फिर उस छोटी पोर्ट रेंज के साथ मूल लक्ष्यों पर एक बार Nmap चलाता है।
smap --nmap -Pn -sV --version-light 1.1.1.1
--nmap और --concurrency को छोड़कर, दिए गए तर्क Nmap को पास कर दिए जाते हैं। Smap पोर्ट रेंज को Shodan के उम्मीदवारों से बदल देता है; यदि आप -p निर्दिष्ट करते हैं, तो यह पहले उम्मीदवारों को उस रेंज तक सीमित करता है। Nmap स्कैन और आउटपुट को सीधे संभालता है, इसलिए इसके विकल्प और आउटपुट प्रारूप सामान्य रूप से काम करते हैं। केवल-होस्ट वाले ऑपरेशन जैसे -sL और -sn को पैसिव पोर्ट खोज के बिना ही पास कर दिए जाते हैं।
Smap के कस्टम आउटपुट प्रारूप पैसिव-मोड की विशेषताएँ हैं; --nmap के साथ, आउटपुट विकल्पों के सामान्य Nmap अर्थ होते हैं। यदि Shodan कोई उम्मीदवार पोर्ट रिपोर्ट नहीं करता है, तो Nmap नहीं चलाया जाता।
यदि पैसिव डेटा आपके उपयोग के लिए पर्याप्त अच्छा है, तो इससे समय बच सकता है।
Shodan पर बहुत अधिक आक्रामक रूप से हिट करने से बचने के लिए Smap डिफ़ॉल्ट रूप से 3 वर्कर का उपयोग करता है। आप इसे --concurrency के साथ बदल सकते हैं।
smap --concurrency 5 -iL targets.txt
चूँकि Smap केवल shodan.io से मौजूदा पोर्ट डेटा प्राप्त करता है, यह अत्यंत तेज़ है, लेकिन इसमें और भी कुछ है। आपको Smap का उपयोग करना चाहिए यदि:
नोट: यदि आप
--nmapका उपयोग करते हैं, तो Smap लक्ष्य के विरुद्धnmapचलाएगा और सक्रिय कनेक्शन बनाएगा। चूँकि Shodan का डेटा पुराना या अधूरा हो सकता है, इसे पोर्ट फ़िल्टर के रूप में उपयोग करने पर खुले पोर्ट छूट सकते हैं।