
सर्वर साइड रिक्वेस्ट फोर्जरी (SSRF) के संभावित कमजोर पैरामीटर खोजने के लिए सुरक्षा उपकरण।
सुरक्षा स्कैनर (अब AI 🤖 द्वारा संचालित) आपके वेब एप्लिकेशन में संभावित सर्वर साइड रिक्वेस्ट फोर्जरी (SSRF) पैरामीटर खोजने के लिए। See-SURF न केवल संभावित SSRF पैरामीटर का पता लगाने में मदद करता है, बल्कि इसे मान्य करने में भी मदद करता है, आपके एप्लिकेशन को सिस्टम और उपयोगकर्ता डेटा से समझौता से बचाता है।

कृपया उद्धृत करें, यदि आप इस सॉफ्टवेयर का उपयोग अपने शोध पत्रों, लेखों आदि में करते हैं।
@software{Agrawal_See-SURF_Detect_SSRF_2019,
author = {Agrawal, Vaibhav},
month = jul,
title = {{See-SURF: Detect SSRF security vulnerability}},
url = {https://github.com/In3tinct/See-SURF},
version = {2.0.0},
year = {2019}
}
स्वचालित टोही: बहु-थ्रेडेड क्रॉलर जो मजबूत regex मिलान का उपयोग करके संभावित SSRF पैरामीटर की पहचान करने के लिए डेटा एकत्र और पार्स करता है (जैसे, url, website, या IP पतों जैसे कीवर्ड से मेल खाना)। लॉगिन पेजों के पीछे स्थित एंडपॉइंट्स को स्कैन करने के लिए कुकी-आधारित प्रमाणीकरण का समर्थन करता है।
Burp Suite एकीकरण: क्रॉलिंग से पहले पैरामीटर की एक व्यापक श्रृंखला खोजने के लिए Burp Suite साइटमैप (.xml) को सहजता से पार्स करता है।
मान्यकरण और शोषण: नया AI एकीकरण Google Gemini और OpenAI जैसे प्रदाताओं के माध्यम से AI-संचालित पहचान प्रदान करता है, जो प्रतिक्रिया हेडर का विश्लेषण करके और कस्टम पेलोड उत्पन्न करके, AWS Metadata जैसी आंतरिक सेवाओं को लक्षित करने के लिए एक स्मार्ट पिवट तंत्र, और संवेदनशील डेटा के रिसाव की पुष्टि करने के लिए स्वचालित भेद्यता मान्यकरण (Reflected/Non-blind SSRF के लिए) करता है।
ब्लाइंड SSRF पहचान के लिए, Webhook.site (डिफ़ॉल्ट रूप से) या उपयोगकर्ता द्वारा प्रदान किए गए डोमेन का उपयोग करके आउट-ऑफ-बैंड (OOB) पहचान एकीकृत की गई है, ताकि उन भेद्यताओं की पहचान की जा सके जहां सर्वर सीधा प्रतिक्रिया नहीं देता है।

git clone https://github.com/In3tinct/See-SURF.git
cd See-SURF/
pip3 install -r requirements.txt
python3 see-surf.py -H https://www.target.com
# Google Gemini का उपयोग करते हुए
python3 see-surf.py -H http://vulnerable-site.com -p google -m gemini-1.5-flash --api-key YOUR_KEY
# OpenAI GPT-4 का उपयोग करते हुए
python3 see-surf.py -H http://vulnerable-site.com -p openai -m gpt-4 -a YOUR_KEY
# स्थानीय Ollama का उपयोग करते हुए
python3 see-surf.py -H http://vulnerable-site.com -p ollama -m llama3
python3 see-surf.py -H https://www.target.com -c "cookie_name1=value1 cookie_name2=value2"
python3 see-surf.py -H https://www.google.com -c cookie_name1=value1 cookie_name2=value2 -b burp_file.xml
-H स्कैन करने के लिए होस्ट नाम/IP पता
-c प्रमाणीकृत स्कैनिंग के लिए कुकीज़, स्पेस द्वारा अलग की गईं (कुछ वेबसाइटें सत्र ट्रैकिंग के लिए एकाधिक कुकीज़ का उपयोग करती हैं)
-p AI प्रदाता: ollama (स्थानीय अनुमान के लिए), gemini, OpenAI chatgpt, Anthropic claude
-m विशिष्ट मॉडल नाम (जैसे, gemini-1.5-flash, gpt-4o, llama3)।
-a चयनित प्रदाता के लिए API कुंजी (API_KEY env var के रूप में भी सेट की जा सकती है)।
-e ब्लाइंड-SSRF OOBE अनुरोध को http://google.com प्रारूप में आपके कस्टम बाहरी डोमेन के साथ परीक्षण करने के लिए, अन्यथा डिफ़ॉल्ट रूप से webhook.site का उपयोग किया जाएगा।
-b (वैकल्पिक लेकिन अनुशंसित) - burpsuite साइट मैप का उपयोग करके अनुरोध स्पाइडर करें, साइट मैप फ़ाइल निर्यात करें और इसे इनपुट के रूप में see-surf को दें (यह कैसे करें, इसके लिए विस्तृत सुविधाएँ देखें)।
-v (वैकल्पिक) डिफ़ॉल्ट रूप से, सामान्य मोड चालू है, वर्बोज़ स्विच के साथ आप विभिन्न एंडपॉइंट्स में समान कमजोर पैरामीटर देखेंगे। हो सकता है कि समान पैरामीटर सभी स्थानों पर सैनिटाइज़ न किया गया हो। लेकिन वर्बोज़ मोड बहुत अधिक शोर उत्पन्न करता है।
[-] -b स्विच Burp की साइट मैप वह जानकारी दिखाती है जो Burp आपके लक्ष्य एप्लिकेशन को एक्सप्लोर करते समय एकत्र करता है, जैसे एकत्रित URL आदि। संभावित SSRF पैरामीटर की बेहतर खोज के लिए Burp साइटमैप फ़ाइलें प्रदान करें। स्क्रिप्ट पहले Burp फ़ाइल को पार्स करेगी और संभावित पैरामीटर की पहचान करने का प्रयास करेगी और फिर उस पर निर्मित क्रॉलर चलाएगी
अपने burpsuite को पृष्ठभूमि में चलाकर लक्ष्य ब्राउज़ करें, कुछ GET/POST अनुरोध करें, जितने अधिक उतना बेहतर। फिर टारगेट पर जाएं, राइट क्लिक-> "Save selected Items" करें और इसे सहेजें। स्क्रिप्ट को निम्नानुसार प्रदान करें।

खोज: स्क्रिप्ट लक्ष्य को <a> लिंक और <form> इनपुट के लिए क्रॉल करती है, या Burp साइटमैप फ़ाइल को पार्स करती है।
पैरामीटर मिलान: यह पैरामीटर नामों में कीवर्ड (जैसे, url, redirect, dest) या मानों में URL पैटर्न देखता है।
कैनरी प्रोबिंग (नॉन-ब्लाइंड): यह पहले http://example.com लाने का प्रयास करता है। यदि प्रतिक्रिया में "Example Domain" हस्ताक्षर मिलता है, तो यह एक संभावित Reflected/Non-Blind SSRF का संकेत देता है।
AI फिंगरप्रिंटिंग और शोषण (नॉन-ब्लाइंड): यदि AI सक्षम है, तो यह सर्वर हेडर और टेक स्टैक का विश्लेषण करता है और विशिष्ट आंतरिक पेलोड (AWS आदि) उत्पन्न करता है।
मान्यकरण (नॉन-ब्लाइंड): AI हमले के प्रतिक्रिया के परिणाम की समीक्षा करता है ताकि यह सत्यापित किया जा सके कि लौटाया गया डेटा वास्तव में संवेदनशील या आंतरिक जानकारी है, जिससे गलत सकारात्मक परिणाम कम होते हैं।
OOBE प्रोबिंग (ब्लाइंड): हर संभावित पैरामीटर के लिए, यह एक अद्वितीय Webhook.site पेलोड उत्पन्न करता है। फिर यह पुष्टि करने के लिए Webhook API को पोल करता है कि लक्ष्य सर्वर ने बाहरी अनुरोध किया है या नहीं।
See-SURF का उपयोग पूर्व आपसी सहमति से लक्ष्यों को स्कैन करने के लिए करें। यह अंतिम उपयोगकर्ता की जिम्मेदारी है और डेवलपर कोई देयता नहीं मानता है और इस प्रोग्राम के कारण किसी भी दुरुपयोग या क्षति के लिए जिम्मेदार नहीं है। इस उपकरण का उपयोग केवल शैक्षिक उद्देश्यों के लिए या उन डोमेन पर करें जिनका परीक्षण करने की आपको स्पष्ट अनुमति है। इसे अपने जोखिम पर उपयोग करें।
GNUV3 © [In3tinct]