AWS - Route53 Privesc
Route53に関する詳細情報は次を参照してください:
AWS - Route53 Enumroute53:CreateHostedZone
, route53:ChangeResourceRecordSets
, acm-pca:IssueCertificate
, acm-pca:GetCertificate
route53:CreateHostedZone
, route53:ChangeResourceRecordSets
, acm-pca:IssueCertificate
, acm-pca:GetCertificate
この攻撃を実行するには、対象アカウントにすでにAWS Certificate Manager Private Certificate Authority **(AWS-PCA)**が設定されており、VPC内のEC2インスタンスがすでにそれを信頼するために証明書をインポートしている必要があります。このインフラが整った状態で、以下の攻撃を実行してAWS APIトラフィックを傍受できます。
他の権限 列挙のために推奨されますが必須ではありません: route53:GetHostedZone
, route53:ListHostedZones
, acm-pca:ListCertificateAuthorities
, ec2:DescribeVpcs
複数のクラウドネイティブアプリケーションがお互いとAWS APIと通信しているAWS VPCがあると仮定します。マイクロサービス間の通信はしばしばTLSで暗号化されているため、これらのサービスに有効な証明書を発行するためのプライベートCAが必要です。ACM-PCAがそのために使用されており、攻撃者が上記の最小限の権限セットでroute53とacm-pcaプライベートCAの両方を制御するアクセスを取得した場合、アプリケーションのAWS APIへの呼び出しを乗っ取ることができます。
これは可能な理由です:
AWS SDKには証明書ピンニングがありません
Route53はAWS APIドメイン名のプライベートホストゾーンとDNSレコードを作成することを許可します
ACM-PCAのプライベートCAは特定の共通名の証明書のみに署名するように制限できません
潜在的な影響: トラフィック内の機密情報を傍受することによる間接的な権限昇格。
悪用
オリジナルの研究で悪用手順を見つける: https://niebardzo.github.io/2022-03-11-aws-hijacking-route53/
Last updated