Μάθετε το χάκινγκ του AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!
Άλλοι τρόποι για να υποστηρίξετε το HackTricks:
- Εάν θέλετε να δείτε την εταιρεία σας να διαφημίζεται στο HackTricks ή να κατεβάσετε το HackTricks σε μορφή PDF ελέγξτε τα ΣΧΕΔΙΑ ΣΥΝΔΡΟΜΗΣ!
- Αποκτήστε το επίσημο PEASS & HackTricks swag
- Ανακαλύψτε την Οικογένεια PEASS, τη συλλογή μας από αποκλειστικά NFTs
- Εγγραφείτε στη 💬 ομάδα Discord ή στη ομάδα telegram ή ακολουθήστε με στο Twitter 🐦 @carlospolopm.
- Μοιραστείτε τα χάκινγκ κόλπα σας υποβάλλοντας PRs στα HackTricks και HackTricks Cloud αποθετήρια του github.
Στα εμπορεύματα του GCP μπορείτε να βρείτε τις περισσότερες υπηρεσίες που βασίζονται σε εμπορεύματα που προσφέρει το GCP, εδώ μπορείτε να δείτε πώς να εντοπίσετε τις πιο κοινές:
gcloud container images list
gcloud container images list --repository us.gcr.io/<project-name> #Search in other subdomains repositories
gcloud container images describe <name>
gcloud container subnets list-usable
gcloud container clusters list
gcloud container clusters describe <name>
gcloud container clusters get-credentials [NAME]
# Run a container locally
docker run --rm -ti gcr.io/<project-name>/secret:v1 sh
# Login & Download
sudo docker login -u oauth2accesstoken -p $(gcloud auth print-access-token) https://HOSTNAME
## where HOSTNAME is gcr.io, us.gcr.io, eu.gcr.io, or asia.gcr.io.
sudo docker pull HOSTNAME/<project-name>/<image-name>
Στην ακόλουθη σελίδα μπορείτε να ελέγξετε πώς να καταχραστείτε τα δικαιώματα των ελάχιστων για να αναβαθμίσετε τα προνόμια:
{% content-ref url="../gcp-privilege-escalation/gcp-container-privesc.md" %} gcp-container-privesc.md {% endcontent-ref %}
Αυτές είναι οι ομάδες μηχανών (κόμβων) που αποτελούν τα καταλύματα Kubernetes.
# Pool of machines used by the cluster
gcloud container node-pools list --zone <zone> --cluster <cluster>
gcloud container node-pools describe --cluster <cluster> --zone <zone> <node-pool>
Αυτή είναι η διαχειριζόμενη έκδοση του Airflow για το GCP.
gcloud composer environments list --locations <loc>
gcloud composer environments describe --location <loc> <environment>s
Στην ακόλουθη σελίδα μπορείτε να ελέγξετε πώς να καταχραστείτε τα δικαιώματα του composer για να αναβαθμίσετε τα προνόμια:
{% content-ref url="../gcp-privilege-escalation/gcp-composer-privesc.md" %} gcp-composer-privesc.md {% endcontent-ref %}
Για πληροφορίες σχετικά με το τι είναι το Kubernetes, ελέγξτε αυτήν τη σελίδα:
{% content-ref url="../../kubernetes-security/" %} kubernetes-security {% endcontent-ref %}
Πρώτα, μπορείτε να ελέγξετε εάν υπάρχουν κάποια clusters Kubernetes στο έργο σας.
gcloud container clusters list
Εάν έχετε ένα cluster, μπορείτε να έχετε το gcloud
να διαμορφώσει αυτόματα το αρχείο ~/.kube/config
. Αυτό το αρχείο χρησιμοποιείται για να σας πιστοποιήσει όταν χρησιμοποιείτε το kubectl, το native CLI για την αλληλεπίδραση με τα K8s clusters. Δοκιμάστε αυτήν την εντολή.
gcloud container clusters get-credentials [CLUSTER NAME] --region [REGION]
Στη συνέχεια, ρίξτε μια ματιά στο αρχείο ~/.kube/config
για να δείτε τα δημιουργημένα διαπιστευτήρια. Αυτό το αρχείο θα χρησιμοποιηθεί για να ανανεώνει αυτόματα τα access tokens βασιζόμενο στην ίδια ταυτότητα που χρησιμοποιείται στην ενεργή συνεδρία gcloud
. Φυσικά, αυτό απαιτεί τις σωστές άδειες που έχουν τεθεί σε ισχύ.
Αφού αυτό έχει ρυθμιστεί, μπορείτε να δοκιμάσετε την παρακάτω εντολή για να λάβετε τη διαμόρφωση του cluster.
kubectl cluster-info
Μπορείτε να διαβάσετε περισσότερα για το gcloud
για τα containers εδώ.
Αυτό είναι ένα απλό script για την απαρίθμηση του Kubernetes στο GCP: https://gitlab.com/gitlab-com/gl-security/security-operations/gl-redteam/gcp_k8s_enum
Αρχικά, αυτή η τεχνική ανέβασματος προνομίων επέτρεπε το ανέβασμα προνομίων μέσα στο GKE cluster, επιτρέποντας αποτελεσματικά σε έναν επιτιθέμενο να το πλήρως διακυβεύσει.
Αυτό συμβαίνει επειδή το GKE παρέχει διαπιστευτήρια TLS Bootstrap στα μεταδεδομένα, τα οποία είναι προσβάσιμα από οποιονδήποτε απλά με την παραβίαση ενός pod.
Η τεχνική που χρησιμοποιείται εξηγείται στις παρακάτω αναρτήσεις:
- https://www.4armed.com/blog/hacking-kubelet-on-gke/
- https://www.4armed.com/blog/kubeletmein-kubelet-hacking-tool/
- https://rhinosecuritylabs.com/cloud-security/kubelet-tls-bootstrap-privilege-escalation/
Και αυτό το εργαλείο δημιουργήθηκε για να αυτοματοποιήσει τη διαδικασία: https://github.com/4ARMED/kubeletmein
Ωστόσο, η τεχνική καταχρηστεύεται το γεγονός ότι με τα διαπιστευτήρια των μεταδεδομένων ήταν δυνατόν να δημιουργηθεί ένα CSR (Certificate Signing Request) για έναν νέο κόμβο, ο οποίος αυτοματοποιημένα εγκρίνονταν.
Στη δοκιμή μου επιβεβαίωσα ότι αυτά τα αιτήματα δεν εγκρίνονται πλέον αυτόματα, οπότε δεν είμαι σίγουρος αν αυτή η τεχνική είναι ακόμα έγκυρη.
Σε αυτήν την ανάρτηση ανακαλύφθηκε ένα Kubelet API address προσβάσιμο από ένα pod στο GKE που παρέχει λεπτομέρειες για τα εκτελούμενα pods:
curl -v -k http://10.124.200.1:10255/pods
Ακόμα κι αν η API δεν επιτρέπει την τροποποίηση των πόρων, είναι δυνατόν να βρεθούν ευαίσθητες πληροφορίες στην απόκριση. Το σημείο πρόσβασης /pods βρέθηκε χρησιμοποιώντας το Kiterunner.
Μάθετε το hacking στο AWS από το μηδέν μέχρι τον ήρωα με το htARTE (HackTricks AWS Red Team Expert)!
Άλλοι τρόποι για να υποστηρίξετε το HackTricks:
- Εάν θέλετε να δείτε την εταιρεία σας να διαφημίζεται στο HackTricks ή να κατεβάσετε το HackTricks σε μορφή PDF, ελέγξτε τα ΣΧΕΔΙΑ ΣΥΝΔΡΟΜΗΣ!
- Αποκτήστε το επίσημο PEASS & HackTricks swag
- Ανακαλύψτε The PEASS Family, τη συλλογή μας από αποκλειστικά NFTs
- Συμμετάσχετε στη 💬 ομάδα Discord ή στην ομάδα telegram ή ακολουθήστε με στο Twitter 🐦 @carlospolopm.
- Μοιραστείτε τα κόλπα σας στο hacking υποβάλλοντας PRs στα HackTricks και HackTricks Cloud αποθετήρια του github.