AWS - IAM Privesc
Last updated
Last updated
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)
IAMに関する詳細情報は以下を確認してください:
iam:CreatePolicyVersion
新しいIAMポリシーバージョンを作成する能力を付与し、--set-as-default
フラグを使用することでiam:SetDefaultPolicyVersion
権限の必要性を回避します。これにより、カスタム権限を定義できます。
エクスプロイトコマンド:
影響: すべてのリソースに対して任意のアクションを許可することにより、直接的に特権を昇格させます。
iam:SetDefaultPolicyVersion
IAMポリシーのデフォルトバージョンを別の既存のバージョンに変更することを許可し、新しいバージョンにより多くの権限がある場合、特権を昇格させる可能性があります。
Bashコマンド:
影響: より多くの権限を有効にすることによる間接的な権限昇格。
iam:CreateAccessKey
他のユーザーのためにアクセスキーIDとシークレットアクセスキーを作成することを可能にし、権限昇格の可能性を引き起こします。
悪用:
影響: 他のユーザーの拡張権限を引き受けることによる直接的な権限昇格。
iam:CreateLoginProfile
| iam:UpdateLoginProfile
AWSコンソールログインのためのパスワード設定を含むログインプロファイルの作成または更新を許可し、直接的な権限昇格につながる。
作成のためのエクスプロイト:
更新のためのエクスプロイト:
影響: "任意"のユーザーとしてログインすることによる直接的な権限昇格。
iam:UpdateAccessKey
無効なアクセスキーを有効にすることを許可し、攻撃者が無効なキーを持っている場合、無許可のアクセスにつながる可能性があります。
悪用:
影響: アクセスキーを再活性化することによる直接的な権限昇格。
iam:CreateServiceSpecificCredential
| iam:ResetServiceSpecificCredential
特定のAWSサービス(例:CodeCommit、Amazon Keyspaces)のための資格情報を生成またはリセットすることを可能にし、関連するユーザーの権限を継承します。
作成のためのエクスプロイト:
リセットのためのエクスプロイト:
影響: ユーザーのサービス権限内での直接的な権限昇格。
iam:AttachUserPolicy
|| iam:AttachGroupPolicy
ユーザーまたはグループにポリシーを添付することを許可し、添付されたポリシーの権限を継承することによって権限を直接昇格させます。
ユーザーのためのエクスプロイト:
グループのためのエクスプロイト:
影響: ポリシーが付与するすべてへの直接的な権限昇格。
iam:AttachRolePolicy
, ( sts:AssumeRole
|iam:createrole
) | iam:PutUserPolicy
| iam:PutGroupPolicy
| iam:PutRolePolicy
ロール、ユーザー、またはグループにポリシーを添付または設定することを許可し、追加の権限を付与することによって直接的な権限昇格を可能にします。
ロールのためのエクスプロイト:
インラインポリシーのエクスプロイト:
あなたは次のようなポリシーを使用できます:
影響: ポリシーを通じて権限を追加することによる直接的な権限昇格。
iam:AddUserToGroup
自分自身をIAMグループに追加することを可能にし、グループの権限を継承することで権限を昇格させる。
悪用:
影響: グループの権限レベルへの直接的な権限昇格。
iam:UpdateAssumeRolePolicy
ロールのアサムロールポリシー文書を変更することを許可し、ロールとその関連する権限の引き受けを可能にします。
悪用:
ポリシーが以下のようになっている場合、ユーザーにロールを引き受ける権限が与えられます:
影響: 任意のロールの権限を引き受けることによる直接的な権限昇格。
iam:UploadSSHPublicKey
|| iam:DeactivateMFADevice
CodeCommitへの認証のためにSSH公開鍵をアップロードし、MFAデバイスを無効にすることを許可し、潜在的な間接的権限昇格につながる。
SSHキーアップロードのためのエクスプロイト:
MFA無効化のためのエクスプロイト:
影響: CodeCommitアクセスを有効にするか、MFA保護を無効にすることによる間接的な特権昇格。
iam:ResyncMFADevice
MFAデバイスの再同期を許可し、MFA保護を操作することによって間接的な特権昇格を引き起こす可能性があります。
Bashコマンド:
影響: MFAデバイスを追加または操作することによる間接的な権限昇格。
iam:UpdateSAMLProvider
, iam:ListSAMLProviders
, (iam:GetSAMLProvider
)これらの権限を持つことで、SAML接続のXMLメタデータを変更することができます。その後、SAMLフェデレーションを悪用して、信頼している任意のロールでログインすることができます。
これを行うと、正当なユーザーはログインできなくなることに注意してください。ただし、XMLを取得できるので、自分のものを入れてログインし、以前の設定を構成することができます。
TODO: 指定されたロールでログインし、SAMLメタデータを生成できるツール
iam:UpdateOpenIDConnectProviderThumbprint
, iam:ListOpenIDConnectProviders
, (iam:
GetOpenIDConnectProvider
)(これについては不明)攻撃者がこれらの権限を持っている場合、プロバイダーを信頼するすべてのロールにログインするために新しいサムプリントを追加することができます。
AWSハッキングを学び、実践する:HackTricks Training AWS Red Team Expert (ARTE) GCPハッキングを学び、実践する:HackTricks Training GCP Red Team Expert (GRTE)