
Shodan खोज परिणामों के विरुद्ध exploit/PoC निष्पादन को स्वचालित करें - समवर्ती प्रेषण, फ़िल्टरिंग, संरचित आउटपुट और निर्यात।
Shodan खोज परिणामों के विरुद्ध एक्सप्लॉइट और PoC निष्पादन को स्वचालित करें। Shodan क्वेरी करें, लक्ष्यों को फ़िल्टर करें, और अपनी स्क्रिप्ट को हर मैच के विरुद्ध चलाएं - समवर्ती रूप से, संरचित आउटपुट और निर्यात के साथ।
आपके पास एक PoC स्क्रिप्ट है जो IP और पोर्ट लेती है। आप इसे Shodan क्वेरी से मेल खाने वाले प्रत्येक होस्ट के विरुद्ध चलाना चाहते हैं। ShodScript इस अंतर को पाटता है: खोजें, फ़िल्टर करें, भेजें, परिणाम एकत्र करें।
pip install git+https://github.com/momenbasel/shodscript.git
या क्लोन करें और स्थानीय रूप से इंस्टॉल करें:
git clone https://github.com/momenbasel/shodscript.git
cd shodscript
pip install -e .
अपनी Shodan API कुंजी सेट करें:
export SHODAN_API_KEY="your-api-key-here"
या हर कमांड में --api-key / -k के साथ पास करें।
# तालिका आउटपुट
shodscript search "apache 2.4.49"
# पोर्ट और देश द्वारा फ़िल्टर करें
shodscript search "nginx" --port 443 --country US --limit 50
# JSON आउटपुट
shodscript search "apache" --json
# "apache 2.4.49" से मेल खाने वाले प्रत्येक होस्ट के विरुद्ध check_http.py चलाएँ
shodscript run "apache 2.4.49" ./exploit.py
# 20 समवर्ती कार्यकर्ता, प्रति लक्ष्य 60s टाइमआउट
shodscript run "apache 2.4.49" ./exploit.py -w 20 -t 60
# जर्मनी में पोर्ट 80 पर फ़िल्टर करें, परिणाम सहेजें
shodscript run "apache" ./exploit.py --port 80 --country DE -o results.json
# CSV निर्यात
shodscript run "nginx" ./check.py -o results.csv --format csv
# केवल सफल हिट दिखाएं
shodscript run "apache" ./exploit.py --quiet
--pass-via के माध्यम से तीन मोड:
# पर्यावरण चर के माध्यम से पास करें
shodscript run "nginx" ./script.py --pass-via env
# stdin के माध्यम से पास करें
shodscript run "nginx" ./script.py --pass-via stdin
# स्क्रिप्ट को अतिरिक्त तर्क अग्रेषित करें
shodscript run "nginx" ./script.py -e "--verbose" -e "--ssl"
# प्रति पंक्ति एक IP - अन्य उपकरणों पर पाइप करें
shodscript ips "apache 2.4.49" | xargs -I{} curl -s http://{}
# पोर्ट शामिल करें
shodscript ips "apache 2.4.49" --with-port
# nuclei, httpx, आदि पर पाइप करें
shodscript ips "apache 2.4.49" -n 500 | httpx -silent
shodscript host 1.2.3.4
shodscript host 1.2.3.4 --json
shodscript info
आपकी स्क्रिप्ट को केवल एक IP और पोर्ट स्वीकार करने की आवश्यकता है। न्यूनतम उदाहरण:
#!/usr/bin/env python3
import sys
ip = sys.argv[1]
port = int(sys.argv[2])
# Your exploit/check logic here
print(f"[+] {ip}:{port} - vulnerable")
# Exit 0 = success (marked green), non-zero = failure (marked red)
अधिक पैटर्न के लिए examples/ निर्देशिका देखें, जिसमें env-आधारित और बैनर ग्रैबिंग स्क्रिप्ट शामिल हैं।
परिणाम JSON, JSONL, या CSV के रूप में सहेजे जा सकते हैं:
shodscript run "query" ./script.py -o results.json # JSON (default)
shodscript run "query" ./script.py -o results.jsonl --format jsonl # One JSON object per line
shodscript run "query" ./script.py -o results.csv --format csv # CSV
प्रत्येक रिकॉर्ड में शामिल है: ip, port, host, org, country, returncode, success, stdout, stderr, elapsed, error.
MIT
केवल अधिकृत सुरक्षा परीक्षण और अनुसंधान के लिए।
| मोड | आपकी स्क्रिप्ट लक्ष्य कैसे प्राप्त करती है |
|---|
arg (डिफ़ॉल्ट) | python3 script.py <ip> <port> |
env | TARGET_IP, TARGET_PORT, TARGET_HOST पर्यावरण चर |
stdin | ip:port\n stdin पर लिखा गया |