GCP - Pub/Sub Enum

Support HackTricks

Pub/Sub

Google Cloud Pub/Sub는 독립적인 애플리케이션 간의 메시지 교환을 촉진하는 서비스로 설명됩니다. 핵심 구성 요소에는 애플리케이션이 구독할 수 있는 주제가 포함됩니다. 구독된 애플리케이션은 메시지를 보내고 받을 수 있는 기능을 가지고 있습니다. 각 메시지는 실제 내용과 관련 메타데이터로 구성됩니다.

주제는 메시지가 전송될 큐이며, 구독은 사용자가 주제의 메시지에 접근하기 위해 사용할 객체입니다. 주제당 1개 이상의 구독이 있을 수 있으며, 구독의 유형은 4가지입니다:

  • : 이 구독의 사용자(들)는 메시지를 가져와야 합니다.

  • 푸시: URL 엔드포인트가 지정되며 메시지가 즉시 전송됩니다.

  • 빅 쿼리 테이블: 푸시와 유사하지만 메시지를 빅 쿼리 테이블에 저장합니다.

  • 클라우드 스토리지: 기존 버킷에 직접 메시지를 전달합니다.

기본적으로 구독은 31일 후에 만료되지만, 만료되지 않도록 설정할 수 있습니다.

기본적으로, 메시지는 7일 동안 보관되지만 이 시간을 31일로 늘릴 수 있습니다. 또한, 10초 이내에 ACK되지 않으면 큐로 돌아갑니다. ACK된 메시지가 계속 저장되도록 설정할 수도 있습니다.

주제는 기본적으로 Google 관리 암호화 키를 사용하여 암호화됩니다. 그러나 KMS의 CMEK(고객 관리 암호화 키)를 선택할 수도 있습니다.

데드 레터: 구독은 최대 배달 시도 횟수를 구성할 수 있습니다. 메시지를 배달할 수 없는 경우, 해당 메시지는 지정된 데드 레터 주제에 재게시됩니다.

스냅샷 및 스키마

스냅샷은 특정 시점에서 구독의 상태를 캡처하는 기능입니다. 본질적으로 구독의 미승인 메시지에 대한 일관된 백업입니다. 스냅샷을 생성하면 구독의 메시지 승인 상태를 보존하여, 원래 메시지가 삭제되었더라도 스냅샷이 생성된 시점부터 메시지 소비를 재개할 수 있습니다. 운이 좋다면 스냅샷에는 스냅샷이 생성된 시점의 오래된 민감한 정보가 포함될 수 있습니다.

주제를 생성할 때 주제 메시지가 스키마를 따라야 한다고 지정할 수 있습니다.

Enumeration

# Get a list of topics in the project
gcloud pubsub topics list
gcloud pubsub topics describe <topic>
gcloud pubsub topics list-subscriptions <topic>
gcloud pubsub topics get-iam-policy <topic>

# Get a list of subscriptions across all topics
gcloud pubsub subscriptions list
gcloud pubsub subscriptions describe <subscription>
gcloud pubsub subscriptions get-iam-policy <subscription>

# Get list of schemas
gcloud pubsub schemas list
gcloud pubsub schemas describe <schema>
gcloud pubsub schemas list-revisions <schema>

# Get list of snapshots
gcloud pubsub snapshots list
gcloud pubsub snapshots describe <snapshot>

그러나 더 오래된 메시지를 포함하여 더 큰 데이터 세트를 요청하는 것이 더 나은 결과를 가져올 수 있습니다. 이는 몇 가지 전제 조건이 있으며 애플리케이션에 영향을 미칠 수 있으므로, 정말로 무엇을 하고 있는지 확실히 아는 것이 중요합니다.

권한 상승 및 사후 활용

Pub/Sub Lite

Pub/Sub Lite영역 저장소를 가진 메시징 서비스입니다. Pub/Sub Lite는 Pub/Sub의 일부 비용만 들며, 저비용이 주요 고려 사항인 고용량 스트리밍(초당 최대 1,000만 메시지) 파이프라인 및 이벤트 기반 시스템을 위해 설계되었습니다.

Pub/Sub Lite에는 주제구독이 있으며, 스냅샷스키마는 없고 다음이 있습니다:

  • 예약: Pub/Sub Lite 예약은 사용자가 특정 지역에서 메시지 스트림을 위한 용량을 예약할 수 있게 해주는 기능입니다.

  • 작업: Pub/Sub Lite를 관리하고 운영하는 데 관련된 작업과 과정을 의미합니다.

열거

# lite-topics
gcloud pubsub lite-topics list
gcloud pubsub lite-topics describe <topic>
gcloud pubsub lite-topics list-subscriptions <topic>

# lite-subscriptions
gcloud pubsub lite-subscriptions list
gcloud pubsub lite-subscriptions describe <subscription>

# lite-reservations
gcloud pubsub lite-reservations list
gcloud pubsub lite-reservations describe <topic>
gcloud pubsub lite-reservations list-topics <topic>

# lite-operations
gcloud pubsub lite-operations list
gcloud pubsub lite-operations describe <topic>
HackTricks 지원하기

Last updated