Translated ['src/pentesting-ci-cd/cloudflare-security/cloudflare-domains

This commit is contained in:
Translator
2025-01-11 18:51:46 +00:00
parent c312e61a71
commit fa893cca64
44 changed files with 1974 additions and 401 deletions

View File

@@ -5,20 +5,20 @@
## Generic Phishing Methodology
{{#ref}}
https://book.hacktricks.xyz/generic-methodologies-and-resources/phishing-methodology
https://book.hacktricks.wiki/en/generic-methodologies-and-resources/phishing-methodology/index.html
{{#endref}}
## Google Groups Phishing
Offensichtlich können Mitglieder in der Workspace standardmäßig [**Gruppen erstellen**](https://groups.google.com/all-groups) **und Personen dazu einladen**. Sie können dann die E-Mail, die an den Benutzer gesendet wird, **mit einigen Links ändern.** Die **E-Mail wird von einer Google-Adresse kommen**, sodass sie **legitim** aussieht und die Leute möglicherweise auf den Link klicken.
Offensichtlich können Mitglieder in der Workspace standardmäßig [**Gruppen erstellen**](https://groups.google.com/all-groups) **und Personen einladen**. Sie können dann die E-Mail, die an den Benutzer gesendet wird, **mit einigen Links ändern.** Die **E-Mail wird von einer Google-Adresse kommen**, sodass sie **legitim** aussieht und die Leute möglicherweise auf den Link klicken.
Es ist auch möglich, die **FROM**-Adresse als die **Google-Gruppen-E-Mail** festzulegen, um **mehr E-Mails an die Benutzer innerhalb der Gruppe zu senden**, wie im folgenden Bild, wo die Gruppe **`google--support@googlegroups.com`** erstellt wurde und eine **E-Mail an alle Mitglieder** der Gruppe gesendet wurde (die ohne Zustimmung hinzugefügt wurden).
Es ist auch möglich, die **FROM**-Adresse als die **Google-Gruppen-E-Mail** festzulegen, um **mehr E-Mails an die Benutzer innerhalb der Gruppe** zu senden, wie im folgenden Bild, wo die Gruppe **`google--support@googlegroups.com`** erstellt wurde und eine **E-Mail an alle Mitglieder** der Gruppe gesendet wurde (die ohne Zustimmung hinzugefügt wurden).
<figure><img src="../../../images/image (5) (1).png" alt=""><figcaption></figcaption></figure>
## Google Chat Phishing
Sie könnten entweder **einen Chat** mit einer Person beginnen, indem Sie nur ihre E-Mail-Adresse haben, oder eine **Einladung zum Gespräch** senden. Darüber hinaus ist es möglich, einen **Space** zu erstellen, der jeden Namen haben kann (z. B. "Google Support") und Mitglieder dazu einzuladen. Wenn sie akzeptieren, könnten sie denken, dass sie mit dem Google Support sprechen:
Sie könnten in der Lage sein, entweder **einen Chat** mit einer Person zu beginnen, indem Sie nur ihre E-Mail-Adresse haben, oder eine **Einladung zum Gespräch** zu senden. Darüber hinaus ist es möglich, **einen Space** zu erstellen, der jeden Namen haben kann (z. B. "Google Support") und Mitglieder dazu einzuladen. Wenn sie akzeptieren, könnten sie denken, dass sie mit dem Google Support sprechen:
<figure><img src="../../../images/image (6).png" alt=""><figcaption></figcaption></figure>
@@ -30,7 +30,7 @@ Sie können überprüfen, wie das in der Vergangenheit funktioniert hat: [https:
## Google Doc Phishing
Früher war es möglich, ein **anscheinend legitimes Dokument** zu erstellen und in einem Kommentar **eine E-Mail zu erwähnen (wie @user@gmail.com)**. Google **sendete eine E-Mail an diese E-Mail-Adresse**, um zu benachrichtigen, dass sie im Dokument erwähnt wurden.\
Heutzutage funktioniert das nicht mehr, aber wenn Sie **dem Opfer E-Mail-Zugriff auf das Dokument geben**, wird Google eine E-Mail senden, die dies anzeigt. Dies ist die Nachricht, die erscheint, wenn Sie jemanden erwähnen:
Heutzutage funktioniert das nicht mehr, aber wenn Sie **dem Opfer E-Mail-Zugriff auf das Dokument geben**, wird Google eine E-Mail senden, die darauf hinweist. Dies ist die Nachricht, die erscheint, wenn Sie jemanden erwähnen:
<figure><img src="../../../images/image (7).png" alt=""><figcaption></figcaption></figure>
@@ -41,7 +41,7 @@ Heutzutage funktioniert das nicht mehr, aber wenn Sie **dem Opfer E-Mail-Zugriff
Sie können **ein Kalenderereignis erstellen** und so viele E-Mail-Adressen des Unternehmens hinzufügen, das Sie angreifen, wie Sie haben. Planen Sie dieses Kalenderereignis in **5 oder 15 Minuten** von der aktuellen Zeit. Lassen Sie das Ereignis legitim aussehen und **setzen Sie einen Kommentar und einen Titel, der darauf hinweist, dass sie etwas lesen müssen** (mit dem **Phishing-Link**).
Dies ist die Warnung, die im Browser mit dem Meeting-Titel "Leute entlassen" erscheint, sodass Sie einen phishinger Titel festlegen könnten (und sogar den Namen ändern, der mit Ihrer E-Mail verknüpft ist).
Dies ist die Warnung, die im Browser mit dem Meeting-Titel "Firing People" erscheint, sodass Sie einen phishinger Titel festlegen könnten (und sogar den Namen ändern, der mit Ihrer E-Mail verbunden ist).
<figure><img src="../../../images/image (8).png" alt=""><figcaption></figcaption></figure>
@@ -49,16 +49,16 @@ Um es weniger verdächtig erscheinen zu lassen:
- Richten Sie es so ein, dass **Empfänger die anderen eingeladenen Personen nicht sehen können**
- Senden Sie **KEINE E-Mails, die über das Ereignis benachrichtigen**. Dann sehen die Leute nur ihre Warnung über ein Meeting in 5 Minuten und dass sie diesen Link lesen müssen.
- Offensichtlich können Sie mit der API einstellen, dass **die Personen** das Ereignis **akzeptiert haben** und sogar **Kommentare in ihrem Namen erstellen**.
- Offensichtlich können Sie mit der API einstellen, dass **die Personen** das Ereignis **akzeptiert** haben und sogar **Kommentare in ihrem Namen erstellen**.
## App Scripts Redirect Phishing
Es ist möglich, ein Skript in [https://script.google.com/](https://script.google.com/) zu erstellen und **es als Webanwendung zu exponieren, die für jeden zugänglich ist**, die die legitime Domain **`script.google.com`** verwendet.\
Es ist möglich, ein Skript in [https://script.google.com/](https://script.google.com/) zu erstellen und **es als Webanwendung bereitzustellen, die für jeden zugänglich ist**, die die legitime Domain **`script.google.com`** verwendet.\
Mit etwas Code wie dem folgenden könnte ein Angreifer das Skript dazu bringen, beliebige Inhalte auf dieser Seite zu laden, ohne die Domain zu stoppen:
```javascript
function doGet() {
return HtmlService.createHtmlOutput(
'<meta http-equiv="refresh" content="0;url=https://cloud.hacktricks.xyz/pentesting-cloud/workspace-security/gws-google-platforms-phishing#app-scripts-redirect-phishing">'
'<meta http-equiv="refresh" content="0;url=https://cloud.hacktricks.wiki/en/pentesting-cloud/workspace-security/gws-google-platforms-phishing/index.html#app-scripts-redirect-phishing">'
).setXFrameOptionsMode(HtmlService.XFrameOptionsMode.ALLOWALL)
}
```
@@ -79,21 +79,21 @@ gws-app-scripts.md
## OAuth Apps Phishing
Eine der vorherigen Techniken kann verwendet werden, um den Benutzer dazu zu bringen, auf eine **Google OAuth-Anwendung** zuzugreifen, die den Benutzer um **Zugriff** bittet. Wenn der Benutzer der **Quelle** **vertraut**, könnte er der **Anwendung** **vertrauen** (auch wenn sie nach hochprivilegierten Berechtigungen fragt).
Eine der vorherigen Techniken kann verwendet werden, um den Benutzer dazu zu bringen, auf eine **Google OAuth-Anwendung** zuzugreifen, die den Benutzer um **Zugriff** bittet. Wenn der Benutzer der **Quelle** **vertraut**, könnte er auch der **Anwendung** **vertrauen** (auch wenn sie nach hochprivilegierten Berechtigungen fragt).
> [!NOTE]
> Beachten Sie, dass Google in mehreren Fällen eine hässliche Aufforderung anzeigt, die warnt, dass die Anwendung nicht vertrauenswürdig ist, und Workspace-Administratoren können sogar verhindern, dass Personen OAuth-Anwendungen akzeptieren.
**Google** erlaubt es, Anwendungen zu erstellen, die **im Namen von Benutzern** mit mehreren **Google-Diensten** interagieren: Gmail, Drive, GCP...
Beim Erstellen einer Anwendung, die **im Namen anderer Benutzer** agiert, muss der Entwickler eine **OAuth-Anwendung innerhalb von GCP** erstellen und die Scopes (Berechtigungen) angeben, die die Anwendung benötigt, um auf die Benutzerdaten zuzugreifen.\
Wenn ein **Benutzer** diese **Anwendung** **verwenden** möchte, wird er **aufgefordert**, zu **akzeptieren**, dass die Anwendung Zugriff auf seine in den Scopes angegebenen Daten hat.
Beim Erstellen einer Anwendung, die **im Namen anderer Benutzer** agiert, muss der Entwickler eine **OAuth-Anwendung in GCP** erstellen und die Scopes (Berechtigungen) angeben, die die Anwendung benötigt, um auf die Benutzerdaten zuzugreifen.\
Wenn ein **Benutzer** diese **Anwendung** **verwenden** möchte, wird er **aufgefordert**, zu **akzeptieren**, dass die Anwendung Zugriff auf seine Daten hat, die in den Scopes angegeben sind.
Dies ist eine sehr verlockende Möglichkeit, **nicht-technische Benutzer** dazu zu bringen, **Anwendungen zu verwenden, die auf sensible Informationen zugreifen**, da sie die Konsequenzen möglicherweise nicht verstehen. In Unternehmenskonten gibt es jedoch Möglichkeiten, dies zu verhindern.
### Unbestätigte App-Aufforderung
### Unverified App prompt
Wie bereits erwähnt, wird Google immer eine **Aufforderung an den Benutzer anzeigen, um die** Berechtigungen zu akzeptieren, die sie der Anwendung in ihrem Namen gewähren. Wenn die Anwendung jedoch als **gefährlich** eingestuft wird, zeigt Google **zuerst** eine **Aufforderung** an, die darauf hinweist, dass sie **gefährlich** ist und es dem Benutzer **schwieriger macht**, die Berechtigungen für die App zu gewähren.
Wie bereits erwähnt, wird Google immer eine **Aufforderung an den Benutzer anzeigen, die Berechtigungen zu akzeptieren**, die sie der Anwendung in ihrem Namen gewähren. Wenn die Anwendung jedoch als **gefährlich** eingestuft wird, zeigt Google **zuerst** eine **Aufforderung** an, die darauf hinweist, dass sie **gefährlich** ist und es dem Benutzer **schwieriger macht**, die Berechtigungen für die App zu gewähren.
Diese Aufforderung erscheint in Apps, die:
@@ -102,10 +102,10 @@ Diese Aufforderung erscheint in Apps, die:
### Interessante Scopes
[**Hier**](https://developers.google.com/identity/protocols/oauth2/scopes) finden Sie eine Liste aller Google OAuth-Scopes.
[**Hier**](https://developers.google.com/identity/protocols/oauth2/scopes) finden Sie eine Liste aller Google OAuth Scopes.
- **cloud-platform**: Sehen und verwalten Sie Ihre Daten über **Google Cloud Platform**-Dienste. Sie können den Benutzer in GCP impersonifizieren.
- **admin.directory.user.readonly**: Sehen und laden Sie das GSuite-Verzeichnis Ihrer Organisation herunter. Erhalten Sie Namen, Telefonnummern, Kalender-URLs aller Benutzer.
- **admin.directory.user.readonly**: Sehen und herunterladen Sie das GSuite-Verzeichnis Ihrer Organisation. Erhalten Sie Namen, Telefonnummern, Kalender-URLs aller Benutzer.
### Erstellen einer OAuth-App
@@ -124,8 +124,8 @@ Jetzt lassen Sie uns **Anmeldeinformationen für eine Webanwendung** mit der **z
1. Gehen Sie zurück zu [https://console.cloud.google.com/apis/credentials/oauthclient](https://console.cloud.google.com/apis/credentials/oauthclient), diesmal wird eine andere Option angezeigt.
2. Wählen Sie **Anmeldeinformationen für eine Webanwendung erstellen**.
3. Legen Sie die benötigten **JavaScript-Ursprünge** und **Umleitungs-URIs** fest.
- Sie können in beiden etwas wie **`http://localhost:8000/callback`** zum Testen festlegen.
3. Legen Sie die benötigten **JavaScript-Origins** und **Umleitungs-URIs** fest.
- Sie können in beiden etwas wie **`http://localhost:8000/callback`** für Tests festlegen.
4. Holen Sie sich Ihre Anwendungs-**Anmeldeinformationen**.
Schließlich lassen Sie uns **eine Webanwendung ausführen, die die Anmeldeinformationen der OAuth-Anwendung verwendet**. Sie finden ein Beispiel unter [https://github.com/carlospolop/gcp_oauth_phishing_example](https://github.com/carlospolop/gcp_oauth_phishing_example).
@@ -135,11 +135,11 @@ cd gcp_oauth_phishing_example
pip install flask requests google-auth-oauthlib
python3 app.py --client-id "<client_id>" --client-secret "<client_secret>"
```
Gehe zu **`http://localhost:8000`**, klicke auf die Schaltfläche "Login mit Google", du wirst mit einer Nachricht wie dieser **auffordert**:
Gehe zu **`http://localhost:8000`**, klicke auf die Schaltfläche "Login with Google", du wirst mit einer Nachricht wie dieser konfrontiert:
<figure><img src="../../../images/image (333).png" alt=""><figcaption></figcaption></figure>
Die Anwendung zeigt das **Zugriffs- und Aktualisierungstoken** an, die leicht verwendet werden können. Für weitere Informationen darüber, **wie man diese Tokens verwendet, siehe**:
Die Anwendung zeigt das **Zugriffs- und Aktualisierungstoken**, das leicht verwendet werden kann. Für weitere Informationen darüber, **wie man diese Tokens verwendet, siehe**:
{{#ref}}
../../gcp-security/gcp-persistence/gcp-non-svc-persistance.md
@@ -155,7 +155,7 @@ Es ist möglich, etwas mit gcloud anstelle der Webkonsole zu tun, siehe:
## Referenzen
- [https://www.youtube-nocookie.com/embed/6AsVUS79gLw](https://www.youtube-nocookie.com/embed/6AsVUS79gLw) - Matthew Bryant - Hacking G Suite: Die Macht der dunklen Apps Script Magie
- [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 und Beau Bullock - OK Google, wie mache ich Red Team GSuite?
{{#include ../../../banners/hacktricks-training.md}}