diff --git a/src/pentesting-cloud/aws-security/aws-post-exploitation/aws-kms-post-exploitation/README.md b/src/pentesting-cloud/aws-security/aws-post-exploitation/aws-kms-post-exploitation/README.md
index 237211a11..cd586ce6c 100644
--- a/src/pentesting-cloud/aws-security/aws-post-exploitation/aws-kms-post-exploitation/README.md
+++ b/src/pentesting-cloud/aws-security/aws-post-exploitation/aws-kms-post-exploitation/README.md
@@ -4,23 +4,23 @@
## KMS
-자세한 정보는 다음을 확인하세요:
+자세한 내용은 다음을 확인하세요:
{{#ref}}
../../aws-services/aws-kms-enum.md
{{#endref}}
-### 암호화/복호화 정보
+### Encrypt/Decrypt information
-`fileb://`와 `file://`은 AWS CLI 명령에서 로컬 파일의 경로를 지정할 때 사용되는 URI 스킴입니다:
+`fileb://` and `file://` are URI schemes used in AWS CLI commands to specify the path to local files:
-- `fileb://:`는 파일을 바이너리 모드로 읽습니다. 비텍스트 파일에 일반적으로 사용됩니다.
-- `file://:`는 파일을 텍스트 모드로 읽습니다. 일반 텍스트 파일, 스크립트 또는 특수 인코딩이 필요 없는 JSON에 주로 사용됩니다.
+- `fileb://:`는 파일을 바이너리 모드로 읽습니다. 일반적으로 텍스트가 아닌 파일에 사용됩니다.
+- `file://:`는 파일을 텍스트 모드로 읽습니다. 일반적으로 일반 텍스트 파일, 스크립트, 또는 특수 인코딩이 필요하지 않은 JSON에 사용됩니다.
> [!TIP]
-> 파일 내부의 일부 데이터를 복호화하려면, 파일이 base64로 인코딩된 데이터가 아니라 바이너리 데이터를 포함해야 합니다. (fileb://)
+> 파일 내부의 데이터를 복호화하려는 경우, 파일에는 base64로 인코딩된 데이터가 아닌 바이너리 데이터가 포함되어 있어야 합니다. (fileb://)
-- **symmetric** 키 사용
+- **대칭** 키 사용
```bash
# Encrypt data
aws kms encrypt \
@@ -38,7 +38,7 @@ aws kms decrypt \
--query Plaintext | base64 \
--decode
```
-- **비대칭** 키 사용:
+- **asymmetric** 키 사용:
```bash
# Encrypt data
aws kms encrypt \
@@ -60,14 +60,14 @@ aws kms decrypt \
```
### KMS Ransomware
-KMS에 대한 권한 있는 접근을 가진 공격자는 키의 KMS 정책을 수정하고 **자신의 계정에 대한 접근을 부여**함으로써 정당한 계정에 부여된 접근을 제거할 수 있습니다.
+KMS에 대한 권한을 가진 공격자는 키의 KMS 정책을 수정하여 **자신의 계정에 접근 권한을 부여하고**, 정당한 계정에 부여된 접근을 제거할 수 있습니다.
-그 결과 정당한 계정 사용자는 해당 키로 암호화된 서비스의 어떠한 정보에도 접근할 수 없게 되어 계정에 대해 쉽고도 효과적인 ransomware를 유발합니다.
+그 결과 정당한 계정 사용자들은 해당 키로 암호화된 서비스의 어떤 정보에도 접근할 수 없게 되어, 계정 전체에 대해 쉽지만 효과적인 ransomware를 만들어냅니다.
> [!WARNING]
-> 참고: **AWS managed keys aren't affected**, 이 공격은 오직 **Customer managed keys**에만 영향을 줍니다.
-
-> 또한 **`--bypass-policy-lockout-safety-check`** 파라미터를 사용해야 함에 유의하세요(이 옵션이 web console에 없어 이 공격은 CLI에서만 가능합니다).
+> 참고: 이 공격은 **AWS managed keys**에 영향을 주지 않으며, 오직 **Customer managed keys**에만 영향을 줍니다.
+>
+> 또한 파라미터 **`--bypass-policy-lockout-safety-check`**를 사용해야 한다는 점에 유의하십시오 (web console에는 이 옵션이 없어 이 공격은 오직 CLI에서만 가능합니다).
```bash
# Force policy change
aws kms put-key-policy --key-id mrk-c10357313a644d69b4b28b88523ef20c \
@@ -92,28 +92,28 @@ aws kms put-key-policy --key-id mrk-c10357313a644d69b4b28b88523ef20c \
}
```
> [!CAUTION]
-> 정책을 변경하여 외부 계정에만 액세스를 부여한 다음, 해당 외부 계정에서 원래 계정에 액세스를 다시 부여하도록 새 정책을 설정하려고 하면, **원래 계정에 접근 권한을 되돌려주려 해도, Put Polocy action cannot be performed from a cross account 때문에 불가능합니다.**
-
+> 정책을 변경하여 외부 계정에만 액세스를 허용한 다음, 그 외부 계정에서 원래 계정으로 액세스를 되돌리기 위해 새 정책을 설정하려고 해도, **원래 계정으로 액세스를 되돌려주는 새 정책을 설정하려고 하면 불가능합니다. 이유는 Put Polocy action은 cross account에서 수행할 수 없기 때문입니다**.
+>
-### Generic KMS Ransomware
+### 일반적인 KMS Ransomware
-글로벌 KMS Ransomware를 수행하는 또 다른 방법이 있으며, 다음 단계가 포함됩니다:
+글로벌 KMS Ransomware를 수행하는 또 다른 방법은 다음 단계를 포함합니다:
-- 공격자가 가져온 **key material**으로 새 **key**를 생성
-- 이전 버전으로 암호화된 피해자의 오래된 데이터를 새 키로 **재암호화**
-- **Delete the KMS key**
-- 이제 원래의 **key material**을 가진 공격자만 암호화된 데이터를 복호화할 수 있게 됩니다
+- 공격자가 가져온 **key material이 포함된 새 키**를 생성한다
+- 피해자의 이전 버전으로 암호화된 오래된 데이터를 **새 키로 재암호화**한다
+- **KMS 키를 삭제**한다
+- 이제 원본 key material을 가진 공격자만 암호화된 데이터를 복호화할 수 있게 된다
-### Delete Keys via kms:DeleteImportedKeyMaterial
+### kms:DeleteImportedKeyMaterial를 통한 키 삭제
-With the `kms:DeleteImportedKeyMaterial` permission, an actor can delete the imported key material from CMKs with `Origin=EXTERNAL` (CMKs that have imported their key material), making them unable to decrypt data. 이 작업은 파괴적이며, 호환되는 material이 재임포트되지 않는 한 되돌릴 수 없습니다. 공격자는 이를 통해 암호화된 정보를 영구적으로 접근 불가능하게 만들어 실질적인 ransomware-like 데이터 손실을 초래할 수 있습니다.
+권한 `kms:DeleteImportedKeyMaterial`을 가진 주체는 `Origin=EXTERNAL`인 CMK(키 재료를 가져온 CMK)에서 가져온 키 재료를 삭제할 수 있으며, 그 결과 해당 CMK로는 데이터를 복호화할 수 없게 됩니다. 이 작업은 파괴적이며, 호환되는 키 재료가 다시 가져오지 않는 한 되돌릴 수 없습니다. 따라서 공격자는 암호화된 정보를 영구적으로 접근 불가능하게 만들어 사실상 ransomware-like 데이터 손실을 초래할 수 있습니다.
```bash
aws kms delete-imported-key-material --key-id
```
### 키 파괴
-키를 파괴하면 DoS를 발생시킬 수 있습니다.
+키를 파괴하면 DoS를 수행할 수 있다.
```bash
# Schedule the destoy of a key (min wait time is 7 days)
aws kms schedule-key-deletion \
@@ -121,10 +121,10 @@ aws kms schedule-key-deletion \
--pending-window-in-days 7
```
> [!CAUTION]
-> AWS가 이제 이전 작업들이 교차 계정에서 수행되는 것을 **차단한다는 점에 유의하세요:**
+> AWS가 이제 **이전 작업들이 교차 계정에서 수행되는 것을 방지한다는 점에 유의하세요:**
### Alias 변경 또는 삭제
-이 공격은 AWS KMS aliases를 삭제하거나 재지정하여 키 해석을 무너뜨리고, 해당 aliases에 의존하는 서비스들이 즉시 실패하게 만들어 서비스 거부(denial-of-service)를 초래할 수 있습니다. `kms:DeleteAlias` 또는 `kms:UpdateAlias` 같은 권한을 가진 공격자는 aliases를 제거하거나 재지정하여 암호화 작업(예: encrypt, describe)을 방해할 수 있습니다. alias 대신 key ID를 참조하는 모든 서비스는 alias가 복원되거나 올바르게 다시 매핑될 때까지 실패할 수 있습니다.
+이 공격은 AWS KMS의 alias를 삭제하거나 재지정하여 키 해석을 무력화하고, 해당 alias에 의존하는 서비스들에 즉시 장애를 일으켜 denial-of-service를 초래합니다. `kms:DeleteAlias` 또는 `kms:UpdateAlias` 같은 권한이 있으면 공격자는 alias를 제거하거나 재지정하여 암호화 연산(예: encrypt, describe)을 방해할 수 있습니다. key ID 대신 alias를 참조하는 서비스는 alias가 복구되거나 올바르게 재매핑될 때까지 실패할 수 있습니다.
```bash
# Delete Alias
aws kms delete-alias --alias-name alias/
@@ -134,8 +134,8 @@ aws kms update-alias \
--alias-name alias/ \
--target-key-id
```
-### 키 삭제 취소
-`kms:CancelKeyDeletion` 및 `kms:EnableKey` 같은 권한을 가진 행위자는 AWS KMS customer master key의 예약된 삭제를 취소하고 이후 다시 활성화할 수 있습니다. 이렇게 하면 키가 복구되어(초기에는 Disabled state에 있음) 이전에 보호된 데이터를 복호화할 수 있는 능력이 복원되어 exfiltration이 가능해집니다.
+### Cancel Key Deletion
+권한(예: `kms:CancelKeyDeletion` 및 `kms:EnableKey`)이 있으면 공격자는 AWS KMS customer master key의 예정된 삭제를 취소하고 나중에 다시 활성화할 수 있습니다. 이렇게 하면 키가 복구(초기에는 Disabled 상태)되고 이전에 보호된 데이터를 복호화할 수 있는 기능이 복원되어 exfiltration이 가능해집니다.
```bash
# Firts cancel de deletion
aws kms cancel-key-deletion \
@@ -145,22 +145,22 @@ aws kms cancel-key-deletion \
aws kms enable-key \
--key-id
```
-### Disable Key
-`kms:DisableKey` 권한을 가진 행위자는 AWS KMS customer master key를 비활성화할 수 있어 해당 키를 암호화 또는 복호화에 사용할 수 없게 합니다. 이는 해당 CMK에 의존하는 모든 서비스의 접근을 차단하여 키가 다시 활성화될 때까지 즉각적인 중단이나 denial-of-service를 초래할 수 있습니다.
+### 키 비활성화
+`kms:DisableKey` 권한이 있으면 행위자는 AWS KMS customer master key를 비활성화하여 해당 키를 encryption이나 decryption에 사용할 수 없게 만들 수 있습니다. 이는 해당 CMK에 의존하는 모든 서비스의 접근을 차단하여 키가 다시 활성화될 때까지 즉시 중단이나 denial-of-service를 초래할 수 있습니다.
```bash
aws kms disable-key \
--key-id
```
-### 공유 비밀 도출
-`kms:DeriveSharedSecret` 권한이 있으면, 행위자는 KMS에 보관된 개인 키와 사용자 제공 공개 키를 사용해 ECDH 공유 비밀을 계산할 수 있습니다.
+### Derive Shared Secret
+`kms:DeriveSharedSecret` 권한이 있으면, 행위자는 KMS에 보관된 private key와 사용자 제공 public key를 사용해 ECDH shared secret을 계산할 수 있습니다.
```bash
aws kms derive-shared-secret \
--key-id \
--public-key fileb:/// \
--key-agreement-algorithm
```
-### Impersonation via kms:Sign
-권한 `kms:Sign`을 가진 행위자는 KMS에 저장된 CMK를 사용하여 private key를 노출하지 않고 데이터를 암호학적으로 서명할 수 있으며, 이는 impersonation을 가능하게 하거나 악의적인 행동을 승인할 수 있는 유효한 서명을 생성합니다.
+### kms:Sign을 통한 사칭
+`kms:Sign` 권한을 가진 행위자는 KMS에 저장된 CMK를 사용해 private key를 노출하지 않고도 데이터를 암호학적으로 서명하여, 사칭을 가능하게 하거나 악의적 행위를 승인할 수 있는 유효한 서명을 생성할 수 있다.
```bash
aws kms sign \
--key-id \
@@ -169,7 +169,7 @@ aws kms sign \
--message-type RAW
```
### DoS with Custom Key Stores
-`kms:DeleteCustomKeyStore`, `kms:DisconnectCustomKeyStore`, `kms:UpdateCustomKeyStore` 같은 권한을 가진 사용자는 AWS KMS Custom Key Store (CKS)를 수정, 분리하거나 삭제하여 해당 마스터 키를 사용 불가 상태로 만들 수 있습니다. 이로 인해 해당 키에 의존하는 서비스들의 암호화, 복호화 및 서명 작업이 중단되어 즉시 서비스 거부(denial-of-service)를 초래할 수 있습니다. 따라서 이러한 권한을 제한하고 모니터링하는 것이 매우 중요합니다.
+`kms:DeleteCustomKeyStore`, `kms:DisconnectCustomKeyStore`, `kms:UpdateCustomKeyStore` 같은 권한을 가진 행위자는 AWS KMS Custom Key Store (CKS)를 수정, 연결 해제 또는 삭제하여 해당 마스터 키를 작동 불능으로 만들 수 있습니다. 이는 해당 키에 의존하는 서비스들의 encryption, decryption, and signing operations을 중단시키고 즉각적인 denial-of-service를 초래할 수 있습니다. 따라서 이러한 권한을 제한하고 모니터링하는 것이 매우 중요합니다.
```bash
aws kms delete-custom-key-store --custom-key-store-id