
wpscan v4.1.0
WordPress security scanner that detects vulnerabilities, enumerates plugins/themes/users, and checks for weak passwords. Integrates with the WPScan API for real-time vulnerability data.
WPScan
वर्डप्रेस सुरक्षा स्कैनर
WPScan वर्डप्रेस भेद्यता डेटाबेस - वर्डप्रेस सुरक्षा प्लगइन
स्थापना
पूर्वापेक्षाएँ
- (वैकल्पिक लेकिन अत्यधिक अनुशंसित: rbenv)
- Ruby >= 3.3 - अनुशंसित: नवीनतम स्थिर
- Curl >= 7.72 - अनुशंसित: नवीनतम स्थिर
- 7.29 में एक segfault है
- < 7.72 कुछ मामलों में
Stream error in the HTTP/2 framing layerका परिणाम हो सकता है
- RubyGems - अनुशंसित: नवीनतम स्थिर
- Nokogiri को आपके OS के आधार पर आपके पैकेज मैनेजर के माध्यम से स्थापित करने के लिए पैकेज की आवश्यकता हो सकती है, देखें https://nokogiri.org/tutorials/installing_nokogiri.html
पेनिट्रेशन टेस्टिंग वितरण में
पेनिट्रेशन टेस्टिंग वितरण (जैसे काली लिनक्स) का उपयोग करते समय, उपलब्ध होने पर पैकेज मैनेजर के माध्यम से wpscan को स्थापित/अपडेट करने की अनुशंसा की जाती है।
macOSX में Homebrew के माध्यम से
brew install wpscanteam/tap/wpscan
RubyGems से
WPScan मूल एक्सटेंशन वाले gems पर निर्भर करता है (जैसे yajl-ruby, nokogiri, ffi), इसलिए gem install wpscan से पहले एक कार्यशील C टूलचेन और Ruby डेवलपमेंट हेडर्स मौजूद होने चाहिए। इनके बिना, इंस्टॉल Failed to build gem native extension या make: x86_64-linux-gnu-gcc: No such file or directory जैसी त्रुटियों के साथ विफल हो जाता है (देखें #1844)।
- Debian / Ubuntu:
sudo apt install build-essential ruby-dev - Fedora / RHEL / CentOS:
sudo dnf install @development-tools ruby-devel - Arch Linux:
sudo pacman -S base-devel ruby - Alpine:
sudo apk add build-base ruby-dev - macOS: Xcode Command Line Tools स्थापित करें (
xcode-select --install)।
फिर gem स्थापित करें:
gem install wpscan
MacOSX पर, यदि Apple की System Integrity Protection (SIP) के कारण Gem::FilePermissionError उठाया जाता है, तो या तो RVM स्थापित करें और wpscan को फिर से स्थापित करें, या sudo gem install -n /usr/local/bin wpscan चलाएँ (देखें #1286)
अपडेट करना
आप wpscan --update का उपयोग करके स्थानीय डेटाबेस को अपडेट कर सकते हैं।
WPScan को स्वयं अपडेट करना gem update wpscan या पैकेज मैनेजर के माध्यम से किया जाता है (यह काली लिनक्स जैसे वितरणों के लिए काफी महत्वपूर्ण है: apt-get update && apt-get upgrade) जो इस बात पर निर्भर करता है कि WPScan कैसे (पूर्व) स्थापित किया गया था
डॉकर
docker pull wpscanteam/wpscan के साथ रेपो खींचें
उपयोगकर्ता नामों की गणना
docker run -it --rm -v wpscan-db:/wpscan/.cache/wpscan/db wpscanteam/wpscan --url https://target.tld/ --enumerate u
उपयोगकर्ता नामों की एक श्रेणी की गणना
docker run -it --rm -v wpscan-db:/wpscan/.cache/wpscan/db wpscanteam/wpscan --url https://target.tld/ --enumerate u1-100
** u1-100 को अपनी पसंद की श्रेणी से बदलें।
स्थानीय डेटाबेस को बनाए रखना
इमेज बिल्ड समय पर बेक की गई स्थानीय डेटाबेस की एक प्रतिलिपि के साथ शिप की जाती है। क्योंकि ऊपर दिए गए उदाहरण कमांड --rm का उपयोग करते हैं, रन के दौरान किया गया कोई भी डेटाबेस अपडेट कंटेनर से बाहर निकलने पर खो जाता है, इसलिए अगला रन फिर से (संभावित रूप से पुरानी) बेक-इन कॉपी से शुरू होता है।
/wpscan/.cache/wpscan/db (कंटेनर के अंदर wpscan उपयोगकर्ता का कैश निर्देशिका) पर एक नामित वॉल्यूम माउंट करना डेटाबेस को रनों के बीच रखता है, इसलिए wpscan --update केवल उन फ़ाइलों को फिर से डाउनलोड करता है जिनके चेकसम वास्तव में बदले हैं और 5-दिन की पुरानीता संकेत स्थानीय स्थापना की तरह व्यवहार करता है:
docker run -it --rm -v wpscan-db:/wpscan/.cache/wpscan/db wpscanteam/wpscan --update
नामित वॉल्यूम पहले उपयोग पर स्वचालित रूप से बनाया जाता है यदि वह पहले से मौजूद नहीं है।
उपयोग
पूर्ण उपयोगकर्ता दस्तावेज़ यहाँ पाया जा सकता है; https://github.com/wpscanteam/wpscan/wiki/WPScan-User-Documentation
wpscan --url blog.tld यह गति और सटीकता के बीच एक अच्छे समझौते के साथ डिफ़ॉल्ट विकल्पों का उपयोग करके ब्लॉग को स्कैन करेगा। यह संस्करण का पता लगाने, थीम का पता लगाने और दिलचस्प निष्कर्षों की खोज करने का कार्य करता है। प्लगइन्स, थीम, उपयोगकर्ताओं, बैकअप फ़ोल्डरों आदि की गणना करने के लिए, -e विकल्प का उपयोग करें (जैसे, सभी प्लगइन्स के लिए -e ap, कमजोर प्लगइन्स के लिए -e vp, बैकअप फ़ोल्डरों के लिए -e bf)।
यदि अधिक गुप्त दृष्टिकोण की आवश्यकता है, तो wpscan --stealthy --url blog.tld का उपयोग किया जा सकता है।
परिणामस्वरूप, --enumerate विकल्प का उपयोग करते समय, --plugins-detection को तदनुसार सेट करना न भूलें, क्योंकि इसका डिफ़ॉल्ट 'passive' है।
अधिक विकल्पों के लिए, एक टर्मिनल खोलें और wpscan --help टाइप करें (यदि आपने स्रोत से wpscan बनाया है, तो आपको कमांड git रेपो के बाहर टाइप करना चाहिए)
डेटाबेस स्थान
डेटाबेस स्थान XDG Base Directory Specification का अनुसरण करता है:
- नई स्थापनाएँ:
~/.cache/wpscan/db(या$XDG_CACHE_HOME/wpscan/dbयदि सेट है) - मौजूदा स्थापनाएँ:
~/.wpscan/db(पुराना पथ, पश्चगामी संगतता के लिए बनाए रखा गया)
रनटाइम फ़ाइलें जैसे डिफ़ॉल्ट HTTP कैश और कुकी जार $TMPDIR/wpscan के अंतर्गत संग्रहीत की जाती हैं जब
$TMPDIR सेट है। अन्यथा वे उसी प्रति-उपयोगकर्ता XDG कैश निर्देशिका का उपयोग करते हैं, उदाहरण के लिए
~/.cache/wpscan/cache और ~/.cache/wpscan/cookie_jar.txt। इन डिफ़ॉल्ट को --cache-dir और --cookie-jar के साथ ओवरराइड किया जा सकता है।
किसी मौजूदा स्थापना को XDG पथ पर स्थानांतरित करने के लिए:
mv ~/.wpscan ~/.cache/wpscan
वैकल्पिक: वर्डप्रेस भेद्यता डेटाबेस API
WPScan CLI उपकरण वास्तविक समय में वर्डप्रेस भेद्यता डेटा प्राप्त करने के लिए WordPress Vulnerability Database API का उपयोग करता है। WPScan के लिए भेद्यता डेटा प्राप्त करने के लिए, --api-token विकल्प के माध्यम से, या नीचे चर्चा के अनुसार कॉन्फ़िगरेशन फ़ाइल के माध्यम से एक API टोकन प्रदान किया जाना चाहिए। WPScan.com पर एक खाता पंजीकृत करके API टोकन प्राप्त किया जा सकता है।
प्रति दिन 25 तक API अनुरोध निःशुल्क दिए जाते हैं, जो अधिकांश वर्डप्रेस वेबसाइटों को दिन में कम से कम एक बार स्कैन करने के लिए उपयुक्त होना चाहिए। जब दैनिक 25 API अनुरोध समाप्त हो जाते हैं, तो WPScan सामान्य रूप से काम करना जारी रखेगा लेकिन बिना किसी भेद्यता डेटा के।
आपको कितने API अनुरोधों की आवश्यकता है?
- हमारा वर्डप्रेस स्कैनर वर्डप्रेस संस्करण के लिए एक API अनुरोध, प्रति स्थापित प्लगइन एक अनुरोध, और प्रति स्थापित थीम एक अनुरोध करता है।
- औसतन, एक वर्डप्रेस वेबसाइट में 22 स्थापित प्लगइन होते हैं।
फ़ाइल/फ़ाइलों से CLI विकल्प लोड करें
WPScan कॉन्फ़िगरेशन फ़ाइलों से सभी विकल्प (--url सहित) लोड कर सकता है, निम्नलिखित स्थानों की जाँच की जाती है (क्रम: पहले से अंतिम):