AWS - Route53 Privesc

Reading time: 3 minutes

tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE) Azure 해킹 배우기 및 연습하기: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks 지원하기

Route53에 대한 자세한 정보는 다음을 확인하세요:

AWS - Route53 Enum

route53:CreateHostedZone, route53:ChangeResourceRecordSets, acm-pca:IssueCertificate, acm-pca:GetCertificate

note

이 공격을 수행하려면 대상 계정에 이미 AWS Certificate Manager Private Certificate Authority **(AWS-PCA)**가 설정되어 있어야 하며, VPC(s)의 EC2 인스턴스들은 해당 CA를 신뢰하도록 인증서를 미리 가져와야 합니다. 이러한 인프라가 구축되어 있으면 다음과 같은 공격을 통해 AWS API 트래픽을 가로챌 수 있습니다.

다음 권한은 열거 단계에서 권장되지만 필수는 아님: route53:GetHostedZone, route53:ListHostedZones, acm-pca:ListCertificateAuthorities, ec2:DescribeVpcs

여러 cloud-native 애플리케이션이 서로 및 AWS API와 통신하는 AWS VPC가 있다고 가정해보면, 마이크로서비스 간 통신은 대개 TLS로 암호화되므로 해당 서비스들에 대해 유효한 인증서를 발급할 private CA가 필요합니다. If ACM-PCA is used 이러한 경우 공격자가 위에 설명한 최소 권한 세트로 route53과 acm-pca private CA 둘 다를 제어할 수 있는 접근을 확보하면, 애플리케이션의 AWS API 호출을 가로채어 그들의 IAM 권한을 탈취할 수 있습니다.

이것이 가능한 이유:

  • AWS SDKs에는 Certificate Pinning이 적용되어 있지 않습니다
  • Route53는 AWS API 도메인 이름에 대해 Private Hosted Zone과 DNS 레코드를 생성할 수 있습니다
  • ACM-PCA의 Private CA는 특정 Common Names에 대해서만 인증서를 서명하도록 제한할 수 없습니다

Potential Impact: 트래픽에서 민감한 정보를 가로채어 간접적인 privesc를 유발할 수 있음.

악용

원본 리서치에서 악용 단계를 확인하세요: https://niebardzo.github.io/2022-03-11-aws-hijacking-route53/

tip

AWS 해킹 배우기 및 연습하기:HackTricks Training AWS Red Team Expert (ARTE)
GCP 해킹 배우기 및 연습하기: HackTricks Training GCP Red Team Expert (GRTE) Azure 해킹 배우기 및 연습하기: HackTricks Training Azure Red Team Expert (AzRTE)

HackTricks 지원하기