
एक तेज़ WordPress प्लगिन एन्यूमरेशन उपकरण
"क्यों आँख मूंदकर स्कैन करें जब WordPress स्वयं को उजागर कर देता है?"
एक तेज़ WordPress प्लगइन और थीम स्कैनर जो REST API एन्यूमरेशन के माध्यम से इंस्टॉल किए गए प्लगइन्स और HTML डिस्कवरी से थीम का पता लगाता है, फिर उन्हें ज्ञात कमजोरियों से मैप करता है। बिना ब्रूट-फोर्स के 5000+ प्लगइन्स का पता लगाने योग्य, और इसके साथ हजारों और।
9 मार्च, 2026 से, Wordfence ने अपने v2 API को अप्रचलित (deprecated) कर दिया है। v0.10.16 से पहले के सभी WPProbe संस्करणों में update-db कार्यक्षमता टूटी हुई है। आपको WPProbe को अपडेट करने की आवश्यकता है।
डिफ़ॉल्ट रूप से, wpprobe update-db इस रिपॉजिटरी से पहले से निर्मित डेटाबेस लाता है (CI के माध्यम से हर 2 घंटे में अपडेट होता है), इसलिए किसी API कुंजी की आवश्यकता नहीं होती। यदि आप स्वयं Wordfence से सीधे लाना चाहते हैं, तो आप वैकल्पिक रूप से एक निःशुल्क API कुंजी सेट कर सकते हैं:
--api-key फ़्लैग के माध्यम से सेट करेंgo install github.com/Chocapikk/wpprobe@latest
wpprobe update-db
wpprobe scan -u https://example.com
wpprobe scan -u https://example.com --mode stealthy
wpprobe scan -u https://example.com --mode bruteforce
wpprobe scan -u https://example.com --mode hybrid
# Kali Linux (included in kali-rolling)
sudo apt install wpprobe
# Go (requires 1.22+)
go install github.com/Chocapikk/wpprobe@latest
# Nix
nix-shell -p wpprobe
# Docker
docker run -it --rm wpprobe scan -u https://example.com
# From source
git clone https://github.com/Chocapikk/wpprobe && cd wpprobe && go build -o wpprobe
# Mount current directory for input/output files
docker run -it --rm -v $(pwd):/data wpprobe scan -f /data/targets.txt -o /data/results.csv
# Persist vulnerability databases
docker run -it --rm \
-v $(pwd):/data \
-v wpprobe-config:/config \
wpprobe scan -f /data/targets.txt -o /data/results.json
# Update databases
docker run -it --rm \
-v wpprobe-config:/config \
-e WORDFENCE_API_KEY=your_key \
-e WPSCAN_API_TOKEN=your_token \
wpprobe update-db
# Single target
wpprobe scan -u https://example.com
# Multiple targets with threading
wpprobe scan -f targets.txt -t 20
# Custom options
wpprobe scan -u https://example.com \
--header "User-Agent: CustomAgent" \
--proxy http://proxy:8080 \
--rate-limit 10 \
--no-check-version
# Output formats
wpprobe scan -u https://example.com -o results.csv
wpprobe scan -u https://example.com -o results.json
# Update databases (Wordfence requires free API key, WPScan requires Enterprise API token)
wpprobe update-db --api-key your_wordfence_key
# Or use env var
export WORDFENCE_API_KEY=your_key_here
wpprobe update-db
# Search vulnerabilities
wpprobe search --cve CVE-2024-1234
wpprobe search --plugin woocommerce
wpprobe search --severity critical
wpprobe search --auth Unauth
wpprobe search --title "SQL Injection" --details
# Database statistics
wpprobe list
Wordfence डेटाबेस अपडेट के लिए WORDFENCE_API_KEY सेट करें (निःशुल्क)। WPScan डेटाबेस अपडेट के लिए WPSCAN_API_TOKEN सेट करें (केवल Enterprise योजना)।
wpprobe update
Stealthy मोड उजागर REST API रूट्स (?rest_route=/) को क्वेरी करता है और खोजे गए एंडपॉइंट्स को ज्ञात प्लगइन सिग्नेचर के पहले से संकलित डेटाबेस से मिलाता है। यह पेज HTML से wp-content/themes/ संदर्भों को पार्स करके सक्रिय थीम भी खोजता है और style.css से उनका संस्करण लाता है। यह न्यूनतम अनुरोध उत्पन्न करता है और WAF द्वारा पहचान से बचता है।
Brute-force मोड GET अनुरोधों के माध्यम से सीधे प्लगइन डायरेक्ट्रीज़ की जाँच करता है। 403 प्रतिक्रिया पुष्टि करती है कि प्लगइन मौजूद है (डायरेक्ट्री लिस्टिंग प्रतिबंधित है)। 200 प्रतिक्रिया को डायरेक्ट्री लिस्टिंग में readme.txt की जाँच करके मान्य किया जाता है ताकि उन WordPress इंस्टेंस से गलत सकारात्मक परिणामों से बचा जा सके जो सभी पथों के लिए 200 लौटाते हैं।
Hybrid मोड दोनों को जोड़ता है: कम-शोर पहचान के लिए पहले stealthy, फिर शेष प्लगइन्स के लिए brute-force। थीम हमेशा मोड की परवाह किए बिना HTML के माध्यम से खोजी जाती हैं।
पता लगाए गए प्लगइन्स और थीम को Wordfence और WPScan डेटाबेस के ज्ञात CVEs के साथ सहसंबद्ध किया जाता है, जिसमें कमजोर इंस्टॉलेशन की पहचान करने के लिए संस्करण रेंज मिलान होता है।
CSV:
URL,Plugin,Version,Severity,AuthType,CVEs,CVE Links,CVSS Score,CVSS Vector,Title
http://example.com,give,2.20.1,critical,Unauth,CVE-2025-22777,https://www.cve.org/CVERecord?id=CVE-2025-22777,9.8,CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H,GiveWP <= 3.19.3 - Unauthenticated PHP Object Injection
JSON:
{
"url": "http://example.com",
"plugins": {
"give": [
{
"version": "2.20.1",
"severities": [
{
"critical": [
{
"auth_type": "Unauth",
"vulnerabilities": [
{
"cve": "CVE-2025-22777",
"cve_link": "https://www.cve.org/CVERecord?id=CVE-2025-22777",
"title": "GiveWP <= 3.19.3 - Unauthenticated PHP Object Injection",
"cvss_score": 9.8,
"cvss_vector": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H"
}
]
}
]
}
]
}
],
"wordpress-seo": [
{
"version": "27.1.1"
}
]
}
}
योगदान का स्वागत है। कृपया एक issue खोलें या pull request सबमिट करें।
MIT लाइसेंस - विवरण के लिए LICENSE फ़ाइल देखें।
@Chocapikk द्वारा विकसित।
| मोड | विधि | छिपाव | कवरेज |
|---|
stealthy (डिफ़ॉल्ट) | REST API एंडपॉइंट मिलान + HTML थीम डिस्कवरी | उच्च | 5000+ प्लगइन्स + थीम |
bruteforce | सीधे डायरेक्ट्री जाँच | निम्न | 10k+ प्लगइन्स |
hybrid | पहले stealthy, फिर brute-force | मध्यम | अधिकतम |
| चर | विवरण |
|---|
WORDFENCE_API_KEY | डेटाबेस अपडेट के लिए Wordfence API कुंजी (निःशुल्क, यहाँ प्राप्त करें) |
WPSCAN_API_TOKEN | डेटाबेस अपडेट के लिए WPScan Enterprise API टोकन |
HTTP_PROXY / HTTPS_PROXY / ALL_PROXY | प्रॉक्सी कॉन्फ़िगरेशन |
NO_PROXY | प्रॉक्सी बायपास नियम |