Account Takeover

Reading time: 7 minutes

tip

AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE) Azure हैकिंग सीखें और अभ्यास करें: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks का समर्थन करें

Authorization Issue

एक खाते का ईमेल बदलने का प्रयास किया जाना चाहिए, और पुष्टि प्रक्रिया की जांच की जानी चाहिए। यदि यह कमजोर पाया जाता है, तो ईमेल को लक्षित पीड़ित के ईमेल में बदल दिया जाना चाहिए और फिर पुष्टि की जानी चाहिए।

Unicode Normalization Issue

  1. लक्षित पीड़ित का खाता victim@gmail.com
  2. Unicode का उपयोग करके एक खाता बनाया जाना चाहिए
    उदाहरण के लिए: vićtim@gmail.com

जैसा कि इस वार्ता में समझाया गया है, पिछले हमले को तीसरे पक्ष की पहचान प्रदाताओं का दुरुपयोग करके भी किया जा सकता है:

  • पीड़ित के समान ईमेल के साथ तीसरे पक्ष की पहचान में एक खाता बनाएं, जिसमें कुछ unicode वर्ण हो (vićtim@company.com)।
  • तीसरे पक्ष के प्रदाता को ईमेल की पुष्टि नहीं करनी चाहिए
  • यदि पहचान प्रदाता ईमेल की पुष्टि करता है, तो आप डोमेन भाग पर हमला कर सकते हैं जैसे: victim@ćompany.com और उस डोमेन को पंजीकृत कर सकते हैं और आशा करते हैं कि पहचान प्रदाता डोमेन का ascii संस्करण उत्पन्न करे जबकि पीड़ित प्लेटफ़ॉर्म डोमेन नाम को सामान्य करता है।
  • इस पहचान प्रदाता के माध्यम से पीड़ित प्लेटफ़ॉर्म में लॉगिन करें, जिसे unicode वर्ण को सामान्य करना चाहिए और आपको पीड़ित खाते तक पहुंचने की अनुमति देनी चाहिए।

अधिक जानकारी के लिए, Unicode Normalization पर दस्तावेज़ देखें:

Unicode Normalization

Reusing Reset Token

यदि लक्षित प्रणाली रीसेट लिंक को फिर से उपयोग करने की अनुमति देती है, तो gau, wayback, या scan.io जैसे उपकरणों का उपयोग करके अधिक रीसेट लिंक खोजने के प्रयास किए जाने चाहिए।

Pre Account Takeover

  1. पीड़ित का ईमेल प्लेटफ़ॉर्म पर साइन अप करने के लिए उपयोग किया जाना चाहिए, और एक पासवर्ड सेट किया जाना चाहिए (इसकी पुष्टि करने का प्रयास किया जाना चाहिए, हालांकि पीड़ित के ईमेल तक पहुंच की कमी इसे असंभव बना सकती है)।
  2. एक को ओAuth का उपयोग करके पीड़ित के साइन अप करने और खाते की पुष्टि करने की प्रतीक्षा करनी चाहिए।
  3. यह उम्मीद की जाती है कि नियमित साइन अप की पुष्टि की जाएगी, जिससे पीड़ित के खाते तक पहुंच प्राप्त होगी।

CORS Misconfiguration to Account Takeover

यदि पृष्ठ में CORS misconfigurations हैं, तो आप उपयोगकर्ता से संवेदनशील जानकारी चुराने में सक्षम हो सकते हैं ताकि उसका खाता ले लिया जा सके या उसे उसी उद्देश्य के लिए प्रमाणीकरण जानकारी बदलने के लिए मजबूर किया जा सके:

CORS - Misconfigurations & Bypass

Csrf to Account Takeover

यदि पृष्ठ CSRF के प्रति संवेदनशील है, तो आप उपयोगकर्ता को अपना पासवर्ड, ईमेल या प्रमाणीकरण संशोधित करने के लिए मजबूर कर सकते हैं ताकि आप फिर से इसे एक्सेस कर सकें:

