
nmap-vulners v1.5
Nmap NSE स्क्रिप्ट जो पहचाने गए नेटवर्क सेवाओं के लिए ज्ञात कमजोरियों (CVEs) की पहचान करने के लिए Vulners API से क्वेरी करती है, मानक पोर्ट स्कैनिंग को स्वचालित CVE लुकअप और CVSS स्कोरिंग के साथ बढ़ाती है।
nmap-vulners
nmap सेवा स्कैन को CVEs, एक्सप्लॉइट्स और उन चीज़ों की रैंक्ड सूची में बदलें जिन पर वास्तविक दुनिया में हमला हो रहा है।
एक NSE स्क्रिप्ट जो nmap द्वारा पहले से पहचाने गए सॉफ़्टवेयर को लेती है, Vulners डेटाबेस से पूछती है कि उसके बारे में क्या ज्ञात है, और उत्तर को स्कैन रिपोर्ट के अंदर प्रिंट करती है - सबसे खराब को पहले, उसके आधार पर जो वास्तव में एक्सप्लॉइट करने योग्य है।
स्कैनिंग के लिए प्रकाशित होस्ट्स के वास्तविक स्कैन। कोई कुंजी नहीं, फिर एक कुंजी, फिर एक वेब पोर्ट: nmap का -sV एक Coyote बैनर रिपोर्ट करता है और स्कैन उसके पीछे के Tomcat और jQuery का नाम बताता है।
यह क्या करता है
हर खुले पोर्ट के लिए यह उस सॉफ़्टवेयर को देखता है जिसे nmap ने पहचाना है - वे CPEs जो -sV ने उत्पन्न किए - और प्रिंट करता है कि Vulners उसके बारे में क्या जानता है: सबसे खराब को पहले, उसके आधार पर जो एक्सप्लॉइट किया जा रहा है न कि केवल स्कोर के आधार पर, और हर पंक्ति उसके पीछे के पेज का एक लिंक है।
HTTP पोर्ट पर यह वेब स्टैक का भी फ़िंगरप्रिंट लेता है, जो उस सॉफ़्टवेयर का नाम बताता है जिसे -sV नहीं देख सकता - एक एप्लिकेशन फ्रेमवर्क, एक CMS, रिवर्स प्रॉक्सी के पीछे का PHP संस्करण। 721 नियम प्रतिक्रिया के उन हिस्सों को पढ़ते हैं जो संस्करण रखते हैं: Server हेडर, X-Powered-By, कुकीज़, पेज का शीर्षक, <meta> टैग, <script src> फ़ाइलनाम और बॉडी। उन पहचानों को भी देखा जाता है, और पोर्ट पर प्रकाशित किया जाता है ताकि बाकी स्कैन उनका उपयोग कर सके।
स्कैन से परे यह दो चीज़ें करता है:
- यह nmap के अपने सेवा बैनर को पढ़ता है। जब
-sVकिसी सेवा का नाम नहीं बता पाता, तो कच्चे बैनर को FTP, SMTP, SSH, MySQL, DNS, NTP, LDAP और अधिक के नियमों के विरुद्ध मिलान किया जाता है। इसके लिए कोई अतिरिक्त अनुरोध नहीं लगता, और यह वह स्थिति है जहाँ एक पोर्ट अन्यथा कुछ भी रिपोर्ट नहीं करता। - यह ऐसे उत्पाद से पूछता है जो नहीं बताएगा। एक CMS जो अपना नाम बताता है और अपना संस्करण छिपाता है, सामान्य है, और कोई भी पैटर्न मिलान उस संख्या को नहीं निकाल सकता जो पेज पर नहीं है। जब उत्पाद पहचाना जाता है और संस्करण नहीं, तो एक अनुरोध उस स्थान पर जाता है जो उत्तर देता है - Drupal के लिए
/CHANGELOG.txt, Joomla के लिए/administrator/manifests/files/joomla.xml। छह जांचे गए उत्पादों में से कोई भी नहीं चलाने वाले होस्ट को कुछ भी अतिरिक्त नहीं भेजा जाता।```sh nmap -sV --script vulners
यह पूरा इंटरफ़ेस है। यह API key के बिना काम करता है; key के साथ यह आपको
अधिक जानकारी देता है। कोई mode switch नहीं है।```
PORT STATE SERVICE VERSION
80/tcp open http Apache httpd 2.4.7 ((Ubuntu))
| vulners: cpe:/a:apache:http_server:2.4.7 272 findings, 56 exploitable
| SEVERITY CVSS AI FLAGS LINK
| ======== ==== ==== ======= ==============================================================
| CRITICAL 10.0 8.8 EXP https://vulners.com/gitee/3E6BA608-776F-5B1F-9BA5-589CD2A5A351
| CRITICAL 9.8 9.9 EXP https://vulners.com/zdt/1337DAY-ID-39214
| CRITICAL 9.8 9.6 EXP https://vulners.com/packetstorm/PACKETSTORM:171631
| CRITICAL 9.8 9.9 https://vulners.com/cve/CVE-2021-44790
| CRITICAL 9.8 9.8 https://vulners.com/cve/CVE-2023-25690
|_ 262 more not shown; -v shows all, -vv adds where each was found
कुंजी के साथ, उसी होस्ट का वही स्कैन अलग-अलग उत्तर देता है - KEV का मतलब है कि CISA ने भेद्यता को वास्तविक दुनिया में शोषित के रूप में दर्ज किया है, और EPSS प्रकाशित संभावना है कि यह होगा:```
| vulners: cpe:/a:apache:http_server:2.4.7 272 findings, 78 exploitable
| SEVERITY CVSS EPSS FLAGS LINK
| ======== ==== ==== ======= ==============================================================
| CRITICAL 9.1 >99% KEV EXP https://vulners.com/cve/CVE-2024-38475
| CRITICAL 9.0 >99% KEV EXP https://vulners.com/cve/CVE-2021-40438
| CRITICAL 9.1 >99% KEV https://vulners.com/cnvd/CNVD-2024-36387
| CRITICAL 10.0 71% EXP https://vulners.com/gitee/3E6BA608-776F-5B1F-9BA5-589CD2A5A351
| CRITICAL 9.8 97% EXP https://vulners.com/cve/CVE-2021-44790
|_ 262 more not shown; -v shows all, -vv adds where each was found
वही 272 निष्कर्ष, एक अलग क्रम, एक अलग शीर्ष पंक्ति - और उनमें से 22 और
शोषण योग्य (exploitable) के रूप में ज्ञात हैं, क्योंकि एक कुंजी प्रत्येक शोषण को उन CVE से जोड़ती है जिनका वह
शोषण करता है। ये दोनों vulners.com के वास्तविक उत्तर हैं, जो उस बैनर को प्रस्तुत करने वाले
स्थानीय सर्वर के विरुद्ध कैप्चर किए गए हैं।
## रैंकिंग
तथ्य भविष्यवाणियों से ऊपर हैं। निष्कर्ष इस प्रकार क्रमबद्ध हैं:
1. **CISA KEV** - जंगल में शोषण किए जाने के रूप में दर्ज
2. **SSVC `active`** - किसी समन्वयक का निर्णय कि शोषण हो रहा है
3. **एक शोषण मौजूद है** - कोड प्रकाशित है, इसके लिए या किसी ऐसे CVE के लिए जिसे यह नामित करता है
4. **उच्च EPSS** - एक मॉडल शोषण की उम्मीद करता है
5. बाकी सब कुछ
CVSS एक बैंड के भीतर टाई तोड़ता है, बैंड के पार नहीं: एक शोषित 7.5 एक बदतर
समस्या है एक अशोषित 9.8 की तुलना में, और यह वही क्रम है जो यह कहता है।
कॉलम डेटा का अनुसरण करते हैं। एक संकेत जो उत्तर ने नहीं दिया वह अपना कॉलम खो देता है
बजाय एक खाली सेल दिखाने के, क्योंकि एक रिक्त EPSS "शांत" के रूप में पढ़ा जाता है, और
वह एक दावा है जिसे एक अनुपस्थित फ़ील्ड समर्थन नहीं कर सकती।
## एक API कुंजी क्या जोड़ती है
| | |
|---|---|
| **बिना कुंजी के** | nmap द्वारा पाया गया हर CPE मुफ्त एंडपॉइंट पर देखा जाता है। निष्कर्ष, स्कोर, शोषण फ़्लैग और Vulners का अपना AI स्कोर। कोई क्रेडिट नहीं, कोई खाता नहीं |
| **एक कुंजी, कोई क्रेडिट नहीं** | प्रत्येक निष्कर्ष वह प्राप्त करता है जो id एंडपॉइंट जानता है: शीर्षक, तिथियाँ, ऊपरी एडवाइज़री या शोषण पृष्ठ, शोषण-से-CVE लिंकेज, CISA KEV, और - लाइसेंस के आधार पर - EPSS और SSVC |
| **एक कुंजी, एक क्रेडिट** | वह सॉफ़्टवेयर जिसे मुफ्त पथ बिल्कुल भी नाम नहीं दे सका, उसके कच्चे बैनर से पहचाना जाता है। यही एकमात्र चीज़ है जिसकी यहाँ कोई लागत है, और केवल उस सेवा के लिए जिसमें कोई CPE नहीं है |
एक पोर्ट जो पहले से ही एक CPE रखता है वह कभी क्रेडिट नहीं खर्च करता: चार उत्पादों में मापा गया,
मुफ्त लुकअप एक CPE के लिए भुगतान किए गए के समान **समान CVE** लौटाता है।
एक क्रेडिट जो खरीदता है वह पहचान है, अधिक कमज़ोरियाँ नहीं।
मुफ्त कुंजियाँ [vulners.com/userinfo](https://vulners.com/userinfo) पर हैं।
## इंस्टॉल
**macOS, Linux, Kali, WSL** - एक पंक्ति, कोई तर्क नहीं:```sh
curl -fsSL https://raw.githubusercontent.com/vulnersCom/nmap-vulners/master/install.sh | sh
Windows - PowerShell व्यवस्थापक के रूप में:```powershell irm https://raw.githubusercontent.com/vulnersCom/nmap-vulners/master/install.ps1 | iex
इंस्टॉलर nmap से पूछता है कि वह अपना डेटा कहाँ रखता है, स्क्रिप्ट्स और उनकी डेटा फ़ाइलों को वहाँ कॉपी करता है, स्क्रिप्ट डेटाबेस को फिर से बनाता है, और फिर जाँचता है कि `--script vulners` वास्तव में उस चीज़ को हल करता है जो उसने अभी इंस्टॉल की है - nmap अपनी खुद की एक `vulners.nse` भेजता है, और यह उसे बदल देता है।
<details>
<summary><b>रूट के बिना, और अन्य विकल्प</b></summary>```sh
# into ~/.nmap, no sudo; the installer prints the NMAPDIR line to add to your profile
curl -fsSL https://raw.githubusercontent.com/vulnersCom/nmap-vulners/master/install.sh | sh -s -- --user
# a specific directory
./install.sh --prefix /usr/local/share/nmap
# a specific release
./install.sh --ref v2.0