GCP - KMS Enum

htARTE (HackTricks AWS Red Team Expert)에서 AWS 해킹을 처음부터 전문가까지 배워보세요!

HackTricks를 지원하는 다른 방법:

KMS

Cloud Key Management Service암호화 키를 안전하게 저장하는 데 사용되며, 민감한 데이터의 암호화 및 복호화와 같은 작업에 필수적입니다. 이러한 키는 키 링 내에서 구성되어 구조적인 관리가 가능합니다. 또한, 액세스 제어는 개별 키 수준이나 전체 키 링에 대해 정밀하게 구성할 수 있어 권한이 보안 요구 사항과 정확하게 일치하도록 할 수 있습니다.

KMS 키 링은 기본적으로 전역으로 생성되므로 해당 키 링 내의 키는 모든 지역에서 액세스할 수 있습니다. 그러나 특정 지역에 특정 키 링을 생성할 수도 있습니다.

키 보호 수준

  • 소프트웨어 키: 소프트웨어 키는 KMS에서 완전히 소프트웨어로 생성 및 관리됩니다. 이러한 키는 하드웨어 보안 모듈 (HSM)로 보호되지 않으며 테스트 및 개발 목적으로 사용될 수 있습니다. 소프트웨어 키는 보안 수준이 낮고 공격에 취약하므로 운영 환경에서 권장되지 않습니다.

  • 클라우드 호스팅 키: 클라우드 호스팅 키는 고가용성 및 신뢰성 있는 인프라를 사용하여 KMS에서 클라우드에서 생성 및 관리됩니다. 이러한 키는 HSM으로 보호되지만 HSM은 특정 고객에게 전용되지 않습니다. 클라우드 호스팅 키는 대부분의 운영 환경에 적합합니다.

  • 외부 키: 외부 키는 KMS 외부에서 생성 및 관리되며, 암호화 작업에 사용하기 위해 KMS로 가져옵니다. 외부 키는 고객의 기호에 따라 HSM 또는 소프트웨어 라이브러리에 저장될 수 있습니다.

키 용도

  • 대칭 암호화/복호화: 단일 키를 사용하여 데이터를 암호화 및 복호화하는 데 사용됩니다. 대칭 키는 대량의 데이터를 암호화 및 복호화하는 데 빠르고 효율적입니다.

  • 비대칭 서명: 키를 공유하지 않고 두 당사자 간에 안전한 통신에 사용됩니다. 비대칭 키는 공개 키와 개인 키로 구성됩니다. 공개 키는 다른 사람과 공유되고, 개인 키는 비밀로 유지됩니다.

  • 비대칭 복호화: 메시지 또는 데이터의 진정성을 검증하는 데 사용됩니다. 개인 키를 사용하여 디지털 서명을 생성하고 해당 공개 키를 사용하여 검증할 수 있습니다.

  • MAC 서명: 비밀 키를 사용하여 데이터의 무결성과 진정성을 보장하기 위해 메시지 인증 코드 (MAC)를 생성하는 데 사용됩니다. HMAC은 네트워크 프로토콜 및 소프트웨어 응용 프로그램에서 메시지 인증에 일반적으로 사용됩니다.

회전 기간 및 파괴 프로그램 기간

기본적으로 90일마다 변경할 수 있으며, 완전히 사용자 정의할 수 있습니다.

"파괴 프로그램" 기간은 사용자가 키를 삭제 요청한 후 키가 삭제될 때까지의 시간입니다. 키가 생성된 후에는 변경할 수 없습니다 (기본값 1일).

기본 버전

각 KMS 키는 여러 버전을 가질 수 있으며, 그 중 하나는 기본 버전이어야 합니다. 이는 KMS 키와 상호작용할 때 버전이 지정되지 않은 경우 사용되는 버전입니다.

열거

키를 나열할 권한이 있는 경우 다음과 같이 액세스할 수 있습니다:

# List the global keyrings available
gcloud kms keyrings list --location global
gcloud kms keyrings get-iam-policy <KEYRING>

# List the keys inside a keyring
gcloud kms keys list --keyring <KEYRING> --location <global/other_locations>
gcloud kms keys get-iam-policy <KEY>

# Encrypt a file using one of your keys
gcloud kms decrypt --ciphertext-file=[INFILE] \
--plaintext-file=[OUTFILE] \
--key [KEY] \
--keyring [KEYRING] \
--location global

# Decrypt a file using one of your keys
gcloud kms decrypt --ciphertext-file=[INFILE] \
--plaintext-file=[OUTFILE] \
--key [KEY] \
--keyring [KEYRING] \
--location global

권한 상승

pageGCP - KMS Privesc

사후 침투

pageGCP - KMS Post Exploitation

참고 자료

htARTE (HackTricks AWS Red Team Expert)를 통해 제로에서 영웅까지 AWS 해킹을 배워보세요!

HackTricks를 지원하는 다른 방법:

最終更新