CSRF (Cross Site Request Forgery)

XSS to Account Takeover

यदि आप एप्लिकेशन में XSS पाते हैं, तो आप कुकीज़, स्थानीय भंडारण, या वेब पृष्ठ से जानकारी चुराने में सक्षम हो सकते हैं जो आपको खाता ले जाने की अनुमति दे सकती है:

XSS (Cross Site Scripting)

Same Origin + Cookies

यदि आप सीमित XSS या एक उपडोमेन पर कब्जा पाते हैं, तो आप कुकीज़ के साथ खेल सकते हैं (उदाहरण के लिए, उन्हें स्थिर करना) ताकि पीड़ित खाते को समझौता करने का प्रयास किया जा सके:

Cookies Hacking

Attacking Password Reset Mechanism

Reset/Forgotten Password Bypass

Response Manipulation

यदि प्रमाणीकरण प्रतिक्रिया को सरल बूलियन में घटाया जा सकता है, तो बस false को true में बदलने का प्रयास करें और देखें कि क्या आपको कोई पहुंच मिलती है।

OAuth to Account takeover

OAuth to Account takeover

Host Header Injection

  1. पासवर्ड रीसेट अनुरोध प्रारंभ करने के बाद होस्ट हेडर को संशोधित किया जाता है।
  2. X-Forwarded-For प्रॉक्सी हेडर को attacker.com में बदला जाता है।
  3. होस्ट, रेफरर, और ओरिजिन हेडर को एक साथ attacker.com में बदला जाता है।
  4. पासवर्ड रीसेट प्रारंभ करने के बाद और फिर मेल को फिर से भेजने का विकल्प चुनने के बाद, उपरोक्त तीनों विधियों का उपयोग किया जाता है।

Response Manipulation

  1. कोड मैनिपुलेशन: स्थिति कोड को 200 OK में बदला जाता है।
  2. कोड और बॉडी मैनिपुलेशन:
  • स्थिति कोड को 200 OK में बदला जाता है।
  • प्रतिक्रिया बॉडी को {"success":true} या एक खाली वस्तु {} में संशोधित किया जाता है।

ये मैनिपुलेशन तकनीकें उन परिदृश्यों में प्रभावी हैं जहां डेटा ट्रांसमिशन और रिसीप्ट के लिए JSON का उपयोग किया जाता है।

Change email of current session

इस रिपोर्ट से:

  • हमलावर एक नए ईमेल के साथ अपना ईमेल बदलने का अनुरोध करता है
  • हमलावर ईमेल परिवर्तन की पुष्टि करने के लिए एक लिंक प्राप्त करता है
  • हमलावर पीड़ित को लिंक भेजता है ताकि वह उस पर क्लिक करे
  • पीड़ित का ईमेल हमलावर द्वारा निर्दिष्ट ईमेल में बदल दिया जाता है
  • हमलावर पासवर्ड पुनर्प्राप्त कर सकता है और खाते पर कब्जा कर सकता है

यह इस रिपोर्ट में भी हुआ।

Bypass email verification for Account Takeover

  • हमलावर attacker@test.com के साथ लॉगिन करता है और साइनअप पर ईमेल की पुष्टि करता है।
  • हमलावर पुष्टि किए गए ईमेल को victim@test.com में बदलता है (ईमेल परिवर्तन पर कोई द्वितीयक पुष्टि नहीं)
  • अब वेबसाइट victim@test.com को लॉगिन करने की अनुमति देती है और हमने पीड़ित उपयोगकर्ता की ईमेल सत्यापन को बायपास कर दिया है।

Old Cookies

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

References

tip

AWS हैकिंग सीखें और अभ्यास करें:HackTricks Training AWS Red Team Expert (ARTE)
GCP हैकिंग सीखें और अभ्यास करें: HackTricks Training GCP Red Team Expert (GRTE) Azure हैकिंग सीखें और अभ्यास करें: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks का समर्थन करें