AWS - Glue Privesc
glue
iam:PassRole
, glue:CreateDevEndpoint
, (glue:GetDevEndpoint
| glue:GetDevEndpoints
)
iam:PassRole
, glue:CreateDevEndpoint
, (glue:GetDevEndpoint
| glue:GetDevEndpoints
)これらの権限を持つユーザーは、新しいAWS Glue開発エンドポイントをセットアップし、このエンドポイントに特定の権限を持つGlueでアサイン可能な既存のサービスロールを割り当てることができます。
セットアップ後、攻撃者はエンドポイントのインスタンスにSSHで接続し、割り当てられたロールのIAM資格情報を盗むことができます。
潜在的影響: Glueサービスロールへの特権昇格。
glue:UpdateDevEndpoint
, (glue:GetDevEndpoint
| glue:GetDevEndpoints
)
glue:UpdateDevEndpoint
, (glue:GetDevEndpoint
| glue:GetDevEndpoints
)この権限を持つユーザーは、既存のGlue開発エンドポイントのSSHキーを変更でき、それにSSHアクセスを有効にできます。これにより、攻撃者はエンドポイントにアタッチされたロールの特権でコマンドを実行できます。
潜在的影響: glueサービスロールへの権限昇格。
iam:PassRole
, (glue:CreateJob
| glue:UpdateJob
), (glue:StartJobRun
| glue:CreateTrigger
)
iam:PassRole
, (glue:CreateJob
| glue:UpdateJob
), (glue:StartJobRun
| glue:CreateTrigger
)iam:PassRole
と glue:CreateJob
または glue:UpdateJob
のいずれか、および glue:StartJobRun
または glue:CreateTrigger
のいずれかを組み合わせたユーザーは、AWS Glueジョブを作成または更新し、任意のGlueサービスアカウントを添付し、ジョブの実行を開始できます。ジョブの機能には、任意のPythonコードを実行できる能力が含まれており、これを悪用して逆シェルを確立することができます。この逆シェルを使用して、GlueジョブにアタッチされたロールのIAM資格情報を外部に流出させ、そのロールの権限に基づいて潜在的な不正なアクセスや操作を行うことができます。
潜在的影響: 指定されたGlueサービスロールへの特権昇格。
glue:UpdateJob
glue:UpdateJob
更新権限だけで、攻撃者はすでにアタッチされたロールのIAM資格情報を盗むことができる。
潜在的影響: Glueサービスロールへの特権昇格。
参考文献
最終更新