From 708e689b7832290eb1d138cdb26e000c7288fed1 Mon Sep 17 00:00:00 2001 From: Translator Date: Fri, 9 May 2025 11:47:43 +0000 Subject: [PATCH] Translated ['src/pentesting-cloud/aws-security/aws-privilege-escalation/ --- .../aws-privilege-escalation/aws-s3-privesc.md | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-s3-privesc.md b/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-s3-privesc.md index 3d07abda7..de8e0e4b5 100644 --- a/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-s3-privesc.md +++ b/src/pentesting-cloud/aws-security/aws-privilege-escalation/aws-s3-privesc.md @@ -8,7 +8,7 @@ 흥미로운 버킷에 대한 이러한 권한을 가진 공격자는 리소스를 탈취하고 권한을 상승시킬 수 있습니다. -예를 들어, "cf-templates-nohnwfax6a6i-us-east-1"라는 **cloudformation 버킷에 대한 이러한 권한을 가진 공격자**는 배포를 탈취할 수 있습니다. 액세스는 다음 정책으로 부여될 수 있습니다: +예를 들어, "cf-templates-nohnwfax6a6i-us-east-1"이라는 클라우드포메이션 버킷에 대한 **권한을 가진 공격자**는 배포를 탈취할 수 있습니다. 접근은 다음 정책으로 부여될 수 있습니다: ```json { "Version": "2012-10-17", @@ -34,7 +34,7 @@ ] } ``` -그리고 하이재킹이 가능한 이유는 **템플릿이 버킷에 업로드되는 순간부터** **템플릿이 배포되는 순간까지의 작은 시간 창**이 있기 때문입니다. 공격자는 자신의 계정에 **lambda function**을 생성하여 **버킷 알림이 전송될 때 트리거**되도록 하고, **버킷**의 **내용**을 **하이재킹**할 수 있습니다. +그리고 하이재킹이 가능한 이유는 **템플릿이 버킷에 업로드되는 순간부터** **템플릿이 배포되는 순간까지**의 **짧은 시간 창**이 있기 때문입니다. 공격자는 자신의 계정에 **lambda function**을 생성하여 **버킷 알림이 전송될 때 트리거**되도록 하고, **하이재킹**하여 **버킷**의 **내용**을 가져갈 수 있습니다. ![](<../../../images/image (174).png>) @@ -48,18 +48,18 @@ Pacu 모듈 [`cfn__resouce_injection`](https://github.com/RhinoSecurityLabs/pacu 이들에 대한 **쓰기 접근** 권한이 있는 공격자는 **데이터를 수정하여 일부 서비스를 악용하고 권한을 상승시키려고 시도할 수 있습니다**.\ 다음은 몇 가지 예입니다: -- EC2 인스턴스가 **S3 버킷에 사용자 데이터를 저장하고 있는 경우**, 공격자는 이를 수정하여 **EC2 인스턴스 내에서 임의의 코드를 실행**할 수 있습니다. +- EC2 인스턴스가 **사용자 데이터를 S3 버킷에 저장하고 있는 경우**, 공격자는 이를 수정하여 **EC2 인스턴스 내에서 임의의 코드를 실행**할 수 있습니다. ### `s3:PutObject`, `s3:GetObject` (선택 사항) terraform 상태 파일에 대한 -[terraform](https://cloud.hacktricks.wiki/en/pentesting-ci-cd/terraform-security.html) 상태 파일이 클라우드 제공자의 블롭 스토리지에 저장되는 것은 매우 일반적입니다. 예를 들어 AWS S3. 상태 파일의 파일 접미사는 `.tfstate`이며, 버킷 이름은 종종 terraform 상태 파일을 포함하고 있음을 나타냅니다. 일반적으로 모든 AWS 계정에는 상태 파일을 저장하는 하나의 버킷이 있습니다. 이 상태 파일은 계정의 상태를 보여줍니다. 또한 실제 계정에서는 거의 모든 개발자가 `s3:*` 권한을 가지고 있으며, 때로는 비즈니스 사용자도 `s3:Put*` 권한을 가집니다. +[terraform](https://cloud.hacktricks.wiki/en/pentesting-ci-cd/terraform-security.html) 상태 파일이 클라우드 제공자의 블롭 스토리지에 저장되는 것은 매우 일반적입니다. 예를 들어 AWS S3. 상태 파일의 파일 접미사는 `.tfstate`이며, 버킷 이름은 종종 terraform 상태 파일을 포함하고 있음을 나타냅니다. 일반적으로 모든 AWS 계정에는 상태 파일을 저장하는 하나의 버킷이 있습니다. 이 버킷은 계정의 상태를 보여줍니다. 또한 실제 계정에서는 거의 모든 개발자가 `s3:*` 권한을 가지고 있으며, 때로는 비즈니스 사용자도 `s3:Put*` 권한을 가집니다. -따라서 이러한 파일에 대해 나열된 권한이 있는 경우, `terraform`의 권한으로 파이프라인에서 RCE를 얻을 수 있는 공격 벡터가 있습니다. 대부분의 경우 `AdministratorAccess`로 클라우드 계정의 관리자가 됩니다. 또한 이 벡터를 사용하여 `terraform`이 합법적인 리소스를 삭제하도록 하여 서비스 거부 공격을 수행할 수 있습니다. +따라서 이러한 파일에 대한 권한이 있는 경우, `terraform`의 권한으로 파이프라인에서 RCE를 얻을 수 있는 공격 벡터가 있습니다. 대부분의 경우 `AdministratorAccess`가 되어 클라우드 계정의 관리자가 됩니다. 또한 이 벡터를 사용하여 `terraform`이 합법적인 리소스를 삭제하도록 하여 서비스 거부 공격을 수행할 수 있습니다. 직접 사용할 수 있는 익스플로잇 코드는 *Terraform Security* 페이지의 *Abusing Terraform State Files* 섹션의 설명을 따르세요: {{#ref}} -pentesting-ci-cd/terraform-security.md#abusing-terraform-state-files +../../../pentesting-ci-cd/terraform-security.md#abusing-terraform-state-files {{#endref}} ### `s3:PutBucketPolicy` @@ -150,7 +150,7 @@ aws s3api put-bucket-acl --bucket --access-control-policy file://a ``` ### `s3:GetObjectAcl`, `s3:PutObjectAcl` -공격자는 이러한 권한을 악용하여 버킷 내 특정 객체에 대한 더 많은 액세스를 부여받을 수 있습니다. +공격자는 이러한 권한을 악용하여 버킷 내 특정 객체에 대한 더 많은 접근 권한을 부여받을 수 있습니다. ```bash # Update bucket object ACL aws s3api get-object-acl --bucket --key flag @@ -177,7 +177,7 @@ aws s3api put-object-acl --bucket --key flag --access-control-poli ``` ### `s3:GetObjectAcl`, `s3:PutObjectVersionAcl` -이 권한을 가진 공격자는 특정 객체 버전에 Acl을 설정할 수 있어야 합니다. +이 권한을 가진 공격자는 특정 객체 버전에 Acl을 설정할 수 있을 것으로 예상됩니다. ```bash aws s3api get-object-acl --bucket --key flag aws s3api put-object-acl --bucket --key flag --version-id --access-control-policy file://objacl.json