# List networksgcloudcomputenetworkslistgcloudcomputenetworksdescribe<network># List subnetworksgcloudcomputenetworkssubnetslistgcloudcomputenetworkssubnetsget-iam-policy<name>--region<region>gcloudcomputenetworkssubnetsdescribe<name>--region<region># List FW rules in networksgcloudcomputefirewall-ruleslist--format="table(name,network,direction,priority,sourceRanges.list():label=SRC_RANGES,destinationRanges.list():label=DEST_RANGES,allowed[].map().firewall_rule().list():label=ALLOW,denied[].map().firewall_rule().list():label=DENY,sourceTags.list():label=SRC_TAGS,sourceServiceAccounts.list():label=SRC_SVC_ACCT,targetTags.list():label=TARGET_TAGS,targetServiceAccounts.list():label=TARGET_SVC_ACCT,disabled)"# List Hierarchical Firewallsgcloudcomputefirewall-policieslist (--folder <value>|--organization<value>)gcloudcomputefirewall-policiesdescribe<fw_policy>gcloudcomputefirewall-policieslist-rules<fw_policy># Get Firewalls of each regiongcloudcomputenetwork-firewall-policieslist## Get final FWs applied in a regiongcloudcomputenetwork-firewall-policiesget-effective-firewalls--network=<vpc_name>--region<region>
이것은 GCP 내에서 가상 머신을 실행하는 방법입니다. 더 많은 정보는 이 페이지를 확인하세요:
열거
# Get list of zones# It's interesting to know which zones are being usedgcloudcomputeregionslist|grep-E"NAME|[^0]/"# List compute instances & get infogcloudcomputeinstanceslistgcloudcomputeinstancesdescribe<instancename>gcloudcomputeinstancesget-iam-policy<instance>--zone=ZONEgcloudcomputeinstancesget-screenshot<instancename># Instace must have "Display Device" enabledgcloudcomputeinstancesos-inventorylist-instances# Get OS info of instances (OS Config agent is running on instances)# Enumerate disksgcloudcomputediskslistgcloudcomputedisksdescribe<disk>gcloudcomputedisksget-iam-policy<disk>
더 많은 정보는 인스턴스의 SSH 또는 메타데이터 수정을 통해 권한 상승하는 방법에 대해 이 페이지를 확인하세요:
권한 상승
다음 페이지에서 컴퓨트 권한을 남용하여 권한을 상승시키는 방법을 확인할 수 있습니다:
인증되지 않은 열거
포스트 익스플로잇
지속성
직렬 콘솔 로그
Compute Engine 직렬 콘솔 로그는 가상 머신 인스턴스의 부팅 및 운영 체제 로그를 보고 진단할 수 있는 기능입니다.
직렬 콘솔 로그는 인스턴스의 부팅 프로세스에 대한 저수준 뷰를 제공하며, 여기에는 커널 메시지, 초기화 스크립트 및 부팅 중 발생하는 기타 시스템 이벤트가 포함됩니다. 이는 부팅 문제를 디버깅하거나 잘못된 구성 또는 소프트웨어 오류를 식별하거나 네트워크 연결 문제를 해결하는 데 유용할 수 있습니다.
이 로그는 저권한 사용자가 일반적으로 볼 수 없는 시스템 로그에서 민감한 정보를 노출할 수 있지만, 적절한 IAM 권한이 있으면 이를 읽을 수 있습니다.
다음 gcloud 명령어를 사용하여 직렬 포트 로그를 쿼리할 수 있습니다(필요한 권한은 compute.instances.getSerialPortOutput입니다):
OS 구성 관리 서비스를 사용하여 VM 인스턴스(VM)의 일관된 구성(원하는 상태 및 소프트웨어)을 배포, 쿼리 및 유지 관리할 수 있습니다. Compute Engine에서는 VM에서 일관된 소프트웨어 구성을 유지하기 위해 게스트 정책을 사용해야 합니다.
OS 구성 관리 기능을 사용하면 어떤 소프트웨어 패키지를 설치해야 하는지, 어떤 서비스를 활성화해야 하는지, 어떤 파일이나 구성이 VM에 있어야 하는지를 지정하는 구성 정책을 정의할 수 있습니다. VM의 소프트웨어 구성을 관리하는 선언적 접근 방식을 사용할 수 있으며, 이를 통해 구성 관리 프로세스를 더 쉽게 자동화하고 확장할 수 있습니다.
이것은 IAM 권한을 통해 인스턴스에 로그인할 수 있게 하므로 권한 상승 및 피벗에 매우 유용합니다.
전체 프로젝트 또는 인스턴스에서 os-config를 활성화하려면 원하는 수준에서 메타데이터 키 **enable-oslogin**을 **true**로 설정하기만 하면 됩니다.
또한, 2fa를 활성화하려면 메타데이터 **enable-oslogin-2fa**를 **true**로 설정할 수 있습니다.
인스턴스를 생성할 때 이를 활성화하면 메타데이터 키가 자동으로 설정됩니다.
OS-config의 2fa에 대한 추가 정보, 사용자가 사용자일 경우에만 적용됩니다, 서비스 계정(SA, 예: 컴퓨트 SA)인 경우에는 추가 요구 사항이 없습니다.
그런 다음 내보낼 수 있습니다가상 디스크를 여러 형식의 이미지에서 내보낼 수 있습니다. 다음 명령은 이미지 test-image를 qcow2 형식으로 내보내며, 이를 통해 파일을 다운로드하고 추가 조사를 위해 로컬에서 VM을 구축할 수 있습니다:
gcloudcomputeimagesexport--imagetest-image \--export-format qcow2--destination-uri [BUCKET]# Execute container inside a dockerdockerrun--rm-tigcr.io/<project-name>/secret:v1sh
권한 상승
Compute Instances 권한 상승 섹션을 확인하세요.
사용자 정의 인스턴스 템플릿
인스턴스 템플릿은 인스턴스 속성을 정의하여 일관된 구성을 배포하는 데 도움을 줍니다. 이러한 템플릿은 실행 중인 인스턴스의 사용자 정의 메타데이터와 동일한 유형의 민감한 데이터를 포함할 수 있습니다. 다음 명령어를 사용하여 조사할 수 있습니다:
# List the available templatesgcloudcomputeinstance-templateslist# Get the details of a specific templategcloudcomputeinstance-templatesdescribe [TEMPLATE NAME]
어떤 디스크가 새로운 이미지를 사용하는지 아는 것은 흥미로울 수 있지만, 이러한 템플릿은 일반적으로 민감한 정보를 포함하지 않습니다.
Snapshots
스냅샷은 디스크의 백업입니다. 이는 디스크를 복제하는 것(또 다른 사용 가능한 기능)과는 다릅니다.
스냅샷은 스냅샷이 생성된 디스크와 동일한 암호화를 사용합니다.