AWS - S3 Post Exploitation
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をサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
S3
詳細は以下を参照してください:
AWS - S3, Athena & Glacier Enum
機密情報
バケット内に平文で機密情報が置かれていることがあります。例えば、terraform state secrets。
Pivoting
Different platforms could be using S3 to store sensitive assets.
For example, airflow could be storing DAGs code in there, or web pages could be directly served from S3. An attacker with write permissions could modify the code from the bucket to pivot to other platforms, or takeover accounts modifying JS files.
S3 Ransomware
In this scenario, the attacker creates a KMS (Key Management Service) key in their own AWS account or another compromised account. They then make this key accessible to anyone in the world, allowing any AWS user, role, or account to encrypt objects using this key. However, the objects cannot be decrypted.
攻撃者は標的の S3 bucket and gains write-level access を特定し、さまざまな方法で書き込み権限を取得します。これはバケットの設定不備で公開されている場合や、攻撃者が AWS 環境自体へ侵入した場合などが考えられます。攻撃者は通常、PII、PHI、ログ、バックアップなどの機密情報を含むバケットを狙います。
ランサムウェアの対象にできるかを判断するため、攻撃者はバケットの設定を確認します。これには S3 Object Versioning が有効か、multi-factor authentication delete (MFA delete) is enabled かを検証することが含まれます。Object Versioning が有効でない場合は攻撃者は進行できます。Object Versioning は有効でも MFA delete が無効であれば、攻撃者は disable Object Versioning することができます。もし両方が有効であれば、そのバケットをランサムウェア化するのはより困難になります。
Using the AWS API, the attacker replaces each object in the bucket with an encrypted copy using their KMS key. これによりバケット内のデータが実質的に暗号化され、キーがなければアクセス不能になります。
さらに圧力をかけるために、攻撃者は攻撃に使用した KMS key の削除をスケジュールすることがあります。これにより対象はキーが削除されデータが恒久的に失われる前の7日間で回復を試みる必要が生じます。
最後に、攻撃者は通常 “ransom-note.txt” と名付けた最終的なファイルをアップロードし、ファイルの取得方法についての指示を記載します。このファイルは暗号化せずにアップロードされ、対象の注意を引きランサムウェア攻撃に気づかせるために使われます。
s3:RestoreObject
An attacker with the s3:RestoreObject permission can reactivate objects archived in Glacier or Deep Archive, making them temporarily accessible. これにより通常は手の届かない過去にアーカイブされたデータ(バックアップ、スナップショット、ログ、証明書、古いシークレット等)の復旧やexfiltrationが可能になります。もし攻撃者がこの権限を読み取り権限(例: s3:GetObject)と組み合わせれば、機密データの完全なコピーを取得することができます。
aws s3api restore-object \
--bucket <BUCKET_NAME> \
--key <OBJECT_KEY> \
--restore-request '{
"Days": <NUMBER_OF_DAYS>,
"GlacierJobParameters": { "Tier": "Standard" }
}'
s3:Delete*
s3:Delete* 権限を持つ攻撃者は、オブジェクト、バージョン、バケット全体を削除したり、バックアップを妨害したりして、即時かつ回復不能なデータ損失、証拠の破壊、バックアップやリカバリのアーティファクトの侵害を引き起こす可能性があります。
# Delete an object from a bucket
aws s3api delete-object \
--bucket <BUCKET_NAME> \
--key <OBJECT_KEY>
# Delete a specific version
aws s3api delete-object \
--bucket <BUCKET_NAME> \
--key <OBJECT_KEY> \
--version-id <VERSION_ID>
# Delete a bucket
aws s3api delete-bucket \
--bucket <BUCKET_NAME>
詳細については check the original research.
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をサポートする
- サブスクリプションプランを確認してください!
- **💬 Discordグループまたはテレグラムグループに参加するか、Twitter 🐦 @hacktricks_liveをフォローしてください。
- HackTricksおよびHackTricks CloudのGitHubリポジトリにPRを提出してハッキングトリックを共有してください。
HackTricks Cloud

